keycloak.uma_permissions

Module Contents

Classes

UMAPermission

A class to conveniently assembly permissions.

Resource

An UMAPermission Resource class to conveniently assembly permissions.

Scope

An UMAPermission Scope class to conveniently assembly permissions.

AuthStatus

A class that represents the authorization/login status of a user associated with a token.

Functions

build_permission_param(permissions)

Transform permissions to a set, so they are usable for requests

class keycloak.uma_permissions.UMAPermission(permission=None, resource='', scope='')[source]

A class to conveniently assembly permissions. The class itself is callable, and will return the assembled permission.

Usage example:

>>> r = Resource("Users")
>>> s = Scope("delete")
>>> permission = r(s)
>>> print(permission)
    'Users#delete'
__str__(self)[source]

Return str(self).

__eq__(self, __o: object) bool[source]

Return self==value.

__repr__(self) str[source]

Return repr(self).

__hash__(self) int[source]

Return hash(self).

__call__(self, permission=None, resource='', scope='') object[source]
class keycloak.uma_permissions.Resource(resource)[source]

Bases: UMAPermission

An UMAPermission Resource class to conveniently assembly permissions. The class itself is callable, and will return the assembled permission.

class keycloak.uma_permissions.Scope(scope)[source]

Bases: UMAPermission

An UMAPermission Scope class to conveniently assembly permissions. The class itself is callable, and will return the assembled permission.

class keycloak.uma_permissions.AuthStatus(is_logged_in, is_authorized, missing_permissions)[source]

A class that represents the authorization/login status of a user associated with a token. This has to evaluate to True if and only if the user is properly authorized for the requested resource.

__bool__(self)[source]
__repr__(self)[source]

Return repr(self).

keycloak.uma_permissions.build_permission_param(permissions)[source]

Transform permissions to a set, so they are usable for requests

Parameters

permissions – either str (resource#scope), iterable[str] (resource#scope), dict[str,str] (resource: scope), dict[str,iterable[str]] (resource: scopes)

Returns

result bool