Eclipse Che - 设置API权限的问题

时间:2018-03-03 00:20:26

标签: permissions eclipse-che

不幸的是,我遇到了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 个答案:

答案 0 :(得分:0)

问题1。我认为身份1daa1ba9-ad7a-4d31-8e0c-df6f22d6b15f的用户不是管理员。因此,当您为当前用户请求系统权限时,这就是您获取具有指定消息的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}}将所有用户的权限返回给指定的工作区。

让我知道是否有遗漏或不清楚。

P.S。我将为Che文档创建一个问题,以便更清楚地了解请求权限API方法所需的权限。