不幸的是,我遇到了Eclipse Che(6.1.1)在Docker上运行的多用户的一些问题。
我在这里阅读https://www.eclipse.org/che/docs/6/che/docs/permissions.html的文档
假设我有两个用户,一个管理员和一个普通用户。
问题1)
我可以通过http://hostname:8081/api/user/1daa1ba9-ad7a-4d31-8e0c-df6f22d6b15f获取一般用户信息
此外,我可以通过http://hostname:8081/api/permissions显示所有权限
[
{
"id": "system",
"allowedActions": [
"manageSystem",
"setPermissions"
]
},
{
"id": "workspace",
"allowedActions": [
"read",
"use",
"run",
"configure",
"setPermissions",
"delete"
]
},
{
"id": "stack",
"allowedActions": [
"search",
"read",
"update",
"setPermissions",
"delete"
]
},
{
"id": "organization",
"allowedActions": [
"manageSuborganizations",
"update",
"setPermissions",
"delete",
"manageResources",
"createWorkspaces",
"manageWorkspaces"
]
}
]
现在,当我想获取系统域http://hostname:8081/api/permissions/system的权限时,我得到了
{
"message": "System permissions for user '1daa1ba9-ad7a-4d31-8e0c-df6f22d6b15f' not found"
}
对于http:// {{host}}:{{port}} / api / permissions / system / all我得到的
{
"message": "User is not authorized to perform this operation"
}
两者都与默认创建的管理员帐户一起使用。
问题2)
我还没有找到一种方法来显示其他用户的权限?例如。显示管理员帐户的常规用户权限。这可能吗并且可能在文档中缺失?
感谢和亲切的问候,多米尼克
问题1.我认为id为1daa1ba9-ad7a-4d31-8e0c-df6f22d6b15f
的用户不是admin。因此,当您为当前用户请求系统权限时,这就是您获取具有指定消息的404响应代码的原因。这意味着当前用户没有任何系统权限。
第二个请求http://{{host}}:{{port}}/api/permissions/system/all
应该发送所有具有系统权限的用户,即所有管理员。 API允许获取指定域的所有用户的权限,仅当用户在那里拥有任何权限时才能获得实例。因此,只有管理员(无论他们有哪些操作)都能够查看管理员列表。
问题2.只有一种方法可以获得所有用户对指定域https://www.eclipse.org/che/docs/6/che/docs/permissions.html的特定实例的权限。
像http://{{host}}:{{port}}/api/permissions/system/all
将返回所有管理员权限,或者http://{{host}}:{{port}}/api/permissions/workspace/all?instance={{workspaceId}}
将返回所有用户对指定工作区的权限。
如果有遗漏或不清楚,请告诉我。
附:我将为Che docs创建一个问题,以便更清楚地了解请求Permissions API方法所需的权限。