auth

Module for authentication and authorization

Module Contents

Classes

Permissions

Enum for permissions

PermissionUtils

Helper class that provides methods for checking permissions

Functions

has_document_permission(session, user, project, document, permission)

Checks if a user has a permission on a document

has_project_permission(session, user, project, permission)

Checks if a user has a permission on a project

has_system_user_permission(session, user, permission)

Checks if a user has system permission

Attributes

document_map

project_map

system_map

class auth.Permissions

Bases: str, enum.Enum

Enum for permissions

create = create
view = view
edit = edit
delete = delete
edit_permissions = edit_permissions
class auth.PermissionUtils(session, user_name, project_name=None, document_name=None)

Helper class that provides methods for checking permissions

Parameters
  • session (sqlmodel.Session) –

  • user_name (str) –

  • project_name (str) –

  • document_name (str) –

has_sys_perm(self, permission)
Parameters

permission (datatypes.models.SysPermissions) –

has_proj_perm(self, permission)
Parameters

permission (datatypes.models.ProjPermissions) –

has_doc_perm(self, permission)
Parameters

permission (datatypes.models.DocPermissions) –

auth.document_map
auth.has_document_permission(session, user, project, document, permission)

Checks if a user has a permission on a document

Parameters
Returns

True if user has permission, False otherwise

auth.project_map
auth.has_project_permission(session, user, project, permission)

Checks if a user has a permission on a project

Parameters
Returns

True if user has permission, False otherwise

auth.system_map
auth.has_system_user_permission(session, user, permission)

Checks if a user has system permission

Parameters
Returns

True if user has permission, False otherwise