Skip to main content

Authena Python SDK

Project description

Authena Python SDK

Description

Authena Python SDK allows an easy and fast integration with AUTHENA - authentication and authorization API.

Remarks

Biomapas aims to modernize life-science industry by sharing its IT knowledge with other companies and the community. This is an open source library intended to be used by anyone. Improvements and pull requests are welcome.

Related technology

  • Python 3

Assumptions

The project assumes the following:

  • You have basic-good knowledge in python programming.

Install

The project is built and uploaded to PyPi. Install it by using pip.

pip install authena_python_sdk

Or directly install it through source.

pip install .

Usage & Examples

SDK client

Create Authena SDK client using the given AUTHENA PUBLIC API URL, API KEY, and API SECRET:

from authena_python_sdk.client import Client
from authena_python_sdk.config import Config

AUTHENA_PUBLIC_API_URL = 'http://localhost'
AUTHENA_API_KEY = 'DFCC345BE3C0DC42DF8A123F7579'
AUTHENA_API_SECRET = '4AomCEeUG2j7epT87GahHfh2e8YnaDRthx5k0zfgnnY='

sdk_client = Client(
    api_key=AUTHENA_API_KEY,
    api_secret=AUTHENA_API_SECRET,
    config=Config(
        public_api_url=AUTHENA_PUBLIC_API_URL
    )
)

Create a user

To create user, use SDK client method - user.create.

Request syntax:

response = sdk_client.user.create(
    email='string',
    preferred_username='string',
    first_name='string',
    last_name='string',
    username='string',
    group_ids=['string', 'string', '...'],
    permissions=['string', 'string', '...']
)

Parameters

  • email (string) [REQUIRED] - Email address of the user.
  • preferred_username (string) [REQUIRED] - Preferred username of the user.
  • first_name (string) [REQUIRED] - Given name of the user.
  • last_name (string) [REQUIRED] - Family name of the user.
  • username (string) [OPTIONAL] - Unique idnetifier of the user.
  • group_ids (list) [OPTIONAL] - A list of group unique identifiers.
  • permissions (list) [OPTIONAL] - A list of user permissions.

Returns

Return Type: User

User Attributes:

  • username (string) - Unique identifier of newly created user.
  • preferred_username (string) - Preferred username of newly created user.
  • email (string) - Email address of newly created user.
  • first_name (string) - Given name of newly created user.
  • last_name (string) - Family name of newly created user.
  • tmp_password (string) - Temporary password of newly created user.
  • group_ids (list) - A list of unique identifiers of assigned permission groups.
  • permissions (list) - A list of directly assigned user permissions.

Get User

Retrieval of previously created user.

Request syntax:

response = sdk_client.user.get(username='string')

Parameters

  • username (string) [REQUE] - Unique idnetifier of the user.

Returns

Return Type: User

User Attributes:

  • username (string) - Unique identifier of newly created user.
  • preferred_username (string) - Preferred username of newly created user.
  • email (string) - Email address of newly created user.
  • first_name (string) - Given name of newly created user.
  • last_name (string) - Family name of newly created user.
  • group_ids (list) - A list of unique identifiers of assigned permission groups.
  • permissions (list) - A list of directly assigned user permissions.
  • is_active (bool) - Specifies whether the user is enabled.

Please check the documentation available here, which contains information on how to use the library, and a complete API reference guide.

Testing

The project has tests that can be run. Simply run:

pytest authena_python_sdk_tests

Contribution

Found a bug? Want to add or suggest a new feature?
Contributions of any kind are gladly welcome. You may contact us directly, create a pull-request or an issue in github platform. Lets modernize the world together.

Release history

0.0.5

  • User filter method updated to include directly assigned user permissions.
  • Redundant integration tests removed.

0.0.4

  • SDK client base updated by introducing basic auth.

0.0.3

  • Fix mismatched environment variable names in the pipeline.

0.0.2

  • Add integration tests.

0.0.1

  • Initial build.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

authena_python_sdk-0.0.5.tar.gz (17.7 kB view details)

Uploaded Source

Built Distribution

authena_python_sdk-0.0.5-py3-none-any.whl (28.7 kB view details)

Uploaded Python 3

File details

Details for the file authena_python_sdk-0.0.5.tar.gz.

File metadata

  • Download URL: authena_python_sdk-0.0.5.tar.gz
  • Upload date:
  • Size: 17.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.13

File hashes

Hashes for authena_python_sdk-0.0.5.tar.gz
Algorithm Hash digest
SHA256 d4a5f7c263634e684a14d788a023f97863ceba0e7c81a16121555b7c3c829cc8
MD5 d2c7e75dba5acc636c8cec02f548c0af
BLAKE2b-256 161dc6e57b90617784a5537e09c3d906cf0371e419fd9d7d8ab98ce9ee3e8eb8

See more details on using hashes here.

File details

Details for the file authena_python_sdk-0.0.5-py3-none-any.whl.

File metadata

File hashes

Hashes for authena_python_sdk-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 bce367446410fd883c1d34d8931b66278118065481602f722c31bcb3cd03309e
MD5 e8532d5f608c9d914641c7cc777a6c5f
BLAKE2b-256 4205c8e500a81e090bfb157d44a1362fc209dc96aed207ee98f2266af5f053f6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page