MCPcopy
hub / github.com/1Panel-dev/MaxKB / _create_resource_permission_instances

Function _create_resource_permission_instances

apps/users/serializers/user.py:865–952  ·  view source on GitHub ↗

创建资源权限实例列表

(workspace_id, resource_maps, user_id, permission, auth_type)

Source from the content-addressed store, hash-verified

863
864
865def _create_resource_permission_instances(workspace_id, resource_maps, user_id, permission, auth_type):
866 """
867 创建资源权限实例列表
868 """
869 instances = []
870 if permission == ResourcePermission.MANAGE:
871 permission = [ResourcePermission.VIEW, ResourcePermission.MANAGE]
872 else:
873 permission = [permission]
874
875 # 应用权限
876 for rid in resource_maps['apps'].get(workspace_id, []):
877 instances.append(WorkspaceUserResourcePermission(
878 target=rid,
879 auth_target_type=AuthTargetType.APPLICATION.value,
880 permission_list=permission,
881 workspace_id=workspace_id,
882 user_id=user_id,
883 auth_type=auth_type
884 ))
885
886 # 应用文件夹权限
887 for fid in resource_maps['app_folders'].get(workspace_id, []):
888 instances.append(WorkspaceUserResourcePermission(
889 target=fid,
890 auth_target_type=AuthTargetType.APPLICATION.value,
891 permission_list=permission,
892 workspace_id=workspace_id,
893 user_id=user_id,
894 auth_type=auth_type
895 ))
896
897 # 知识库权限
898 for kid in resource_maps['knowledge'].get(workspace_id, []):
899 instances.append(WorkspaceUserResourcePermission(
900 target=kid,
901 auth_target_type=AuthTargetType.KNOWLEDGE.value,
902 permission_list=permission,
903 workspace_id=workspace_id,
904 user_id=user_id,
905 auth_type=auth_type
906 ))
907
908 # 知识库文件夹权限
909 for kf in resource_maps['knowledge_folders'].get(workspace_id, []):
910 instances.append(WorkspaceUserResourcePermission(
911 target=kf,
912 auth_target_type=AuthTargetType.KNOWLEDGE.value,
913 permission_list=permission,
914 workspace_id=workspace_id,
915 user_id=user_id,
916 auth_type=auth_type
917 ))
918
919 # 工具权限
920 for tid in resource_maps['tools'].get(workspace_id, []):
921 instances.append(WorkspaceUserResourcePermission(
922 target=tid,

Callers 1

Calls 3

getMethod · 0.45
appendMethod · 0.45

Tested by

no test coverage detected