@@ -115,6 +115,14 @@ def get_workspace_resource_permission_list_by_workspace_user_permission(
115115 @param workspace_user_role_mapping_dict: 工作空间用户角色关联字典 key为role_id
116116 @return: 工作空间用户资源的权限列表
117117 """
118+ # 判断用户在当前工作空间是否为内置USER
119+ workspace_role_ids = [
120+ wur .role_id
121+ for wur in
122+ workspace_user_role_mapping_dict .get (workspace_user_resource_permission .workspace_id ,[])
123+ ]
124+ is_builtin_user = RoleConstants .USER .value .__str__ () in workspace_role_ids
125+
118126 role_permission_mapping_list = [role_permission_mapping_dict .get (workspace_user_role_mapping .role_id , []) for
119127 workspace_user_role_mapping in
120128 workspace_user_role_mapping_dict .get (
@@ -124,12 +132,15 @@ def get_workspace_resource_permission_list_by_workspace_user_permission(
124132 if (workspace_user_resource_permission .auth_type == ResourceAuthType .ROLE
125133 and workspace_user_resource_permission .permission_list .__contains__ (
126134 ResourcePermissionRole .ROLE )):
127- return [
135+ per_op_permissions = [
128136 f"{ role_permission_mapping .permission_id } :/WORKSPACE/{ workspace_user_resource_permission .workspace_id } /{ workspace_user_resource_permission .auth_target_type } /{ workspace_user_resource_permission .target } "
129137 for role_permission_mapping in role_permission_mapping_list if (permission_constants_dict .get (role_permission_mapping .permission_id ).value .parent_group or []).__contains__ (
130- WorkspaceGroup (workspace_user_resource_permission .auth_target_type ))] + [
131- f"{ workspace_user_resource_permission .auth_target_type } :/WORKSPACE/{ workspace_user_resource_permission .workspace_id } /{ workspace_user_resource_permission .auth_target_type } /{ workspace_user_resource_permission .target } " ]
132-
138+ WorkspaceGroup (workspace_user_resource_permission .auth_target_type ))]
139+ if is_builtin_user :
140+ per_op_permissions .append (
141+ f"{ workspace_user_resource_permission .auth_target_type } :/WORKSPACE/{ workspace_user_resource_permission .workspace_id } /{ workspace_user_resource_permission .auth_target_type } /{ workspace_user_resource_permission .target } "
142+ )
143+ return per_op_permissions
133144 elif workspace_user_resource_permission .auth_type == ResourceAuthType .RESOURCE_PERMISSION_GROUP :
134145 resource_permission_list = [
135146 [
0 commit comments