From e07427baed6526752c5a504b458ce2995c9a4623 Mon Sep 17 00:00:00 2001 From: shaohuzhang1 Date: Thu, 6 Aug 2026 10:23:48 +0800 Subject: [PATCH] fix: The program cannot start --- .../search_document_node.py | 2 +- .../search_knowledge_node.py | 2 +- apps/common/auth/constants/group_constants.py | 2 +- .../auth/constants/permission_constants.py | 5 + apps/common/constants/permission_constants.py | 2354 ----------------- apps/portal/views/portal.py | 3 +- apps/users/serializers/user.py | 1 - 7 files changed, 10 insertions(+), 2359 deletions(-) delete mode 100644 apps/common/constants/permission_constants.py diff --git a/apps/application/workflow/nodes/search_document_node/search_document_node.py b/apps/application/workflow/nodes/search_document_node/search_document_node.py index e52e7bf462d..688387a3b00 100644 --- a/apps/application/workflow/nodes/search_document_node/search_document_node.py +++ b/apps/application/workflow/nodes/search_document_node/search_document_node.py @@ -14,7 +14,7 @@ from application.workflow.common import WorkflowType from application.workflow.i_node import INode -from common.constants.permission_constants import RoleConstants +from common.auth.constants.role_constants import RoleConstants from common.database_model_manage.database_model_manage import DatabaseModelManage from common.utils.shared_resource_auth import filter_authorized_ids from knowledge.models import Document, DocumentTag, Knowledge diff --git a/apps/application/workflow/nodes/search_knowledge_node/search_knowledge_node.py b/apps/application/workflow/nodes/search_knowledge_node/search_knowledge_node.py index 051fec90a68..0f2f3fdee23 100644 --- a/apps/application/workflow/nodes/search_knowledge_node/search_knowledge_node.py +++ b/apps/application/workflow/nodes/search_knowledge_node/search_knowledge_node.py @@ -18,8 +18,8 @@ from application.workflow.common import WorkflowType from application.workflow.i_node import INode +from common.auth.constants.role_constants import RoleConstants from common.config.embedding_config import VectorStore -from common.constants.permission_constants import RoleConstants from common.database_model_manage.database_model_manage import DatabaseModelManage from common.db.search import native_search from common.utils.common import flat_map, get_file_content diff --git a/apps/common/auth/constants/group_constants.py b/apps/common/auth/constants/group_constants.py index 2ac397ca6de..12e514c50f6 100644 --- a/apps/common/auth/constants/group_constants.py +++ b/apps/common/auth/constants/group_constants.py @@ -61,7 +61,7 @@ class Group(Enum): # 对话相关 CHAT_USER_GROUP = ("CHAT_USER_GROUP", _("Chat User Group")) CHAT_USER_AUTH = ("CHAT_USER_AUTH", _("Chat User Auth")) - + PORTAL = ("PORTAL", _('portal')) # 其他 OTHER = ("OTHER", _("Other")) HOMEPAGE = ("HOMEPAGE", _("Home page")) diff --git a/apps/common/auth/constants/permission_constants.py b/apps/common/auth/constants/permission_constants.py index f306f9aa156..5c740949649 100644 --- a/apps/common/auth/constants/permission_constants.py +++ b/apps/common/auth/constants/permission_constants.py @@ -1020,6 +1020,11 @@ class PermissionConstants(Enum): CHAT_USER_AUTH_EDIT = (Permission( group=Group.CHAT_USER_AUTH, sub_group=Group.CHAT_USER_AUTH, operate=Operate.EDIT, bit_index=0 ), PermissionMeta(role_list=[RoleConstants.ADMIN], category=Category.CHAT_CLIENT)) + PORTAL_READ = (Permission(group=Group.PORTAL, sub_group=Group.PORTAL, operate=Operate.READ, + bit_index=0), PermissionMeta(role_list=[RoleConstants.ADMIN], + )) + PORTAL_EDIT = (Permission(group=Group.PORTAL, sub_group=Group.PORTAL, operate=Operate.EDIT, + bit_index=0), PermissionMeta(role_list=[RoleConstants.ADMIN])) # ==================== 工作空间对话用户 ==================== WORKSPACE_CHAT_USER_READ = (Permission( diff --git a/apps/common/constants/permission_constants.py b/apps/common/constants/permission_constants.py deleted file mode 100644 index e457d2f9413..00000000000 --- a/apps/common/constants/permission_constants.py +++ /dev/null @@ -1,2354 +0,0 @@ -""" - @project: qabot - @Author:虎虎 - @file: permission_constants.py - @date:2023/9/13 18:23 - @desc: 权限,角色 常量 -""" -from enum import Enum -from typing import List - -from django.db import models -from django.utils.translation import gettext_lazy as _ - -from maxkb import settings - - -class Group(Enum): - """ - 权限组 一个组一般对应前端一个菜单 - """ - - USER = "USER_MANAGEMENT" - # 应用 - APPLICATION = "APPLICATION" - # 应用概览 - APPLICATION_OVERVIEW = "APPLICATION_OVERVIEW" - # 应用接入 - APPLICATION_ACCESS = "APPLICATION_ACCESS" - # 应用 对话用户 - APPLICATION_CHAT_USER = "APPLICATION_CHAT_USER" - # 知识库 对话用户 - KNOWLEDGE_CHAT_USER = "KNOWLEDGE_CHAT_USER" - # 应用对话日志 - APPLICATION_CHAT_LOG = "APPLICATION_CHAT_LOG" - - KNOWLEDGE = "KNOWLEDGE" - SYSTEM_KNOWLEDGE = "SYSTEM_KNOWLEDGE" - SYSTEM_RES_KNOWLEDGE = "SYSTEM_RESOURCE_KNOWLEDGE" - KNOWLEDGE_HIT_TEST = "KNOWLEDGE_HIT_TEST" - KNOWLEDGE_DOCUMENT = "KNOWLEDGE_DOCUMENT" - KNOWLEDGE_WORKFLOW = "KNOWLEDGE_WORKFLOW" - KNOWLEDGE_TAG = "KNOWLEDGE_TAG" - SYSTEM_KNOWLEDGE_DOCUMENT = "SYSTEM_KNOWLEDGE_DOCUMENT" - SYSTEM_KNOWLEDGE_WORKFLOW = "SYSTEM_KNOWLEDGE_WORKFLOW" - SYSTEM_RES_KNOWLEDGE_DOCUMENT = "SYSTEM_RESOURCE_KNOWLEDGE_DOCUMENT" - SYSTEM_RES_KNOWLEDGE_WORKFLOW = "SYSTEM_RESOURCE_KNOWLEDGE_WORKFLOW" - SYSTEM_RES_KNOWLEDGE_TAG = "SYSTEM_RES_KNOWLEDGE_TAG" - SYSTEM_KNOWLEDGE_TAG = "SYSTEM_KNOWLEDGE_TAG" - - KNOWLEDGE_PROBLEM = "KNOWLEDGE_PROBLEM" - KNOWLEDGE_TERMBASE = "KNOWLEDGE_TERMBASE" - SYSTEM_KNOWLEDGE_PROBLEM = "SYSTEM_KNOWLEDGE_PROBLEM" - SYSTEM_KNOWLEDGE_TERMBASE = "SYSTEM_KNOWLEDGE_TERMBASE" - SYSTEM_RES_KNOWLEDGE_PROBLEM = "SYSTEM_RESOURCE_KNOWLEDGE_PROBLEM" - SYSTEM_RES_KNOWLEDGE_TERMBASE = "SYSTEM_RESOURCE_KNOWLEDGE_TERMBASE" - - SYSTEM_KNOWLEDGE_HIT_TEST = "SYSTEM_KNOWLEDGE_HIT_TEST" - SYSTEM_RES_KNOWLEDGE_HIT_TEST = "SYSTEM_RESOURCE_KNOWLEDGE_HIT_TEST" - SYSTEM_KNOWLEDGE_CHAT_USER = "SYSTEM_KNOWLEDGE_CHAT_USER" - SYSTEM_RES_KNOWLEDGE_CHAT_USER = "SYSTEM_RESOURCE_KNOWLEDGE_CHAT_USER" - - MODEL = "MODEL" - SYSTEM_MODEL = "SYSTEM_MODEL" - # 资源管理 - SYSTEM_RES_MODEL = "SYSTEM_RESOURCE_MODEL" - SYSTEM_RES_APPLICATION = "SYSTEM_RESOURCE_APPLICATION" - SYSTEM_RES_APPLICATION_OVERVIEW = "SYSTEM_RESOURCE_APPLICATION_OVERVIEW" - SYSTEM_RES_APPLICATION_ACCESS = "SYSTEM_RESOURCE_APPLICATION_ACCESS" - SYSTEM_RES_APPLICATION_CHAT_USER = "SYSTEM_RESOURCE_APPLICATION_CHAT_USER" - SYSTEM_RES_APPLICATION_CHAT_LOG = "SYSTEM_RESOURCE_APPLICATION_CHAT_LOG" - - TOOL = "TOOL" - SYSTEM_TOOL = "SYSTEM_TOOL" - SYSTEM_RES_TOOL = "SYSTEM_RESOURCE_TOOL" - - TRIGGER = "TRIGGER" - - APPLICATION_WORKSPACE_USER_RESOURCE_PERMISSION = "APPLICATION_WORKSPACE_USER_RESOURCE_PERMISSION" - KNOWLEDGE_WORKSPACE_USER_RESOURCE_PERMISSION = "KNOWLEDGE_WORKSPACE_USER_RESOURCE_PERMISSION" - TOOL_WORKSPACE_USER_RESOURCE_PERMISSION = "TOOL_WORKSPACE_USER_RESOURCE_PERMISSION" - MODEL_WORKSPACE_USER_RESOURCE_PERMISSION = "MODEL_WORKSPACE_USER_RESOURCE_PERMISSION" - - EMAIL_SETTING = "EMAIL_SETTING" - ROLE = "ROLE" - WORKSPACE_ROLE = "WORKSPACE_ROLE" - WORKSPACE = "WORKSPACE" - WORKSPACE_WORKSPACE = "WORKSPACE_WORKSPACE" - - DISPLAY_SETTINGS = "DISPLAY_SETTINGS" - LOGIN_AUTH = "LOGIN_AUTH" - SYSTEM_API_KEY = "SYSTEM_API_KEY" - APPEARANCE_SETTINGS = "APPEARANCE_SETTINGS" - CHAT_USER = "CHAT_USER" - WORKSPACE_CHAT_USER = "WORKSPACE_CHAT_USER" - USER_GROUP = "USER_GROUP" - WORKSPACE_USER_GROUP = "WORKSPACE_USER_GROUP" - CHAT_USER_AUTH = "CHAT_USER_AUTH" - OTHER = "OTHER" - OVERVIEW = "OVERVIEW" - HOMEPAGE = "HOMEPAGE" - OPERATION_LOG = "OPERATION_LOG" - - APPLICATION_FOLDER = "APPLICATION_FOLDER" - KNOWLEDGE_FOLDER = "KNOWLEDGE_FOLDER" - TOOL_FOLDER = "TOOL_FOLDER" - CHAT_USER_GROUP = "CHAT_USER_GROUP" - PORTAL = "PORTAL" - - -class SystemGroup(Enum): - """ - 一级菜单 - """ - USER_MANAGEMENT = "USER_MANAGEMENT" - ROLE = "ROLE" - WORKSPACE = "WORKSPACE" - USER_GROUP = "USER_GROUP" - RESOURCE_PERMISSION = "RESOURCE_PERMISSION" - # 资源管理 - RESOURCE_APPLICATION = "RESOURCE_APPLICATION" - RESOURCE_KNOWLEDGE = "RESOURCE_KNOWLEDGE" - RESOURCE_TOOL = "RESOURCE_TOOL" - RESOURCE_MODEL = "RESOURCE_MODEL" - # 共享资源 - SHARED_KNOWLEDGE = "SHARED_KNOWLEDGE" - SHARED_TOOL = "SHARED_TOOL" - SHARED_MODEL = "SHARED_MODEL" - CHAT_USER = "CHAT_USER" - CHAT_USER_GROUP = "CHAT_USER_GROUP" - CHAT_USER_AUTH = "CHAT_USER_AUTH" - PORTAL = "PORTAL" - OPERATION_LOG = "OPERATION_LOG" - APPEARANCE_SETTINGS = "APPEARANCE_SETTINGS" - LOGIN_AUTH = "LOGIN_AUTH" - EMAIL_SETTING = "EMAIL_SETTING" - - OTHER = "OTHER" - - -class WorkspaceGroup(Enum): - ROLE = "ROLE" - WORKSPACE = "WORKSPACE" - USER_GROUP = "USER_GROUP" - RESOURCE_PERMISSION = "RESOURCE_PERMISSION" - CHAT_USER = "CHAT_USER" - CHAT_USER_GROUP = "CHAT_USER_GROUP" - HOMEPAGE = "HOMEPAGE" - APPLICATION = "APPLICATION" - KNOWLEDGE = "KNOWLEDGE" - MODEL = "MODEL" - TOOL = "TOOL" - TRIGGER = "TRIGGER" - OTHER = "OTHER" - - -class UserGroup(Enum): - HOMEPAGE = "HOMEPAGE" - APPLICATION = "APPLICATION" - KNOWLEDGE = "KNOWLEDGE" - MODEL = "MODEL" - TOOL = "TOOL" - OTHER = "OTHER" - - -class TopLevelGroup(Enum): - """ - 一级目录(最顶层分类),用于在 parent_group 之上再加一层分类 - """ - # 身份与权限 - IAM = "IAM" - # 资源管理 - RESOURCE = "RESOURCE" - # 共享资源 - SHARED = "SHARED" - CHAT_CLIENT = "CHAT_CLIENT" - # 操作日志 - OPERATION_LOG = "OPERATION_LOG" - # 系统设置 - SYSTEM_SETTING = "SYSTEM_SETTING" - # 工作空间 - WORKSPACE = "WORKSPACE" - # - OTHER = "OTHER" - - -class Operate(Enum): - """ - 一个权限组的操作权限 - """ - SELF = "" - READ = 'READ' - EDIT = "READ+EDIT" - CREATE = "READ+CREATE" - DELETE = "READ+DELETE" - """ - 使用权限 - """ - USE = "USE" - IMPORT = "READ+IMPORT" - EXPORT = "READ+EXPORT" # 导入导出 - PUBLISH = "READ+PUBLISH" # 发布 - SYNC = "READ+SYNC" # 同步 - GENERATE = "READ+GENERATE" # 生成 - ADD_MEMBER = "READ+ADD_MEMBER" # 添加成员 - REMOVE_MEMBER = "READ+REMOVE_MEMBER" # 添加成员 - VECTOR = "READ+VECTOR" # 向量化 - MIGRATE = "READ+MIGRATE" # 迁移 - RELATE = "READ+RELATE" # 关联 - USER_GROUP = "READ+USER_GROUP" # 用户组 - ANNOTATION = "READ+ANNOTATION" # 标注 - CLEAR_POLICY = "READ+CLEAR_POLICY" - EMBED = "READ+EMBED" # 嵌入 - ACCESS = "READ+ACCESS" # 访问限制 - DISPLAY = "READ+DISPLAY" # 显示设置 - API_KEY = "READ+API_KEY" # API_KEY - PUBLIC_ACCESS = "READ+PUBLIC_ACCESS" # 公共访问链接 - Q_WEIXIN = "READ+Q_WEIXIN" # 企业微信 - FEISHU = "READ+FEISHU" # 飞书 - DD = "READ+DD" # 钉钉 - WEIXIN_PUBLIC_ACCOUNT = "READ+WEIXIN_PUBLIC_ACCOUNT" # 微信公众号 - SLACK = "READ+SLACK" # SLACK - ADD_KNOWLEDGE = "READ+ADD_KNOWLEDGE" # 添加到知识库 - TO_CHAT = "READ+TO_CHAT" # 去对话 - SETTING = "READ+SETTING" # 管理 - DOWNLOAD = "READ+DOWNLOAD" # 下载 - COPY = "READ+COPY" - AUTH = "READ+AUTH" # 资源授权 - TAG = "READ+TAG" # 标签设置 - REPLACE = "READ+REPLACE" # 标签设置 - UPDATE = "READ+UPDATE" # 更新license - RELATE_VIEW = "READ+RELATE_VIEW" - RECORD = "READ+RECORD" - TRIGGER_READ = "READ+TRIGGER_READ" - TRIGGER_EDIT = "READ+TRIGGER_EDIT" - TRIGGER_CREATE = "READ+TRIGGER_CREATE" - TRIGGER_DELETE = "READ+TRIGGER_DELETE" - BATCH_DELETE = "READ+BATCH_DELETE" - BATCH_MOVE = "READ+BATCH_MOVE" - TOKEN = "READ+TOKEN" # 分词索引 - TO_WORKSPACE = "READ+TO_WORKSPACE" # 授权到空间 - SET_ROLE = "READ+SET_ROLE" # 设置角色 - - -class RoleGroup(Enum): - # 系统用户 - SYSTEM_USER = "SYSTEM_USER" - # 对话用户 - CHAT_USER = "CHAT_USER" - - -class ResourcePermissionRole(models.TextChoices): - """ - 资源权限根据角色 - """ - ROLE = "ROLE" - - def __eq__(self, other): - return str(self) == str(other) - - -class ResourcePermission(models.TextChoices): - """ - 资源权限组 - """ - # 查看 - VIEW = "VIEW" - # 管理 - MANAGE = "MANAGE" - - def __eq__(self, other): - return str(self) == str(other) - - -class Resource(models.TextChoices): - KNOWLEDGE = Group.KNOWLEDGE.value - KNOWLEDGE_FOLDER = Group.KNOWLEDGE_FOLDER.value - APPLICATION = Group.APPLICATION.value - APPLICATION_FOLDER = Group.APPLICATION_FOLDER.value - TOOL = Group.TOOL.value - TOOL_FOLDER = Group.TOOL_FOLDER.value - MODEL = Group.MODEL.value - - def __eq__(self, other): - return str(self) == str(other) - - -class ResourcePermissionGroup: - def __init__(self, resource: Resource, permission: ResourcePermission): - self.permission = permission - self.resource = resource - - def __eq__(self, other): - return str(self.permission) == str(other.permission) and str(self.resource) == str(other.resource) - - -class ResourcePermissionConst: - KNOWLEDGE_MANGE = ResourcePermissionGroup(Resource.KNOWLEDGE, ResourcePermission.MANAGE) - KNOWLEDGE_FOLDER_MANGE = ResourcePermissionGroup(Resource.KNOWLEDGE_FOLDER, ResourcePermission.MANAGE) - KNOWLEDGE_FOLDER_VIEW = ResourcePermissionGroup(Resource.KNOWLEDGE_FOLDER, ResourcePermission.VIEW) - KNOWLEDGE_VIEW = ResourcePermissionGroup(Resource.KNOWLEDGE, ResourcePermission.VIEW) - APPLICATION_MANGE = ResourcePermissionGroup(Resource.APPLICATION, ResourcePermission.MANAGE) - APPLICATION_FOLDER_MANGE = ResourcePermissionGroup(Resource.APPLICATION_FOLDER, ResourcePermission.MANAGE) - APPLICATION_FOLDER_VIEW = ResourcePermissionGroup(Resource.APPLICATION_FOLDER, ResourcePermission.VIEW) - APPLICATION_VIEW = ResourcePermissionGroup(Resource.APPLICATION, ResourcePermission.VIEW) - TOOL_MANGE = ResourcePermissionGroup(Resource.TOOL, ResourcePermission.MANAGE) - TOOL_FOLDER_MANGE = ResourcePermissionGroup(Resource.TOOL_FOLDER, ResourcePermission.MANAGE) - TOOL_FOLDER_VIEW = ResourcePermissionGroup(Resource.TOOL_FOLDER, ResourcePermission.VIEW) - TOOL_VIEW = ResourcePermissionGroup(Resource.TOOL, ResourcePermission.VIEW) - MODEL_MANGE = ResourcePermissionGroup(Resource.MODEL, ResourcePermission.MANAGE) - MODEL_VIEW = ResourcePermissionGroup(Resource.MODEL, ResourcePermission.VIEW) - - -class ResourceAuthType(models.TextChoices): - """ - 资源授权类型 - """ - "当授权类型是Role时候" - ROLE = "ROLE" - - """资源权限组""" - RESOURCE_PERMISSION_GROUP = "RESOURCE_PERMISSION_GROUP" - - -class Role: - def __init__(self, name: str, decs: str, group: RoleGroup, resource_path=None): - self.name = name - self.decs = decs - self.group = group - self.resource_path = resource_path - - def __str__(self): - return self.name + ( - (":" + self.resource_path) if self.resource_path is not None else '') - - def __eq__(self, other): - return str(self) == str(other) - - def get_workspace_role(self): - return lambda r, kwargs: Role(self.name, self.decs, self.group, - resource_path=f"/WORKSPACE/{kwargs.get('workspace_id')}") - - -class RoleConstants(Enum): - ADMIN = Role("ADMIN", '超级管理员', RoleGroup.SYSTEM_USER) - WORKSPACE_MANAGE = Role("WORKSPACE_MANAGE", '工作空间管理员', RoleGroup.SYSTEM_USER) - USER = Role("USER", '普通用户', RoleGroup.SYSTEM_USER) - CHAT_ANONYMOUS_USER = Role("CHAT_ANONYMOUS_USER", "对话匿名用户", RoleGroup.CHAT_USER) - CHAT_USER = Role("CHAT_USER", "对话用户", RoleGroup.CHAT_USER) - - EXTENDS_ADMIN = Role("EXTENDS_ADMIN", '继承超级管理员', RoleGroup.SYSTEM_USER) - EXTENDS_WORKSPACE_MANAGE = Role("EXTENDS_WORKSPACE_MANAGE", "继承工作空间管理员", RoleGroup.CHAT_USER) - EXTENDS_USER = Role("EXTENDS_USER", "继承普通用户", RoleGroup.CHAT_USER) - - def get_workspace_role(self): - return lambda r, kwargs: Role(name=self.value.name, - decs=self.value.decs, - group=self.value.group, - resource_path= - f"/WORKSPACE/{kwargs.get('workspace_id')}") - - -Permission_Label = { - TopLevelGroup.SYSTEM_SETTING.value: _("System Setting"), - SystemGroup.USER_MANAGEMENT.value: _("User Management"), - SystemGroup.ROLE.value: _("Role Management"), - SystemGroup.WORKSPACE.value: _("Workspace"), - SystemGroup.RESOURCE_APPLICATION.value: _("Application"), - SystemGroup.RESOURCE_KNOWLEDGE.value: _("Knowledge"), - SystemGroup.RESOURCE_TOOL.value: _("Tool"), - SystemGroup.RESOURCE_MODEL.value: _("Model"), - SystemGroup.RESOURCE_PERMISSION.value: _("Resource Permission"), - SystemGroup.SHARED_KNOWLEDGE.value: _("Knowledge"), - SystemGroup.SHARED_MODEL.value: _("Model"), - SystemGroup.SHARED_TOOL.value: _("Tool"), - SystemGroup.OPERATION_LOG.value: _("Operation Log"), - SystemGroup.OTHER.value: _("Other"), - WorkspaceGroup.APPLICATION.value: _("Application"), - WorkspaceGroup.KNOWLEDGE.value: _("Knowledge"), - WorkspaceGroup.MODEL.value: _("Model"), - WorkspaceGroup.TOOL.value: _("Tool"), - WorkspaceGroup.TRIGGER.value: _("Trigger"), - WorkspaceGroup.OTHER.value: _("Other"), - Operate.READ.value: _("Read"), - Operate.EDIT.value: _("Edit"), - Operate.COPY.value: _('Copy'), - Operate.PUBLISH.value: _("Publish"), - Operate.CREATE.value: _("Create"), - Operate.DELETE.value: _("Delete"), - Group.EMAIL_SETTING.value: _("Email Setting"), - Group.APPLICATION.value: _("Application"), - Group.KNOWLEDGE.value: _("Knowledge"), - Group.KNOWLEDGE_DOCUMENT.value: _("Document"), - Group.KNOWLEDGE_TERMBASE.value: _("Termbase"), - Group.KNOWLEDGE_WORKFLOW.value: _("Workflow"), - Group.KNOWLEDGE_TAG.value: _("Tag"), - Group.KNOWLEDGE_PROBLEM.value: _("Problem"), - Group.KNOWLEDGE_HIT_TEST.value: _("Hit-Test"), - Operate.IMPORT.value: _("Import"), - Operate.EXPORT.value: _("Export"), - Operate.SYNC.value: _("Sync"), - Operate.GENERATE.value: _("Generate"), - Operate.ADD_MEMBER.value: _("Add Member"), - Operate.REMOVE_MEMBER.value: _("Remove Member"), - Operate.VECTOR.value: _("Vector"), - Operate.MIGRATE.value: _("Migrate"), - Operate.RELATE.value: _("Relate"), - Operate.ANNOTATION.value: _("Annotation"), - Operate.CLEAR_POLICY.value: _("Clear Policy"), - Operate.DOWNLOAD.value: _('Download Original Document'), - Operate.EMBED.value: _('Embed third party'), - Operate.ACCESS.value: _('Access restrictions'), - Operate.DISPLAY.value: _('Display Settings'), - Operate.API_KEY.value: _('API KEY'), - Operate.PUBLIC_ACCESS.value: _('Public access link'), - Operate.Q_WEIXIN.value: _('Enterprise WeiXin'), - Operate.FEISHU.value: _('Feishu'), - Operate.DD.value: _('Dingding'), - Operate.WEIXIN_PUBLIC_ACCOUNT.value: _('Weixin Public Account'), - Operate.ADD_KNOWLEDGE.value: _('Add to Knowledge Base'), - Operate.AUTH.value: _('resource authorization'), - Operate.TAG.value: _('Tag Setting'), - Operate.REPLACE.value: _('Replace Original Document'), - Operate.RELATE_VIEW.value: _('View related resources'), - Operate.TRIGGER_READ.value: _('Read Trigger'), - Operate.TRIGGER_CREATE.value: _('Create Trigger'), - Operate.TRIGGER_EDIT.value: _('Edit Trigger'), - Operate.TRIGGER_DELETE.value: _('Delete Trigger'), - Operate.RECORD.value: _('Read execute record'), - Operate.BATCH_DELETE.value: _('Batch delete'), - Operate.BATCH_MOVE.value: _('Batch move'), - - Group.APPLICATION_OVERVIEW.value: _('Overview'), - Group.APPLICATION_ACCESS.value: _('Application Access'), - Group.APPLICATION_CHAT_USER.value: _('Dialogue users'), - Group.APPLICATION_CHAT_LOG.value: _('Conversation log'), - Group.KNOWLEDGE_CHAT_USER.value: _('Dialogue users'), - - Group.LOGIN_AUTH.value: _("Login Auth"), - Group.DISPLAY_SETTINGS.value: _("Display Settings"), - Group.SYSTEM_API_KEY.value: _("System API Key"), - Group.APPEARANCE_SETTINGS.value: _("Appearance Settings"), - Group.CHAT_USER.value: _("Chat User"), - Group.USER_GROUP.value: _("User Group"), - Group.CHAT_USER_AUTH.value: _("Chat User Auth"), - Group.OVERVIEW.value: _("Overview"), - Group.HOMEPAGE.value: _("Home page"), - Group.SYSTEM_TOOL.value: _("Tool"), - Group.SYSTEM_MODEL.value: _("Model"), - Group.SYSTEM_KNOWLEDGE.value: _("Knowledge"), - Group.SYSTEM_KNOWLEDGE_DOCUMENT.value: _("Document"), - Group.SYSTEM_KNOWLEDGE_TERMBASE.value: _("Termbase"), - Group.SYSTEM_KNOWLEDGE_WORKFLOW.value: _("Workflow"), - Group.SYSTEM_KNOWLEDGE_TAG.value: _("Tag"), - Group.SYSTEM_KNOWLEDGE_PROBLEM.value: _("Problem"), - Group.SYSTEM_KNOWLEDGE_HIT_TEST.value: _("Hit-Test"), - Group.SYSTEM_KNOWLEDGE_CHAT_USER.value: _("Dialogue users"), - Group.SYSTEM_RES_TOOL.value: _("Tool"), - Group.SYSTEM_RES_MODEL.value: _("Model"), - Group.SYSTEM_RES_KNOWLEDGE.value: _("Knowledge"), - Group.SYSTEM_RES_KNOWLEDGE_DOCUMENT.value: _("Document"), - Group.SYSTEM_RES_KNOWLEDGE_TERMBASE.value: _("Termbase"), - Group.SYSTEM_RES_KNOWLEDGE_WORKFLOW.value: _("Workflow"), - Group.SYSTEM_RES_KNOWLEDGE_TAG.value: _("Tag"), - Group.SYSTEM_RES_KNOWLEDGE_PROBLEM.value: _("Problem"), - Group.SYSTEM_RES_KNOWLEDGE_HIT_TEST.value: _("Hit-Test"), - Group.SYSTEM_RES_KNOWLEDGE_CHAT_USER.value: _("Dialogue users"), - Group.WORKSPACE_USER_GROUP.value: _("User Group"), - Group.WORKSPACE_CHAT_USER.value: _("Chat User"), - Group.WORKSPACE_WORKSPACE.value: _("Workspace"), - Group.WORKSPACE_ROLE.value: _("Role Management"), - Group.APPLICATION_WORKSPACE_USER_RESOURCE_PERMISSION.value: _("Application"), - Group.KNOWLEDGE_WORKSPACE_USER_RESOURCE_PERMISSION.value: _("Knowledge"), - Group.MODEL_WORKSPACE_USER_RESOURCE_PERMISSION.value: _("Model"), - Group.TOOL_WORKSPACE_USER_RESOURCE_PERMISSION.value: _("Tool"), - Group.SYSTEM_RES_APPLICATION.value: _("Application"), - Group.SYSTEM_RES_APPLICATION_OVERVIEW.value: _("Overview"), - Group.SYSTEM_RES_APPLICATION_ACCESS.value: _("Application Access"), - Group.SYSTEM_RES_APPLICATION_CHAT_USER.value: _("Dialogue users"), - Group.SYSTEM_RES_APPLICATION_CHAT_LOG.value: _("Conversation log"), - Group.APPLICATION_FOLDER.value: _("Folder"), - Group.KNOWLEDGE_FOLDER.value: _("Folder"), - Group.TOOL_FOLDER.value: _("Folder"), - Operate.TOKEN.value: _("Token Index"), - Operate.TO_WORKSPACE.value: _("Authorize to Workspace"), - TopLevelGroup.IAM.value: _("IAM"), - TopLevelGroup.RESOURCE.value: _("Resource"), - TopLevelGroup.SHARED.value: _("Shared"), - TopLevelGroup.CHAT_CLIENT.value: _("Chat Client"), - SystemGroup.CHAT_USER_GROUP.value: _("Chat User Group"), - SystemGroup.CHAT_USER_AUTH.value: _("Chat User Auth"), - SystemGroup.PORTAL.value: _("Portal"), -} -GROUPS = { - TopLevelGroup.IAM: ( - SystemGroup.USER_MANAGEMENT, - SystemGroup.ROLE, - SystemGroup.WORKSPACE, - SystemGroup.USER_GROUP, - SystemGroup.RESOURCE_PERMISSION, - WorkspaceGroup.ROLE, - WorkspaceGroup.WORKSPACE, - WorkspaceGroup.USER_GROUP, - WorkspaceGroup.RESOURCE_PERMISSION, - ), - TopLevelGroup.RESOURCE: ( - SystemGroup.RESOURCE_APPLICATION, - SystemGroup.RESOURCE_KNOWLEDGE, - SystemGroup.RESOURCE_TOOL, - SystemGroup.RESOURCE_MODEL, - ), - TopLevelGroup.SHARED: ( - SystemGroup.SHARED_KNOWLEDGE, - SystemGroup.SHARED_MODEL, - SystemGroup.SHARED_TOOL, - ), - TopLevelGroup.CHAT_CLIENT: ( - SystemGroup.CHAT_USER, - SystemGroup.CHAT_USER_GROUP, - SystemGroup.CHAT_USER_AUTH, - SystemGroup.PORTAL, - WorkspaceGroup.CHAT_USER, - WorkspaceGroup.CHAT_USER_GROUP, - ), - TopLevelGroup.OPERATION_LOG: ( - SystemGroup.OPERATION_LOG, - ), - TopLevelGroup.SYSTEM_SETTING: ( - SystemGroup.APPEARANCE_SETTINGS, - SystemGroup.LOGIN_AUTH, - SystemGroup.EMAIL_SETTING, - SystemGroup.OTHER - ), - TopLevelGroup.WORKSPACE: ( - WorkspaceGroup.HOMEPAGE, - WorkspaceGroup.APPLICATION, - WorkspaceGroup.KNOWLEDGE, - WorkspaceGroup.TOOL, - WorkspaceGroup.MODEL, - WorkspaceGroup.TRIGGER - ), - TopLevelGroup.OTHER: ( - WorkspaceGroup.OTHER, - ) -} -TOP_LEVEL_GROUP_MAP = { - group: top_level - for top_level, groups in GROUPS.items() - for group in groups -} - - -class Permission: - """ - 权限信息 - """ - - def __init__(self, group: Group, operate: Operate, resource_path=None, role_list=None, - resource_permission_group_list=None, parent_group=None, label=None, is_ee=True, - top_group=None): - if role_list is None: - role_list = [] - if resource_permission_group_list is None: - resource_permission_group_list = [] - self.group = group - self.operate = operate - self.resource_path = resource_path - # 用于获取角色与权限的关系,只适用于没有权限管理的 - self.role_list = role_list - # 用于资源权限权限分组 - self.resource_permission_group_list = resource_permission_group_list - self.parent_group = parent_group # 新增字段:父级组 - self.label = label - self.is_ee = is_ee # 是否是企业版权限 - self.top_group = top_group # 一级目录分类 - - @staticmethod - def new_instance(permission_str: str): - permission_split = permission_str.split(":") - group = Group[permission_split[0]] - operate = Operate[permission_split[1]] - if len(permission_split) > 2: - dynamic_tag = ":".join(permission_split[2:]) - return Permission(group, operate, dynamic_tag) - return Permission(group, operate) - - def __str__(self): - - return self.group.value + ( - (":" + self.operate.value) if self.operate.value else '') + ( - (":" + self.resource_path) if self.resource_path is not None else '') - - def __eq__(self, other): - if isinstance(other, Permission): - return ( - self.group == other.group - and self.operate == other.operate - and self.resource_path == other.resource_path - and self.parent_group == other.parent_group - and self.is_ee == other.is_ee - ) - return str(self) == str(other) - - -class PermissionConstants(Enum): - """ - 权限枚举 - """ - HOMEPAGE_READ = Permission( - group=Group.HOMEPAGE, operate=Operate.READ, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.HOMEPAGE, UserGroup.HOMEPAGE], - ) - HOMEPAGE_EXPORT = Permission( - group=Group.HOMEPAGE, operate=Operate.EXPORT, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.HOMEPAGE, UserGroup.HOMEPAGE], - ) - KNOWLEDGE = Permission( - group=Group.KNOWLEDGE, operate=Operate.SELF, role_list=[RoleConstants.ADMIN, RoleConstants.USER] - ) - APPLICATION = Permission( - group=Group.APPLICATION, operate=Operate.SELF, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - ) - MODEL = Permission( - group=Group.MODEL, operate=Operate.SELF, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - ) - TOOL = Permission( - group=Group.TOOL, operate=Operate.SELF, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - ) - # 用户管理 - USER_READ = Permission( - group=Group.USER, operate=Operate.READ, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[SystemGroup.USER_MANAGEMENT] - ) - - USER_CREATE = Permission( - group=Group.USER, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.USER_MANAGEMENT] - ) - - USER_EDIT = Permission( - group=Group.USER, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.USER_MANAGEMENT] - ) - - USER_DELETE = Permission( - group=Group.USER, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.USER_MANAGEMENT] - ) - USER_SET_ROLE = Permission( - group=Group.USER, operate=Operate.SET_ROLE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.USER_MANAGEMENT], is_ee=settings.edition == "EE" - ) - USER_IMPORT = Permission( - group=Group.USER, operate=Operate.IMPORT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.USER_MANAGEMENT] - ) - # 系统-用户组 - SYSTEM_USER_GROUP_READ = Permission(group=Group.USER_GROUP, operate=Operate.READ, - role_list=[RoleConstants.ADMIN, RoleConstants.WORKSPACE_MANAGE], - parent_group=[SystemGroup.USER_GROUP] - ) - SYSTEM_USER_GROUP_CREATE = Permission(group=Group.USER_GROUP, operate=Operate.CREATE, - role_list=[RoleConstants.ADMIN, RoleConstants.WORKSPACE_MANAGE], - parent_group=[SystemGroup.USER_GROUP] - ) - SYSTEM_USER_GROUP_EDIT = Permission(group=Group.USER_GROUP, operate=Operate.EDIT, - role_list=[RoleConstants.ADMIN, RoleConstants.WORKSPACE_MANAGE], - parent_group=[SystemGroup.USER_GROUP] - ) - SYSTEM_USER_GROUP_DELETE = Permission(group=Group.USER_GROUP, operate=Operate.DELETE, - role_list=[RoleConstants.ADMIN, RoleConstants.WORKSPACE_MANAGE], - parent_group=[SystemGroup.USER_GROUP] - ) - SYSTEM_USER_GROUP_ADD_MEMBER = Permission(group=Group.USER_GROUP, operate=Operate.ADD_MEMBER, - role_list=[RoleConstants.ADMIN, RoleConstants.WORKSPACE_MANAGE], - parent_group=[SystemGroup.USER_GROUP] - ) - SYSTEM_USER_GROUP_REMOVE_MEMBER = Permission(group=Group.USER_GROUP, operate=Operate.REMOVE_MEMBER, - role_list=[RoleConstants.ADMIN, RoleConstants.WORKSPACE_MANAGE], - parent_group=[SystemGroup.USER_GROUP] - ) - - MODEL_READ = Permission( - group=Group.MODEL, operate=Operate.READ, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.MODEL, UserGroup.MODEL], - resource_permission_group_list=[ResourcePermissionConst.MODEL_VIEW] - ) - - MODEL_CREATE = Permission( - group=Group.MODEL, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.MODEL, UserGroup.MODEL], - resource_permission_group_list=[ResourcePermissionConst.MODEL_MANGE] - ) - - MODEL_EDIT = Permission( - group=Group.MODEL, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.MODEL, UserGroup.MODEL], - resource_permission_group_list=[ResourcePermissionConst.MODEL_MANGE] - ) - MODEL_DELETE = Permission( - group=Group.MODEL, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.MODEL, UserGroup.MODEL], - resource_permission_group_list=[ResourcePermissionConst.MODEL_MANGE] - ) - MODEL_RESOURCE_AUTHORIZATION = Permission( - group=Group.MODEL, operate=Operate.AUTH, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.MODEL, UserGroup.MODEL], - resource_permission_group_list=[ResourcePermissionConst.MODEL_MANGE] - ) - MODEL_RELATE_RESOURCE_VIEW = Permission( - group=Group.MODEL, operate=Operate.RELATE_VIEW, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.MODEL, UserGroup.MODEL], - resource_permission_group_list=[ResourcePermissionConst.MODEL_MANGE] - ) - # trigger - TRIGGER_READ = Permission( - group=Group.TRIGGER, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.TRIGGER], - ) - TRIGGER_CREATE = Permission( - group=Group.TRIGGER, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.TRIGGER], - ) - TRIGGER_EDIT = Permission( - group=Group.TRIGGER, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.TRIGGER], - ) - TRIGGER_DELETE = Permission( - group=Group.TRIGGER, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.TRIGGER], - ) - TRIGGER_RECORD = Permission( - group=Group.TRIGGER, operate=Operate.RECORD, role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.TRIGGER], - ) - TOOL_READ = Permission( - group=Group.TOOL, operate=Operate.READ, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.TOOL, UserGroup.TOOL], - resource_permission_group_list=[ResourcePermissionConst.TOOL_VIEW] - ) - - TOOL_CREATE = Permission( - group=Group.TOOL, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.TOOL, UserGroup.TOOL], - resource_permission_group_list=[ResourcePermissionConst.TOOL_MANGE] - ) - TOOL_BATCH_MOVE = Permission( - group=Group.TOOL, operate=Operate.BATCH_MOVE, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.TOOL, UserGroup.TOOL], - resource_permission_group_list=[ResourcePermissionConst.TOOL_MANGE] - ) - TOOL_BATCH_DELETE = Permission( - group=Group.TOOL, operate=Operate.BATCH_DELETE, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.TOOL, UserGroup.TOOL], - resource_permission_group_list=[ResourcePermissionConst.TOOL_MANGE] - ) - TOOL_EDIT = Permission( - group=Group.TOOL, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.TOOL, UserGroup.TOOL], - resource_permission_group_list=[ResourcePermissionConst.TOOL_MANGE] - ) - - TOOL_DELETE = Permission( - group=Group.TOOL, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.TOOL, UserGroup.TOOL], - resource_permission_group_list=[ResourcePermissionConst.TOOL_MANGE] - ) - TOOL_IMPORT = Permission( - group=Group.TOOL, operate=Operate.IMPORT, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.TOOL, UserGroup.TOOL], - resource_permission_group_list=[ResourcePermissionConst.TOOL_MANGE] - ) - TOOL_EXPORT = Permission( - group=Group.TOOL, operate=Operate.EXPORT, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.TOOL, UserGroup.TOOL], - resource_permission_group_list=[ResourcePermissionConst.TOOL_MANGE] - ) - TOOL_RESOURCE_AUTHORIZATION = Permission( - group=Group.TOOL, operate=Operate.AUTH, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.TOOL, UserGroup.TOOL], - resource_permission_group_list=[ResourcePermissionConst.TOOL_MANGE] - ) - TOOL_RELATE_RESOURCE_VIEW = Permission( - group=Group.TOOL, operate=Operate.RELATE_VIEW, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.TOOL, UserGroup.TOOL], - resource_permission_group_list=[ResourcePermissionConst.TOOL_MANGE] - ) - TOOL_PUBLISH = Permission( - group=Group.TOOL, operate=Operate.PUBLISH, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.TOOL, UserGroup.TOOL], - resource_permission_group_list=[ResourcePermissionConst.TOOL_MANGE] - ) - TOOL_EXECUTE_RECORD = Permission( - group=Group.TOOL, operate=Operate.RECORD, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.TOOL, UserGroup.TOOL], - resource_permission_group_list=[ResourcePermissionConst.TOOL_MANGE] - ) - # source point trigger - TOOL_TRIGGER_READ = Permission( - group=Group.TOOL, operate=Operate.TRIGGER_READ, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.TOOL, UserGroup.TOOL], - resource_permission_group_list=[ResourcePermissionConst.TOOL_MANGE] - ) - TOOL_TRIGGER_CREATE = Permission( - group=Group.TOOL, operate=Operate.TRIGGER_CREATE, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.TOOL, UserGroup.TOOL], - resource_permission_group_list=[ResourcePermissionConst.TOOL_VIEW] - ) - TOOL_TRIGGER_EDIT = Permission( - group=Group.TOOL, operate=Operate.TRIGGER_EDIT, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.TOOL, UserGroup.TOOL], - resource_permission_group_list=[ResourcePermissionConst.TOOL_VIEW] - ) - TOOL_TRIGGER_DELETE = Permission( - group=Group.TOOL, operate=Operate.TRIGGER_DELETE, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.TOOL, UserGroup.TOOL], - resource_permission_group_list=[ResourcePermissionConst.TOOL_VIEW] - ) - TOOL_FOLDER_READ = Permission( - group=Group.TOOL_FOLDER, operate=Operate.READ, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[UserGroup.TOOL], - resource_permission_group_list=[ResourcePermissionConst.TOOL_VIEW] - ) - TOOL_FOLDER_CREATE = Permission( - group=Group.TOOL_FOLDER, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.TOOL, UserGroup.TOOL], - resource_permission_group_list=[ResourcePermissionConst.TOOL_MANGE] - ) - TOOL_FOLDER_EDIT = Permission( - group=Group.TOOL_FOLDER, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.TOOL, UserGroup.TOOL], - resource_permission_group_list=[ResourcePermissionConst.TOOL_MANGE] - ) - TOOL_FOLDER_DELETE = Permission( - group=Group.TOOL_FOLDER, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.TOOL, UserGroup.TOOL], - resource_permission_group_list=[ResourcePermissionConst.TOOL_MANGE] - ) - TOOL_FOLDER_AUTH = Permission( - group=Group.TOOL_FOLDER, operate=Operate.AUTH, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.TOOL, UserGroup.TOOL], - resource_permission_group_list=[ResourcePermissionConst.TOOL_MANGE] - ) - KNOWLEDGE_READ = Permission( - group=Group.KNOWLEDGE, operate=Operate.READ, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_VIEW], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_CREATE = Permission( - group=Group.KNOWLEDGE, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_VIEW], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_EDIT = Permission( - group=Group.KNOWLEDGE, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_DELETE = Permission( - group=Group.KNOWLEDGE, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_SYNC = Permission( - group=Group.KNOWLEDGE, operate=Operate.SYNC, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_EXPORT = Permission( - group=Group.KNOWLEDGE, operate=Operate.EXPORT, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_VECTOR = Permission( - group=Group.KNOWLEDGE, operate=Operate.VECTOR, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_GENERATE = Permission( - group=Group.KNOWLEDGE, operate=Operate.GENERATE, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_BATCH_DELETE = Permission(group=Group.KNOWLEDGE, operate=Operate.BATCH_DELETE, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE], - ) - KNOWLEDGE_BATCH_MOVE = Permission(group=Group.KNOWLEDGE, operate=Operate.BATCH_MOVE, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE], - ) - KNOWLEDGE_RESOURCE_AUTHORIZATION = Permission( - group=Group.KNOWLEDGE, operate=Operate.AUTH, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_RELATE_RESOURCE_VIEW = Permission( - group=Group.KNOWLEDGE, operate=Operate.RELATE_VIEW, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE] - ) - KNOWLEDGE_FOLDER_READ = Permission( - group=Group.KNOWLEDGE_FOLDER, operate=Operate.READ, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_VIEW], - parent_group=[UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_FOLDER_CREATE = Permission( - group=Group.KNOWLEDGE_FOLDER, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_FOLDER_EDIT = Permission( - group=Group.KNOWLEDGE_FOLDER, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_FOLDER_DELETE = Permission( - group=Group.KNOWLEDGE_FOLDER, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_FOLDER_AUTH = Permission( - group=Group.KNOWLEDGE_FOLDER, operate=Operate.AUTH, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_WORKFLOW_READ = Permission( - group=Group.KNOWLEDGE_WORKFLOW, operate=Operate.READ, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_VIEW], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_WORKFLOW_EDIT = Permission( - group=Group.KNOWLEDGE_WORKFLOW, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_WORKFLOW_EXPORT = Permission( - group=Group.KNOWLEDGE_WORKFLOW, operate=Operate.EXPORT, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_WORKFLOW_PUBLISH = Permission( - group=Group.KNOWLEDGE_WORKFLOW, operate=Operate.PUBLISH, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_DOCUMENT_READ = Permission( - group=Group.KNOWLEDGE_DOCUMENT, operate=Operate.READ, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_VIEW], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_DOCUMENT_CREATE = Permission( - group=Group.KNOWLEDGE_DOCUMENT, operate=Operate.CREATE, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_DOCUMENT_EDIT = Permission( - group=Group.KNOWLEDGE_DOCUMENT, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_DOCUMENT_DELETE = Permission( - group=Group.KNOWLEDGE_DOCUMENT, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_DOCUMENT_SYNC = Permission( - group=Group.KNOWLEDGE_DOCUMENT, operate=Operate.SYNC, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_DOCUMENT_EXPORT = Permission( - group=Group.KNOWLEDGE_DOCUMENT, operate=Operate.EXPORT, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_DOCUMENT_DOWNLOAD_SOURCE_FILE = Permission( - group=Group.KNOWLEDGE_DOCUMENT, operate=Operate.DOWNLOAD, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_DOCUMENT_GENERATE = Permission( - group=Group.KNOWLEDGE_DOCUMENT, operate=Operate.GENERATE, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_DOCUMENT_VECTOR = Permission( - group=Group.KNOWLEDGE_DOCUMENT, operate=Operate.VECTOR, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_DOCUMENT_MIGRATE = Permission( - group=Group.KNOWLEDGE_DOCUMENT, operate=Operate.MIGRATE, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_DOCUMENT_TAG = Permission( - group=Group.KNOWLEDGE_DOCUMENT, operate=Operate.TAG, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_DOCUMENT_REPLACE = Permission( - group=Group.KNOWLEDGE_DOCUMENT, operate=Operate.REPLACE, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_DOCUMENT_TOKEN = Permission( - group=Group.KNOWLEDGE_DOCUMENT, operate=Operate.TOKEN, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_VIEW], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_HIT_TEST = Permission( - group=Group.KNOWLEDGE_HIT_TEST, operate=Operate.READ, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_VIEW], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_PROBLEM_READ = Permission( - group=Group.KNOWLEDGE_PROBLEM, operate=Operate.READ, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_VIEW], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_PROBLEM_CREATE = Permission( - group=Group.KNOWLEDGE_PROBLEM, operate=Operate.CREATE, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_PROBLEM_EDIT = Permission( - group=Group.KNOWLEDGE_PROBLEM, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_PROBLEM_DELETE = Permission( - group=Group.KNOWLEDGE_PROBLEM, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_PROBLEM_RELATE = Permission( - group=Group.KNOWLEDGE_PROBLEM, operate=Operate.RELATE, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_TERMBASE_READ = Permission( - group=Group.KNOWLEDGE_TERMBASE, operate=Operate.READ, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_VIEW], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_TERMBASE_CREATE = Permission( - group=Group.KNOWLEDGE_TERMBASE, operate=Operate.CREATE, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_TERMBASE_EDIT = Permission( - group=Group.KNOWLEDGE_TERMBASE, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_TERMBASE_DELETE = Permission( - group=Group.KNOWLEDGE_TERMBASE, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_TAG_READ = Permission( - group=Group.KNOWLEDGE_TAG, operate=Operate.READ, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_TAG_CREATE = Permission( - group=Group.KNOWLEDGE_TAG, operate=Operate.CREATE, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_TAG_EDIT = Permission( - group=Group.KNOWLEDGE_TAG, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - KNOWLEDGE_TAG_DELETE = Permission( - group=Group.KNOWLEDGE_TAG, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE] - ) - # 资源授权 - APPLICATION_WORKSPACE_USER_RESOURCE_PERMISSION_READ = Permission( - group=Group.APPLICATION_WORKSPACE_USER_RESOURCE_PERMISSION, operate=Operate.READ, - role_list=[RoleConstants.ADMIN, RoleConstants.WORKSPACE_MANAGE], - parent_group=[SystemGroup.RESOURCE_PERMISSION, WorkspaceGroup.RESOURCE_PERMISSION] - ) - APPLICATION_WORKSPACE_USER_RESOURCE_PERMISSION_EDIT = Permission( - group=Group.APPLICATION_WORKSPACE_USER_RESOURCE_PERMISSION, operate=Operate.EDIT, - role_list=[RoleConstants.ADMIN, RoleConstants.WORKSPACE_MANAGE], - parent_group=[SystemGroup.RESOURCE_PERMISSION, WorkspaceGroup.RESOURCE_PERMISSION] - ) - KNOWLEDGE_WORKSPACE_USER_RESOURCE_PERMISSION_READ = Permission( - group=Group.KNOWLEDGE_WORKSPACE_USER_RESOURCE_PERMISSION, operate=Operate.READ, - role_list=[RoleConstants.ADMIN, RoleConstants.WORKSPACE_MANAGE], - parent_group=[SystemGroup.RESOURCE_PERMISSION, WorkspaceGroup.RESOURCE_PERMISSION] - ) - KNOWLEDGE_WORKSPACE_USER_RESOURCE_PERMISSION_EDIT = Permission( - group=Group.KNOWLEDGE_WORKSPACE_USER_RESOURCE_PERMISSION, operate=Operate.EDIT, - role_list=[RoleConstants.ADMIN, RoleConstants.WORKSPACE_MANAGE], - parent_group=[SystemGroup.RESOURCE_PERMISSION, WorkspaceGroup.RESOURCE_PERMISSION] - ) - TOOL_WORKSPACE_USER_RESOURCE_PERMISSION_READ = Permission( - group=Group.TOOL_WORKSPACE_USER_RESOURCE_PERMISSION, operate=Operate.READ, - role_list=[RoleConstants.ADMIN, RoleConstants.WORKSPACE_MANAGE], - parent_group=[SystemGroup.RESOURCE_PERMISSION, WorkspaceGroup.RESOURCE_PERMISSION] - ) - TOOL_WORKSPACE_USER_RESOURCE_PERMISSION_EDIT = Permission( - group=Group.TOOL_WORKSPACE_USER_RESOURCE_PERMISSION, operate=Operate.EDIT, - role_list=[RoleConstants.ADMIN, RoleConstants.WORKSPACE_MANAGE], - parent_group=[SystemGroup.RESOURCE_PERMISSION, WorkspaceGroup.RESOURCE_PERMISSION] - - ) - MODEL_WORKSPACE_USER_RESOURCE_PERMISSION_READ = Permission( - group=Group.MODEL_WORKSPACE_USER_RESOURCE_PERMISSION, operate=Operate.READ, - role_list=[RoleConstants.ADMIN, RoleConstants.WORKSPACE_MANAGE], - parent_group=[SystemGroup.RESOURCE_PERMISSION, WorkspaceGroup.RESOURCE_PERMISSION] - ) - MODEL_WORKSPACE_USER_RESOURCE_PERMISSION_EDIT = Permission( - group=Group.MODEL_WORKSPACE_USER_RESOURCE_PERMISSION, operate=Operate.EDIT, - role_list=[RoleConstants.ADMIN, RoleConstants.WORKSPACE_MANAGE], - parent_group=[SystemGroup.RESOURCE_PERMISSION, WorkspaceGroup.RESOURCE_PERMISSION] - ) - - EMAIL_SETTING_READ = Permission( - group=Group.EMAIL_SETTING, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.EMAIL_SETTING] - ) - EMAIL_SETTING_EDIT = Permission( - group=Group.EMAIL_SETTING, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.EMAIL_SETTING] - ) - # 角色管理 - ROLE_READ = Permission( - group=Group.ROLE, operate=Operate.READ, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[SystemGroup.ROLE] - ) - ROLE_CREATE = Permission( - group=Group.ROLE, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.ROLE] - ) - ROLE_EDIT = Permission( - group=Group.ROLE, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.ROLE] - ) - ROLE_DELETE = Permission( - group=Group.ROLE, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.ROLE] - ) - ROLE_ADD_MEMBER = Permission( - group=Group.ROLE, operate=Operate.ADD_MEMBER, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.ROLE] - ) - ROLE_REMOVE_MEMBER = Permission( - group=Group.ROLE, operate=Operate.REMOVE_MEMBER, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.ROLE] - ) - # 空间-角色管理 - WORKSPACE_ROLE_READ = Permission( - group=Group.WORKSPACE_ROLE, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.ROLE] - ) - WORKSPACE_ROLE_ADD_MEMBER = Permission( - group=Group.WORKSPACE_ROLE, operate=Operate.ADD_MEMBER, role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.ROLE] - ) - WORKSPACE_ROLE_REMOVE_MEMBER = Permission( - group=Group.WORKSPACE_ROLE, operate=Operate.REMOVE_MEMBER, role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.ROLE] - ) - - WORKSPACE_READ = Permission( - group=Group.WORKSPACE, operate=Operate.READ, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[SystemGroup.WORKSPACE], is_ee=settings.edition == "EE" - ) - WORKSPACE_CREATE = Permission( - group=Group.WORKSPACE, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.WORKSPACE], is_ee=settings.edition == "EE" - ) - WORKSPACE_EDIT = Permission( - group=Group.WORKSPACE, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.WORKSPACE], is_ee=settings.edition == "EE" - ) - WORKSPACE_DELETE = Permission( - group=Group.WORKSPACE, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.WORKSPACE], is_ee=settings.edition == "EE" - ) - WORKSPACE_ADD_MEMBER = Permission( - group=Group.WORKSPACE, operate=Operate.ADD_MEMBER, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.WORKSPACE], is_ee=settings.edition == "EE" - ) - WORKSPACE_REMOVE_MEMBER = Permission( - group=Group.WORKSPACE, operate=Operate.REMOVE_MEMBER, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.WORKSPACE], is_ee=settings.edition == "EE" - ) - WORKSPACE_WORKSPACE_READ = Permission( - group=Group.WORKSPACE_WORKSPACE, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.WORKSPACE], is_ee=settings.edition == "EE" - ) - WORKSPACE_WORKSPACE_ADD_MEMBER = Permission( - group=Group.WORKSPACE_WORKSPACE, operate=Operate.ADD_MEMBER, role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.WORKSPACE], is_ee=settings.edition == "EE" - ) - WORKSPACE_WORKSPACE_REMOVE_MEMBER = Permission( - group=Group.WORKSPACE_WORKSPACE, operate=Operate.REMOVE_MEMBER, role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.WORKSPACE], is_ee=settings.edition == "EE" - ) - LOGIN_AUTH_READ = Permission( - group=Group.LOGIN_AUTH, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.LOGIN_AUTH] - ) - LOGIN_AUTH_EDIT = Permission( - group=Group.LOGIN_AUTH, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.LOGIN_AUTH] - ) - APPLICATION_READ = Permission(group=Group.APPLICATION, operate=Operate.READ, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_VIEW], - ) - APPLICATION_CREATE = Permission(group=Group.APPLICATION, operate=Operate.CREATE, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE], - ) - APPLICATION_COPY = Permission(group=Group.APPLICATION, operate=Operate.COPY, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE], - ) - APPLICATION_EDIT = Permission(group=Group.APPLICATION, operate=Operate.EDIT, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE], - ) - APPLICATION_DELETE = Permission(group=Group.APPLICATION, operate=Operate.DELETE, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE], - ) - APPLICATION_IMPORT = Permission(group=Group.APPLICATION, operate=Operate.IMPORT, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE] - ) - APPLICATION_EXPORT = Permission(group=Group.APPLICATION, operate=Operate.EXPORT, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - ) - APPLICATION_PUBLISH = Permission(group=Group.APPLICATION, operate=Operate.PUBLISH, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - ) - APPLICATION_BATCH_DELETE = Permission(group=Group.APPLICATION, operate=Operate.BATCH_DELETE, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - ) - APPLICATION_BATCH_MOVE = Permission(group=Group.APPLICATION, operate=Operate.BATCH_MOVE, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - ) - APPLICATION_RESOURCE_AUTHORIZATION = Permission(group=Group.APPLICATION, operate=Operate.AUTH, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ - ResourcePermissionConst.APPLICATION_MANGE], - ) - APPLICATION_RELATE_RESOURCE_VIEW = Permission( - group=Group.APPLICATION, operate=Operate.RELATE_VIEW, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE] - ) - APPLICATION_TRIGGER_READ = Permission( - group=Group.APPLICATION, operate=Operate.TRIGGER_READ, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE] - ) - APPLICATION_TRIGGER_CREATE = Permission( - group=Group.APPLICATION, operate=Operate.TRIGGER_CREATE, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE] - ) - APPLICATION_TRIGGER_EDIT = Permission( - group=Group.APPLICATION, operate=Operate.TRIGGER_EDIT, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE] - ) - APPLICATION_TRIGGER_DELETE = Permission( - group=Group.APPLICATION, operate=Operate.TRIGGER_DELETE, role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE] - ) - APPLICATION_FOLDER_READ = Permission(group=Group.APPLICATION_FOLDER, operate=Operate.READ, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_VIEW] - ) - APPLICATION_FOLDER_CREATE = Permission(group=Group.APPLICATION_FOLDER, operate=Operate.CREATE, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE] - ) - APPLICATION_FOLDER_EDIT = Permission(group=Group.APPLICATION_FOLDER, operate=Operate.EDIT, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE] - ) - APPLICATION_FOLDER_DELETE = Permission(group=Group.APPLICATION_FOLDER, operate=Operate.DELETE, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE] - ) - APPLICATION_FOLDER_AUTH = Permission(group=Group.APPLICATION_FOLDER, operate=Operate.AUTH, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE] - ) - APPLICATION_OVERVIEW_READ = Permission(group=Group.APPLICATION_OVERVIEW, operate=Operate.READ, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_VIEW], - ) - - APPLICATION_OVERVIEW_EMBED = Permission(group=Group.APPLICATION_OVERVIEW, operate=Operate.EMBED, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE], - - ) - - APPLICATION_OVERVIEW_ACCESS = Permission(group=Group.APPLICATION_OVERVIEW, operate=Operate.ACCESS, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE], - - ) - APPLICATION_OVERVIEW_DISPLAY = Permission(group=Group.APPLICATION_OVERVIEW, operate=Operate.DISPLAY, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ - ResourcePermissionConst.APPLICATION_MANGE], - - ) - APPLICATION_OVERVIEW_API_KEY = Permission(group=Group.APPLICATION_OVERVIEW, operate=Operate.API_KEY, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ - ResourcePermissionConst.APPLICATION_MANGE], - - ) - APPLICATION_OVERVIEW_PUBLIC = Permission(group=Group.APPLICATION_OVERVIEW, operate=Operate.PUBLIC_ACCESS, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE], - - ) - # 应用接入 - APPLICATION_ACCESS_READ = Permission(group=Group.APPLICATION_ACCESS, operate=Operate.READ, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_VIEW], - - ) - APPLICATION_ACCESS_EDIT = Permission(group=Group.APPLICATION_ACCESS, operate=Operate.EDIT, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE]) - - APPLICATION_CHAT_USER_READ = Permission(group=Group.APPLICATION_CHAT_USER, operate=Operate.READ, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_VIEW], - ) - APPLICATION_CHAT_USER_EDIT = Permission(group=Group.APPLICATION_CHAT_USER, operate=Operate.EDIT, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE], - ) - KNOWLEDGE_CHAT_USER_READ = Permission(group=Group.KNOWLEDGE_CHAT_USER, operate=Operate.READ, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_VIEW], - ) - - KNOWLEDGE_CHAT_USER_EDIT = Permission(group=Group.KNOWLEDGE_CHAT_USER, operate=Operate.EDIT, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.KNOWLEDGE, UserGroup.KNOWLEDGE], - resource_permission_group_list=[ResourcePermissionConst.KNOWLEDGE_MANGE], - ) - - APPLICATION_CHAT_LOG_READ = Permission(group=Group.APPLICATION_CHAT_LOG, operate=Operate.READ, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_VIEW], - ) - - APPLICATION_CHAT_LOG_ANNOTATION = Permission(group=Group.APPLICATION_CHAT_LOG, operate=Operate.ANNOTATION, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ - ResourcePermissionConst.APPLICATION_MANGE], - ) - - APPLICATION_CHAT_LOG_EXPORT = Permission(group=Group.APPLICATION_CHAT_LOG, operate=Operate.EXPORT, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ResourcePermissionConst.APPLICATION_MANGE], - ) - - APPLICATION_CHAT_LOG_CLEAR_POLICY = Permission(group=Group.APPLICATION_CHAT_LOG, operate=Operate.CLEAR_POLICY, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ - ResourcePermissionConst.APPLICATION_MANGE], - ) - APPLICATION_CHAT_LOG_ADD_KNOWLEDGE = Permission(group=Group.APPLICATION_CHAT_LOG, operate=Operate.ADD_KNOWLEDGE, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[WorkspaceGroup.APPLICATION, UserGroup.APPLICATION], - resource_permission_group_list=[ - ResourcePermissionConst.APPLICATION_MANGE], - ) - - ABOUT_READ = Permission(group=Group.OTHER, operate=Operate.READ, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[SystemGroup.OTHER, WorkspaceGroup.OTHER, UserGroup.OTHER], - label=_('About') - ) - ABOUT_UPDATE = Permission(group=Group.OTHER, operate=Operate.UPDATE, - role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.OTHER], - label=_('Update License') - ) - SWITCH_LANGUAGE = Permission(group=Group.OTHER, operate=Operate.EDIT, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[SystemGroup.OTHER, WorkspaceGroup.OTHER, UserGroup.OTHER], - label=_('Switch Language') - ) - CHANGE_PASSWORD = Permission(group=Group.OTHER, operate=Operate.CREATE, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[SystemGroup.OTHER, WorkspaceGroup.OTHER, UserGroup.OTHER], - label=_('Change Password') - ) - - SYSTEM_API_KEY_EDIT = Permission(group=Group.OTHER, operate=Operate.DELETE, - role_list=[RoleConstants.ADMIN, RoleConstants.USER], - parent_group=[SystemGroup.OTHER, WorkspaceGroup.OTHER, UserGroup.OTHER], - label=_('System API Key') - ) - - APPEARANCE_SETTINGS_READ = Permission(group=Group.APPEARANCE_SETTINGS, operate=Operate.READ, - role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.APPEARANCE_SETTINGS] - ) - APPEARANCE_SETTINGS_EDIT = Permission(group=Group.APPEARANCE_SETTINGS, operate=Operate.EDIT, - role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.APPEARANCE_SETTINGS] - ) - # 对话用户 - CHAT_USER_READ = Permission(group=Group.CHAT_USER, operate=Operate.READ, - role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.CHAT_USER], - ) - CHAT_USER_CREATE = Permission(group=Group.CHAT_USER, operate=Operate.CREATE, - role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.CHAT_USER] - ) - CHAT_USER_SYNC = Permission(group=Group.CHAT_USER, operate=Operate.SYNC, - role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.CHAT_USER] - ) - CHAT_USER_EDIT = Permission(group=Group.CHAT_USER, operate=Operate.EDIT, - role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.CHAT_USER] - ) - CHAT_USER_DELETE = Permission(group=Group.CHAT_USER, operate=Operate.DELETE, - role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.CHAT_USER] - ) - CHAT_USER_GROUP = Permission(group=Group.CHAT_USER, operate=Operate.USER_GROUP, - role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.CHAT_USER], - label=_('Set up user groups') - ) - USER_GROUP_READ = Permission(group=Group.CHAT_USER_GROUP, operate=Operate.READ, - role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.CHAT_USER_GROUP] - ) - USER_GROUP_CREATE = Permission(group=Group.CHAT_USER_GROUP, operate=Operate.CREATE, - role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.CHAT_USER_GROUP] - ) - USER_GROUP_EDIT = Permission(group=Group.CHAT_USER_GROUP, operate=Operate.EDIT, - role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.CHAT_USER_GROUP] - ) - USER_GROUP_DELETE = Permission(group=Group.CHAT_USER_GROUP, operate=Operate.DELETE, - role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.CHAT_USER_GROUP] - ) - USER_GROUP_ADD_MEMBER = Permission(group=Group.CHAT_USER_GROUP, operate=Operate.ADD_MEMBER, - role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.CHAT_USER_GROUP] - ) - USER_GROUP_REMOVE_MEMBER = Permission(group=Group.CHAT_USER_GROUP, operate=Operate.REMOVE_MEMBER, - role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.CHAT_USER_GROUP] - ) - CHAT_USER_AUTH_READ = Permission(group=Group.CHAT_USER_GROUP, operate=Operate.READ, - role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.CHAT_USER_AUTH] - ) - CHAT_USER_AUTH_EDIT = Permission(group=Group.CHAT_USER_AUTH, operate=Operate.EDIT, - role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.CHAT_USER_AUTH] - ) - PORTAL_READ = Permission(group=Group.PORTAL, operate=Operate.READ, - role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.PORTAL] - ) - PORTAL_EDIT = Permission(group=Group.PORTAL, operate=Operate.EDIT, - role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.PORTAL] - ) - - WORKSPACE_CHAT_USER_READ = Permission(group=Group.WORKSPACE_CHAT_USER, operate=Operate.READ, - role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.CHAT_USER] - ) - WORKSPACE_CHAT_USER_CREATE = Permission(group=Group.WORKSPACE_CHAT_USER, operate=Operate.CREATE, - role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.CHAT_USER] - ) - WORKSPACE_CHAT_USER_EDIT = Permission(group=Group.WORKSPACE_CHAT_USER, operate=Operate.EDIT, - role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.CHAT_USER] - ) - WORKSPACE_CHAT_USER_DELETE = Permission(group=Group.WORKSPACE_CHAT_USER, operate=Operate.DELETE, - role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.CHAT_USER] - ) - WORKSPACE_CHAT_USER_GROUP = Permission(group=Group.WORKSPACE_CHAT_USER, operate=Operate.USER_GROUP, - role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.CHAT_USER], - label=_('Set up user groups') - ) - WORKSPACE_USER_GROUP_READ = Permission(group=Group.CHAT_USER_GROUP, operate=Operate.READ, - role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.CHAT_USER_GROUP] - ) - WORKSPACE_USER_GROUP_CREATE = Permission(group=Group.CHAT_USER_GROUP, operate=Operate.CREATE, - role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.CHAT_USER_GROUP] - ) - WORKSPACE_USER_GROUP_EDIT = Permission(group=Group.CHAT_USER_GROUP, operate=Operate.EDIT, - role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.CHAT_USER_GROUP] - ) - WORKSPACE_USER_GROUP_DELETE = Permission(group=Group.CHAT_USER_GROUP, operate=Operate.DELETE, - role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.CHAT_USER_GROUP] - ) - WORKSPACE_USER_GROUP_ADD_MEMBER = Permission(group=Group.CHAT_USER_GROUP, operate=Operate.ADD_MEMBER, - role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.CHAT_USER_GROUP] - ) - WORKSPACE_USER_GROUP_REMOVE_MEMBER = Permission(group=Group.CHAT_USER_GROUP, operate=Operate.REMOVE_MEMBER, - role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.CHAT_USER_GROUP] - ) - # 空间-用户组 - WORKSPACE_SYSTEM_USER_GROUP_READ = Permission(group=Group.WORKSPACE_USER_GROUP, operate=Operate.READ, - role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.USER_GROUP] - ) - WORKSPACE_SYSTEM_USER_GROUP_CREATE = Permission(group=Group.WORKSPACE_USER_GROUP, operate=Operate.CREATE, - role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.USER_GROUP] - ) - WORKSPACE_SYSTEM_USER_GROUP_EDIT = Permission(group=Group.WORKSPACE_USER_GROUP, operate=Operate.EDIT, - role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.USER_GROUP] - ) - WORKSPACE_SYSTEM_USER_GROUP_DELETE = Permission(group=Group.WORKSPACE_USER_GROUP, operate=Operate.DELETE, - role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.USER_GROUP] - ) - WORKSPACE_SYSTEM_USER_GROUP_ADD_MEMBER = Permission(group=Group.WORKSPACE_USER_GROUP, operate=Operate.ADD_MEMBER, - role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.USER_GROUP] - ) - WORKSPACE_SYSTEM_USER_GROUP_REMOVE_MEMBER = Permission(group=Group.WORKSPACE_USER_GROUP, - operate=Operate.REMOVE_MEMBER, - role_list=[RoleConstants.ADMIN], - parent_group=[WorkspaceGroup.USER_GROUP] - ) - - SHARED_TOOL_READ = Permission(group=Group.SYSTEM_TOOL, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_TOOL], is_ee=settings.edition == "EE" - ) - - SHARED_TOOL_CREATE = Permission(group=Group.SYSTEM_TOOL, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_TOOL], is_ee=settings.edition == "EE" - ) - - SHARED_TOOL_EDIT = Permission( - group=Group.SYSTEM_TOOL, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_TOOL], is_ee=settings.edition == "EE" - ) - - SHARED_TOOL_DELETE = Permission( - group=Group.SYSTEM_TOOL, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_TOOL], is_ee=settings.edition == "EE" - ) - SHARED_TOOL_IMPORT = Permission( - group=Group.SYSTEM_TOOL, operate=Operate.IMPORT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_TOOL], is_ee=settings.edition == "EE" - ) - SHARED_TOOL_EXPORT = Permission( - group=Group.SYSTEM_TOOL, operate=Operate.EXPORT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_TOOL], is_ee=settings.edition == "EE" - ) - SHARED_TOOL_PUBLISH = Permission( - group=Group.SYSTEM_TOOL, operate=Operate.PUBLISH, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_TOOL], is_ee=settings.edition == "EE" - ) - SHARED_TOOL_RELATE_RESOURCE_VIEW = Permission( - group=Group.SYSTEM_TOOL, operate=Operate.RELATE_VIEW, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_TOOL], is_ee=settings.edition == "EE" - ) - SHARED_TOOL_EXECUTE_RECORD = Permission( - group=Group.SYSTEM_TOOL, operate=Operate.RECORD, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_TOOL], is_ee=settings.edition == "EE" - ) - SHARED_TOOL_TO_WORKSPACE = Permission( - group=Group.SYSTEM_TOOL, operate=Operate.TO_WORKSPACE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_TOOL], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_READ = Permission( - group=Group.SYSTEM_KNOWLEDGE, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_CREATE = Permission( - group=Group.SYSTEM_KNOWLEDGE, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_EDIT = Permission( - group=Group.SYSTEM_KNOWLEDGE, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_SYNC = Permission( - group=Group.SYSTEM_KNOWLEDGE, operate=Operate.SYNC, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_VECTOR = Permission( - group=Group.SYSTEM_KNOWLEDGE, operate=Operate.VECTOR, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_EXPORT = Permission( - group=Group.SYSTEM_KNOWLEDGE, operate=Operate.EXPORT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_GENERATE = Permission( - group=Group.SYSTEM_KNOWLEDGE, operate=Operate.GENERATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_DELETE = Permission( - group=Group.SYSTEM_KNOWLEDGE, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_RELATE_RESOURCE_VIEW = Permission( - group=Group.SYSTEM_KNOWLEDGE, operate=Operate.RELATE_VIEW, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_TO_WORKSPACE = Permission( - group=Group.SYSTEM_KNOWLEDGE, operate=Operate.TO_WORKSPACE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_WORKFLOW_READ = Permission( - group=Group.SYSTEM_KNOWLEDGE_WORKFLOW, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_WORKFLOW_EDIT = Permission( - group=Group.SYSTEM_KNOWLEDGE_WORKFLOW, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_WORKFLOW_EXPORT = Permission( - group=Group.SYSTEM_KNOWLEDGE_WORKFLOW, operate=Operate.EXPORT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_WORKFLOW_PUBLISH = Permission( - group=Group.SYSTEM_KNOWLEDGE_WORKFLOW, operate=Operate.PUBLISH, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_DOCUMENT_READ = Permission( - group=Group.SYSTEM_KNOWLEDGE_DOCUMENT, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_DOCUMENT_CREATE = Permission( - group=Group.SYSTEM_KNOWLEDGE_DOCUMENT, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_DOCUMENT_EDIT = Permission( - group=Group.SYSTEM_KNOWLEDGE_DOCUMENT, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_DOCUMENT_DELETE = Permission( - group=Group.SYSTEM_KNOWLEDGE_DOCUMENT, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_DOCUMENT_SYNC = Permission( - group=Group.SYSTEM_KNOWLEDGE_DOCUMENT, operate=Operate.SYNC, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_DOCUMENT_EXPORT = Permission( - group=Group.SYSTEM_KNOWLEDGE_DOCUMENT, operate=Operate.EXPORT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_DOCUMENT_DOWNLOAD_SOURCE_FILE = Permission( - group=Group.SYSTEM_KNOWLEDGE_DOCUMENT, operate=Operate.DOWNLOAD, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_DOCUMENT_GENERATE = Permission( - group=Group.SYSTEM_KNOWLEDGE_DOCUMENT, operate=Operate.GENERATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_DOCUMENT_VECTOR = Permission( - group=Group.SYSTEM_KNOWLEDGE_DOCUMENT, operate=Operate.VECTOR, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_DOCUMENT_MIGRATE = Permission( - group=Group.SYSTEM_KNOWLEDGE_DOCUMENT, operate=Operate.MIGRATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_DOCUMENT_TAG = Permission( - group=Group.SYSTEM_KNOWLEDGE_DOCUMENT, operate=Operate.TAG, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_DOCUMENT_REPLACE = Permission( - group=Group.SYSTEM_KNOWLEDGE_DOCUMENT, operate=Operate.REPLACE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_DOCUMENT_TOKEN = Permission( - group=Group.SYSTEM_KNOWLEDGE_DOCUMENT, operate=Operate.TOKEN, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_TAG_READ = Permission( - group=Group.SYSTEM_KNOWLEDGE_TAG, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_TAG_CREATE = Permission( - group=Group.SYSTEM_KNOWLEDGE_TAG, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_TAG_EDIT = Permission( - group=Group.SYSTEM_KNOWLEDGE_TAG, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_TAG_DELETE = Permission( - group=Group.SYSTEM_KNOWLEDGE_TAG, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_PROBLEM_READ = Permission( - group=Group.SYSTEM_KNOWLEDGE_PROBLEM, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_PROBLEM_CREATE = Permission( - group=Group.SYSTEM_KNOWLEDGE_PROBLEM, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_PROBLEM_EDIT = Permission( - group=Group.SYSTEM_KNOWLEDGE_PROBLEM, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_PROBLEM_DELETE = Permission( - group=Group.SYSTEM_KNOWLEDGE_PROBLEM, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_PROBLEM_RELATE = Permission( - group=Group.SYSTEM_KNOWLEDGE_PROBLEM, operate=Operate.RELATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_TERMBASE_READ = Permission( - group=Group.SYSTEM_KNOWLEDGE_TERMBASE, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_TERMBASE_CREATE = Permission( - group=Group.SYSTEM_KNOWLEDGE_TERMBASE, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_TERMBASE_EDIT = Permission( - group=Group.SYSTEM_KNOWLEDGE_TERMBASE, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_TERMBASE_DELETE = Permission( - group=Group.SYSTEM_KNOWLEDGE_TERMBASE, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_TERMBASE_EXPORT = Permission( - group=Group.SYSTEM_KNOWLEDGE_TERMBASE, operate=Operate.EXPORT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_HIT_TEST = Permission( - group=Group.SYSTEM_KNOWLEDGE_HIT_TEST, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_CHAT_USER_READ = Permission( - group=Group.SYSTEM_KNOWLEDGE_CHAT_USER, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_KNOWLEDGE_CHAT_USER_EDIT = Permission( - group=Group.SYSTEM_KNOWLEDGE_CHAT_USER, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - SHARED_MODEL_READ = Permission( - group=Group.SYSTEM_MODEL, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_MODEL], is_ee=settings.edition == "EE" - ) - SHARED_MODEL_CREATE = Permission( - group=Group.SYSTEM_MODEL, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_MODEL], is_ee=settings.edition == "EE" - ) - - SHARED_MODEL_EDIT = Permission( - group=Group.SYSTEM_MODEL, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_MODEL], is_ee=settings.edition == "EE" - ) - SHARED_MODEL_DELETE = Permission( - group=Group.SYSTEM_MODEL, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_MODEL], is_ee=settings.edition == "EE" - ) - SHARED_MODEL_RELATE_RESOURCE_VIEW = Permission( - group=Group.SYSTEM_MODEL, operate=Operate.RELATE_VIEW, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_MODEL], is_ee=settings.edition == "EE" - ) - SHARED_MODEL_TO_WORKSPACE = Permission( - group=Group.SYSTEM_MODEL, operate=Operate.TO_WORKSPACE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.SHARED_MODEL], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_READ = Permission( - group=Group.SYSTEM_RES_APPLICATION, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_EDIT = Permission( - group=Group.SYSTEM_RES_APPLICATION, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_DELETE = Permission( - group=Group.SYSTEM_RES_APPLICATION, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_EXPORT = Permission( - group=Group.SYSTEM_RES_APPLICATION, operate=Operate.EXPORT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_COPY = Permission( - group=Group.SYSTEM_RES_APPLICATION, operate=Operate.COPY, - role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_AUTH = Permission( - group=Group.SYSTEM_RES_APPLICATION, operate=Operate.AUTH, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_PUBLISH = Permission( - group=Group.SYSTEM_RES_APPLICATION, operate=Operate.PUBLISH, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_TRIGGER_READ = Permission( - group=Group.SYSTEM_RES_APPLICATION, operate=Operate.TRIGGER_READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_TRIGGER_CREATE = Permission( - group=Group.SYSTEM_RES_APPLICATION, operate=Operate.TRIGGER_CREATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_TRIGGER_EDIT = Permission( - group=Group.SYSTEM_RES_APPLICATION, operate=Operate.TRIGGER_EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_TRIGGER_DELETE = Permission( - group=Group.SYSTEM_RES_APPLICATION, operate=Operate.TRIGGER_DELETE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_RELATE_RESOURCE_VIEW = Permission( - group=Group.SYSTEM_RES_APPLICATION, operate=Operate.RELATE_VIEW, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_OVERVIEW_READ = Permission( - group=Group.SYSTEM_RES_APPLICATION_OVERVIEW, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_OVERVIEW_EMBED = Permission( - group=Group.SYSTEM_RES_APPLICATION_OVERVIEW, operate=Operate.EMBED, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_OVERVIEW_ACCESS = Permission( - group=Group.SYSTEM_RES_APPLICATION_OVERVIEW, operate=Operate.ACCESS, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_OVERVIEW_DISPLAY = Permission( - group=Group.SYSTEM_RES_APPLICATION_OVERVIEW, operate=Operate.DISPLAY, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_OVERVIEW_API_KEY = Permission( - group=Group.SYSTEM_RES_APPLICATION_OVERVIEW, operate=Operate.API_KEY, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_OVERVIEW_PUBLIC = Permission( - group=Group.SYSTEM_RES_APPLICATION_OVERVIEW, operate=Operate.PUBLIC_ACCESS, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - # 应用接入 - RESOURCE_APPLICATION_ACCESS_READ = Permission( - group=Group.SYSTEM_RES_APPLICATION_ACCESS, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_ACCESS_EDIT = Permission( - group=Group.SYSTEM_RES_APPLICATION_ACCESS, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_CHAT_USER_READ = Permission( - group=Group.SYSTEM_RES_APPLICATION_CHAT_USER, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_CHAT_USER_EDIT = Permission( - group=Group.SYSTEM_RES_APPLICATION_CHAT_USER, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_CHAT_LOG_READ = Permission( - group=Group.SYSTEM_RES_APPLICATION_CHAT_LOG, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_CHAT_LOG_ADD_KNOWLEDGE = Permission( - group=Group.SYSTEM_RES_APPLICATION_CHAT_LOG, operate=Operate.ADD_KNOWLEDGE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_CHAT_LOG_ANNOTATION = Permission( - group=Group.SYSTEM_RES_APPLICATION_CHAT_LOG, operate=Operate.ANNOTATION, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_CHAT_LOG_EXPORT = Permission( - group=Group.SYSTEM_RES_APPLICATION_CHAT_LOG, operate=Operate.EXPORT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - RESOURCE_APPLICATION_CHAT_LOG_CLEAR_POLICY = Permission( - group=Group.SYSTEM_RES_APPLICATION_CHAT_LOG, operate=Operate.CLEAR_POLICY, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_APPLICATION], is_ee=settings.edition == "EE" - ) - # 知识库 - RESOURCE_KNOWLEDGE_READ = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_EDIT = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_DELETE = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_SYNC = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE, operate=Operate.SYNC, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_EXPORT = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE, operate=Operate.EXPORT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_PUBLISH = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE, operate=Operate.PUBLISH, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_VECTOR = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE, operate=Operate.VECTOR, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_GENERATE = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE, operate=Operate.GENERATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_AUTH = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE, operate=Operate.AUTH, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_RELATE_RESOURCE_VIEW = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE, operate=Operate.RELATE_VIEW, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - # 文档 - RESOURCE_KNOWLEDGE_WORKFLOW_READ = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_WORKFLOW, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_WORKFLOW_EDIT = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_WORKFLOW, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_WORKFLOW_EXPORT = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_WORKFLOW, operate=Operate.EXPORT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_WORKFLOW_PUBLISH = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_WORKFLOW, operate=Operate.PUBLISH, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_DOCUMENT_READ = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_DOCUMENT, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_DOCUMENT_CREATE = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_DOCUMENT, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_DOCUMENT_EDIT = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_DOCUMENT, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_DOCUMENT_DELETE = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_DOCUMENT, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_DOCUMENT_SYNC = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_DOCUMENT, operate=Operate.SYNC, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_DOCUMENT_EXPORT = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_DOCUMENT, operate=Operate.EXPORT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_DOCUMENT_DOWNLOAD_SOURCE_FILE = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_DOCUMENT, operate=Operate.DOWNLOAD, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_DOCUMENT_GENERATE = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_DOCUMENT, operate=Operate.GENERATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_DOCUMENT_VECTOR = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_DOCUMENT, operate=Operate.VECTOR, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_DOCUMENT_MIGRATE = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_DOCUMENT, operate=Operate.MIGRATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_DOCUMENT_TAG = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_DOCUMENT, operate=Operate.TAG, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_DOCUMENT_REPLACE = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_DOCUMENT, operate=Operate.REPLACE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_DOCUMENT_TOKEN = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_DOCUMENT, operate=Operate.TOKEN, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_HIT_TEST = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_HIT_TEST, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_PROBLEM_READ = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_PROBLEM, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_PROBLEM_CREATE = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_PROBLEM, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_PROBLEM_EDIT = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_PROBLEM, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_PROBLEM_DELETE = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_PROBLEM, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_PROBLEM_RELATE = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_PROBLEM, operate=Operate.RELATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_TERMBASE_READ = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_TERMBASE, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_TERMBASE_CREATE = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_TERMBASE, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_TERMBASE_EDIT = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_TERMBASE, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_TERMBASE_DELETE = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_TERMBASE, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_TERMBASE_EXPORT = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_TERMBASE, operate=Operate.EXPORT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_TAG_READ = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_TAG, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_TAG_CREATE = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_TAG, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_TAG_EDIT = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_TAG, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_TAG_DELETE = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_TAG, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_CHAT_USER_READ = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_CHAT_USER, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_KNOWLEDGE_CHAT_USER_EDIT = Permission( - group=Group.SYSTEM_RES_KNOWLEDGE_CHAT_USER, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_KNOWLEDGE], is_ee=settings.edition == "EE" - ) - RESOURCE_TOOL_READ = Permission( - group=Group.SYSTEM_RES_TOOL, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_TOOL], is_ee=settings.edition == "EE" - ) - RESOURCE_TOOL_EDIT = Permission( - group=Group.SYSTEM_RES_TOOL, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_TOOL], is_ee=settings.edition == "EE" - ) - RESOURCE_TOOL_DELETE = Permission( - group=Group.SYSTEM_RES_TOOL, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_TOOL], is_ee=settings.edition == "EE" - ) - RESOURCE_TOOL_EXPORT = Permission( - group=Group.SYSTEM_RES_TOOL, operate=Operate.EXPORT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_TOOL], is_ee=settings.edition == "EE" - ) - RESOURCE_TOOL_PUBLISH = Permission( - group=Group.SYSTEM_RES_TOOL, operate=Operate.PUBLISH, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_TOOL], is_ee=settings.edition == "EE" - ) - RESOURCE_TOOL_AUTH = Permission( - group=Group.SYSTEM_RES_TOOL, operate=Operate.AUTH, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_TOOL], is_ee=settings.edition == "EE" - ) - RESOURCE_TOOL_RELATE_RESOURCE_VIEW = Permission( - group=Group.SYSTEM_RES_TOOL, operate=Operate.RELATE_VIEW, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_TOOL], is_ee=settings.edition == "EE" - ) - RESOURCE_TOOL_EXECUTE_RECORD = Permission( - group=Group.SYSTEM_RES_TOOL, operate=Operate.RECORD, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_TOOL], is_ee=settings.edition == "EE" - ) - RESOURCE_TOOL_TRIGGER_READ = Permission( - group=Group.SYSTEM_RES_TOOL, operate=Operate.TRIGGER_READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_TOOL], is_ee=settings.edition == "EE" - ) - RESOURCE_TOOL_TRIGGER_CREATE = Permission( - group=Group.SYSTEM_RES_TOOL, operate=Operate.TRIGGER_CREATE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_TOOL], is_ee=settings.edition == "EE" - ) - RESOURCE_TOOL_TRIGGER_EDIT = Permission( - group=Group.SYSTEM_RES_TOOL, operate=Operate.TRIGGER_EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_TOOL], is_ee=settings.edition == "EE" - ) - RESOURCE_TOOL_TRIGGER_DELETE = Permission( - group=Group.SYSTEM_RES_TOOL, operate=Operate.TRIGGER_DELETE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_TOOL], is_ee=settings.edition == "EE" - ) - RESOURCE_MODEL_READ = Permission( - group=Group.SYSTEM_RES_MODEL, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_MODEL], is_ee=settings.edition == "EE" - ) - RESOURCE_MODEL_EDIT = Permission( - group=Group.SYSTEM_RES_MODEL, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_MODEL], is_ee=settings.edition == "EE" - ) - RESOURCE_MODEL_DELETE = Permission( - group=Group.SYSTEM_RES_MODEL, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_MODEL], is_ee=settings.edition == "EE" - ) - RESOURCE_MODEL_AUTH = Permission( - group=Group.SYSTEM_RES_MODEL, operate=Operate.AUTH, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_MODEL], is_ee=settings.edition == "EE" - ) - RESOURCE_MODEL_RELATE_RESOURCE_VIEW = Permission( - group=Group.SYSTEM_RES_MODEL, operate=Operate.RELATE_VIEW, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.RESOURCE_MODEL], is_ee=settings.edition == "EE" - ) - OPERATION_LOG_READ = Permission( - group=Group.OPERATION_LOG, operate=Operate.READ, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.OPERATION_LOG] - ) - OPERATION_LOG_EXPORT = Permission( - group=Group.OPERATION_LOG, operate=Operate.EXPORT, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.OPERATION_LOG] - ) - OPERATION_LOG_CLEAR_POLICY = Permission( - group=Group.OPERATION_LOG, operate=Operate.CLEAR_POLICY, role_list=[RoleConstants.ADMIN], - parent_group=[SystemGroup.OPERATION_LOG] - ) - - def _build_workspace_permission(self, resource_name=None, resource_id_key=None): - def permission_factory(_, kwargs): - resource_path = f"/WORKSPACE/{kwargs.get('workspace_id')}" - if resource_name is not None and resource_id_key is not None: - resource_path = f"{resource_path}/{resource_name}/{kwargs.get(resource_id_key)}" - return Permission(group=self.value.group, operate=self.value.operate, resource_path=resource_path) - - return permission_factory - - def get_workspace_application_permission(self): - return self._build_workspace_permission(resource_name="APPLICATION", resource_id_key="application_id") - - def get_workspace_knowledge_permission(self): - return self._build_workspace_permission(resource_name="KNOWLEDGE", resource_id_key="knowledge_id") - - def get_workspace_model_permission(self): - return self._build_workspace_permission(resource_name="MODEL", resource_id_key="model_id") - - def get_workspace_tool_permission(self): - return self._build_workspace_permission(resource_name="TOOL", resource_id_key="tool_id") - - def get_workspace_permission(self): - return self._build_workspace_permission() - - def get_workspace_permission_workspace_manage_role(self): - return lambda r, kwargs: Permission(group=self.value.group, operate=self.value.operate, - resource_path= - f"/WORKSPACE/{kwargs.get('workspace_id')}:ROLE/{RoleConstants.WORKSPACE_MANAGE.value.__str__()}") - - def __eq__(self, other): - if isinstance(other, PermissionConstants): - return other == self - else: - return self.value == other - - -def get_default_permission_list_by_role(role: RoleConstants): - """ - 根据角色 获取角色对应的权限 - :param role: 角色 - :return: 权限 - """ - return [permission for permission in PermissionConstants if role in permission.value.role_list] - - -class RolePermissionMapping: - def __init__(self, role_id, permission_id): - self.role_id = role_id - self.permission_id = permission_id - - -class WorkspaceUserRoleMapping: - def __init__(self, workspace_id, role_id, user_id): - self.workspace_id = workspace_id - self.role_id = role_id - self.user_id = user_id - - -def get_default_role_permission_mapping_list(): - return [ - RolePermissionMapping(role.value.name, str(permission.value)) - for permission in PermissionConstants - for role in permission.value.role_list - ] - - -def get_default_workspace_user_role_mapping_list(user_role_list: list): - return [WorkspaceUserRoleMapping('default', role.value.name, 'default') for role in RoleConstants if - user_role_list.__contains__(role.value.name)] - - -def get_permission_list_by_resource_group(resource_group: ResourcePermissionGroup): - """ - 根据资源组获取权限 - """ - return [permission.value for permission in PermissionConstants - if resource_group in permission.value.resource_permission_group_list] - - -class ChatAuth: - def __init__(self, - current_role_list: List[RoleConstants | Role], - permission_list: List[PermissionConstants | Permission], - chat_user_id, - chat_user_type, - application_id): - # 权限列表 - self.permission_list = permission_list - # 角色列表 - self.role_list = current_role_list - self.chat_user_id = chat_user_id - self.chat_user_type = chat_user_type - self.application_id = application_id - - -class Auth: - """ - 用于存储当前用户的角色和权限 - """ - - def __init__(self, - current_role_list: List[RoleConstants | Role], - permission_list: List[PermissionConstants | Permission], - **keywords): - # 权限列表 - self.permission_list = permission_list - # 角色列表 - self.role_list = current_role_list - self.keywords = keywords - - -class CompareConstants(Enum): - # 或者 - OR = "OR" - # 并且 - AND = "AND" - - -class ViewPermission: - def __init__(self, roleList: List[RoleConstants], permissionList: List[PermissionConstants | object], - compare=CompareConstants.OR): - self.roleList = roleList - self.permissionList = permissionList - self.compare = compare diff --git a/apps/portal/views/portal.py b/apps/portal/views/portal.py index a83e11420bb..97a5288e680 100644 --- a/apps/portal/views/portal.py +++ b/apps/portal/views/portal.py @@ -15,8 +15,9 @@ from common import result from common.auth import TokenAuth from common.auth.authentication import has_permissions +from common.auth.constants.permission_constants import PermissionConstants +from common.auth.constants.role_constants import RoleConstants from common.constants.cache_version import Cache_Version -from common.constants.permission_constants import PermissionConstants, RoleConstants from common.log.log import log from common.utils.common import query_params_to_single_dict from django.core.cache import cache diff --git a/apps/users/serializers/user.py b/apps/users/serializers/user.py index fe722870ecc..51438a955df 100644 --- a/apps/users/serializers/user.py +++ b/apps/users/serializers/user.py @@ -19,7 +19,6 @@ from common.auth.constants.role_constants import RoleConstants from common.auth.struct.auth import Auth -from common.constants.permission_constants import ResourcePermission from common.constants.resource_permission_constants import ResourceAuthType from common.database_model_manage.database_model_manage import DatabaseModelManage