PAIG Authorizer Core
Project description
paig-authorizer-core
Overview
paig-authorizer-core
is a Python library designed to provide a framework of interfaces and abstract classes for building custom authorization implementations. This library allows developers to define their own authorization logic while ensuring consistency and structure.
Features
- Provides a set of interfaces and abstract classes.
- Customizable implementations for various authorization scenarios.
- Easy to extend and integrate into existing applications.
Installation
You can install the library using pip:
pip install paig-authorizer-core
Usage
To use the paig-authorizer-core
library, follow these steps:
-
Import the required classes:
from paig_authorizer_core import BasePAIGAuthorizer from paig_authorizer_core.models.request_models import AuthzRequest, VectorDBAuthzRequest
-
Create a custom authorizer class: Implement your own authorizer by extending the
BasePAIGAuthorizer
class:class MyCustomAuthorizer(BasePAIGAuthorizer): def get_user_id_by_email(self, email: str) -> Optional[str]: # Implementation to retrieve user ID by email pass def get_user_groups(self, user: str) -> List[str]: # Implementation to retrieve user groups pass # Implement other abstract methods...
-
Instantiate your custom authorizer:
authorizer = MyCustomAuthorizer()
-
Create an authorization request:
authz_request = AuthzRequest( user_id="user@example.com", application_key="MyApp", traits=["trait1"], request_type="access" )
-
Authorize the request: Call the
authorize
method to check if the request is authorized:response = authorizer.authorize(authz_request) print(f"Authorization response: {response}")
-
Create a VectorDB authorization request:
vector_db_request = VectorDBAuthzRequest( user_id="admin@example.com", application_key="MyApp" )
-
Authorize the VectorDB request: Call the
authorize_vector_db
method to check VectorDB access:vector_db_response = authorizer.authorize_vector_db(vector_db_request) print(f"VectorDB authorization response: {vector_db_response}")
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for paig_authorizer_core-0.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 455d390c69642692a666a34a5f62ffbde581407b4f90ad18bac149980dab3bdf |
|
MD5 | 211f49d40bd3324f2f2ea47b43aa3926 |
|
BLAKE2b-256 | 40220f8ef46324e8176ffa1b21d883607f7abff65cb55a3734044cbc434e8512 |