معرفی شرکت ها


custos-sdk-1.0.3


Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر

توضیحات

Apache Custos Python SDK
ویژگی مقدار
سیستم عامل -
نام فایل custos-sdk-1.0.3
نام custos-sdk
نسخه کتابخانه 1.0.3
نگهدارنده []
ایمیل نگهدارنده []
نویسنده Custos Developers
ایمیل نویسنده dev@airavata.apache.org
آدرس صفحه اصلی http://custos.com
آدرس اینترنتی https://pypi.org/project/custos-sdk/
مجوز Apache License 2.0
# Apache Custos Python SDK The Apache Custos Python SDK for third party clients to integrate with Custos middleware ### Folder Structure - custos Includes gRPC stubs generated by a protoc compiler. Mainly contains data model and functions. You may need to import data model packages to integrate with clients. - clients Includes integration clients, which you want to import and integrate with your code to access Custos middleware. - samples Includes set of sample implementation of integration clients to demo the integration with Custos middleware - transport Includes connection handling classes ### Before Integration - Create a virtual environment ``` python3 -m venv venv ``` - Activate the virtual environment ``` source venv/bin/activate ``` - Install dependencies ``` pip install -r requirements.txt ``` - Create a INI file containing server configuration details. For more information refer to default settings file [settings.ini](custos/transport/settings.ini) ### Generating Distribution Archives (Optional) You can generate *.tar.gz or .whl distribution and install to any external project. - Create a virtual environment ``` python3 -m venv venv ``` - Activate the virtual environment ``` source venv/bin/activate ``` - Make sure you have the latest versions of setuptools and wheel installed ``` pip install wheel ``` - Now run this command from the same directory where setup.py is located ``` python3 setup.py sdist bdist_wheel ``` - This command should output a lot of text and once completed should generate two files in the dist directory ``` dist/ custos_python_sdk-1.0.0-py3-none-any.whl custos-python-sdk-1.0.0.tar.gz ``` You should be able to install those packages into your project. ### Integrate With Your Clients There are three types of tokens used for access custos APIs. - Client Token (Base64 encoded Custos_Client_Id +":"+ Custos_Client_Sec) - Admin Token (Access Token of Admin User) - User Token (Access Token of Generic User) - [tenant_management_client](custos/clients/tenant_management_client.py) - create_admin_tenant (<sub><sup>client_name, requester_email, admin_frist_name, admin_last_name, admin_email, admin_username, admin_password, contacts, redirect_uris, client_uri, scope, domain, logo_uri, comment</sup></sub>) - create_tenant (<sub><sup>client_token, client_name, requester_email, admin_frist_name, admin_last_name, admin_email, admin_username, admin_password, contacts, redirect_uris, client_uri, scope, domain, logo_uri, comment</sup></sub>) - get_credentials (<sub><sup>client_token</sup></sub>) - get_tenant (<sub><sup>client_token, client_id</sup></sub>) - update_tenant (<sub><sup>client_token, client_id, client_name, requester_email, admin_frist_name, admin_last_name, admin_email, admin_username, admin_password, contacts, redirect_uris, client_uri, scope, domain, logo_uri, comment</sup></sub>) - delete_tenant (<sub><sup>client_token, client_id</sup></sub>) - add_tenant_roles (<sub><sup>client_token, roles, is_client_level</sup></sub>) - add_protocol_mapper (<sub><sup>client_token, roles, is_client_level</sup></sub>) - get_child_tenants (<sub><sup> client_token, offset, limit, status</sup></sub>) - get_all_tenants (<sub><sup> client_token, email</sup></sub>) Sample implementations can be found at [tenant_management_samples](custos/samples/tenant_management_samples.py) - [identity_management_client](custos/clients/identity_management_client.py) - authenticate(<sub><sup>client_token, username, password</sup></sub>) - is_authenticated(<sub><sup> client_token, user_access_token, username</sup></sub>) - get_service_account_access_token(<sub><sup> client_token</sup></sub>) - authorize(<sub><sup> client_id, redirect_uri, response_type, scope, state</sup></sub>) - token(<sub><sup> client_token, redirect_uri, code</sup></sub>) - get_credentials(<sub><sup> client_token, client_id</sup></sub>) - get_oidc_configuration(<sub><sup> client_token, client_id</sup></sub>) Sample implementations can be found at [identity_management_sample](custos/samples/identity_management_samples.py) - [user_management_client](custos/clients/user_management_client.py) - register_user(<sub><sup>client_token, username, first_name, last_name, password, email, is_temp_password</sup></sub>) - register_and_enable_users(<sub><sup> admin_token, users</sup></sub>) - add_user_attributes(<sub><sup> user_token, attributes, users</sup></sub>) - delete_user_attributes(<sub><sup> user_token, attributes, users</sup></sub>) - enable_user(<sub><sup> client_token, username</sup></sub>) - add_roles_to_users(<sub><sup> admin_token, usernames, roles, is_client_level</sup></sub>) - is_user_enabled(<sub><sup> client_token, username</sup></sub>) - is_username_available(<sub><sup> client_token, username</sup></sub>) - get_user(<sub><sup> client_token, username</sup></sub>) - find_users(<sub><sup> client_token, offset, limit, username=None, firstname=None, lastname=None, email=None</sup></sub>) - reset_password(<sub><sup> client_token, username, password</sup></sub>) - delete_user(<sub><sup> admin_token, username</sup></sub>) - delete_user_roles(<sub><sup> admin_token, username, client_roles, realm_roles</sup></sub>) - update_user_profile(<sub><sup> user_token, username, email, first_name, last_name</sup></sub>) Sample implementations can be found at [user_management_samples](custos/samples/user_management_sample.py) - [super_tenant_management_client](custos/clients/super_tenant_management_client.py) - get_all_tenants(<sub><sup> super_admin_token, offset, limit, status</sup></sub>) - update_tenant_status(<sub><sup> super_admin_token, client_id, status</sup></sub>)


نیازمندی

مقدار نام
>=3.0.0 google
>=3.12.2 protobuf
>=1.10.0 google-api-python-client
>=1.52.0 googleapis-common-protos
>=1.30.0 grpcio
>=19.1.0 pyopenssl
>=5.0.0 configparser
>=2.13.0 requests
>=0.7.0 requests-oauthlib
>=1.25.9 urllib3


نحوه نصب


نصب پکیج whl custos-sdk-1.0.3:

    pip install custos-sdk-1.0.3.whl


نصب پکیج tar.gz custos-sdk-1.0.3:

    pip install custos-sdk-1.0.3.tar.gz