GithubHelp home page GithubHelp logo

permify / permify-cli Goto Github PK

View Code? Open in Web Editor NEW
5.0 2.0 2.0 78 KB

command line interface for Permify

Home Page: https://docs.permify.co/

License: Apache License 2.0

Makefile 1.40% Go 98.60%
abac fine-grained-access-control go golang least-privilege permission rebac security

permify-cli's Introduction

Permify logo
Permify CLI - Command Line Interface for Permify

Permify CLI Go Version  Permify CLI Licence  Permify Discord Channel 

What is Permify?

Permify is a open-source authorization service for creating and managing fine-grained permissions in your applications and services. Inspired by Google’s consistent, global authorization system, Google Zanzibar

Our goal is to make Google's Zanzibar available to everyone and help them build robust, flexible, and easily auditable authorization systems that perform well in scaled environments.

With Permify, you can:

🔮 Create permissions and policies using Permify's flexible authorization language that is compatible with traditional roles and permissions (RBAC), arbitrary relations between users and objects (ReBAC), and attributes (ABAC).

🔐 Manage and store authorization data in your preferred database with high availability and consistency.

Interact with the Permify API to perform access checks, filter your resources with specific permissions, perform bulk permission checks for various resources, and more.

🧪 Test your authorization logic with Permify's schema testing. You can conduct scenario-based testing, policy coverage analysis, and IDL parser integration to achieve end-to-end validations for your desired authorization schema.

⚙️ Create custom and isolated authorization models for different applications using Permify Multi-Tenancy support, all managed within a single place, Permify instance.

Communication Channels

If you like Permify, please consider giving us a ⭐

permify | Discord permify | Twitter permify | Linkedin

permify-cli's People

Contributors

thegeekywanderer avatar tolgaozen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

asalvi0 uasouz

permify-cli's Issues

Endpoint, Token, Cert Path, and Cert Key Storage for CLI Tool

Description

We need to implement a feature for storing the endpoint, token, cert path, and cert key in the CLI tool. These credentials should be retrievable from the storage for later use during the client creation process.

Location

permify-cli/internal/client/client.go

Proposed Change

Modify the New function in client.go to retrieve stored credentials. The updated function could look something like this:

func New(endpoint string) (*permify.Client, error) {
    // Retrieve credentials from storage
    // ... (code to retrieve credentials)

    client, err := permify.NewClient(
        permify.Config{
            Endpoint: endpoint,
            // Other necessary configurations
        },
        grpc.WithTransportCredentials(insecure.NewCredentials()),
    )
    return client, err
}

Additional Notes

Ensure that the credential retrieval process is secure and efficient.
Include error handling for cases where credentials are missing or incorrect.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.