错误描述
LDAP 导入的用户(来自 Aactive Directory),无法看到堆栈、服务、容器、卷或网络。 唯一有效的部分是图像。 用户可以使用管理访问选项直接访问端点。 直接或通过导入的 LDAP 组授予用户访问权限都不起作用。
预期行为
导入的 LDAP 用户应该能够访问属于管理员授予他们访问权限的端点的所有资源。
重现问题的步骤:
重现行为的步骤:
技术细节:
docker run -p 9000:9000 portainer/portainer
) 的命令: docker stack deploy --compose-file=portainer-agent-stack.yml portainer (部署说明中的默认 composer 文件)你好呀,
如果您以管理员身份登录,并查看每个页面(堆栈、服务、容器、卷、网络、配置、机密),请查看“所有权”列。 如果上面写着“管理员”,那么标准用户将无法看到该资源。
您可以将您的 LDAP 用户提升为管理员(在 Portainer 中单击他们的用户帐户并将其标记为管理员),或将访问控制更改为“公共”,以便所有用户都可以查看资源。
这不是错误,它实际上是 Portainer 应用程序的正常行为。
所有在 Portainer 外部创建的资源都将仅限于管理员用户,这也是在 Portainer 内部创建资源时的默认策略。
使用 LDAP/OAuth 身份验证时,新创建的用户将在创建时被分配常规用户角色,因此将无法访问任何仅限于管理员的现有资源。
正如 Neil 所说,您需要为这些用户中的每一个分配管理员角色。
我们有一个进化请求,允许用户更改应用程序中可用的默认所有权:
https://github.com/portiner/portiner/issues/685
您还可以从我们的下一个扩展中期待一种更强大的方法,该扩展将引入基于角色的高级访问控制管理。
谢谢各位! 起初我有点困惑,但这解释了一切。
最有用的评论
这不是错误,它实际上是 Portainer 应用程序的正常行为。
所有在 Portainer 外部创建的资源都将仅限于管理员用户,这也是在 Portainer 内部创建资源时的默认策略。
使用 LDAP/OAuth 身份验证时,新创建的用户将在创建时被分配常规用户角色,因此将无法访问任何仅限于管理员的现有资源。
正如 Neil 所说,您需要为这些用户中的每一个分配管理员角色。
我们有一个进化请求,允许用户更改应用程序中可用的默认所有权:
https://github.com/portiner/portiner/issues/685
您还可以从我们的下一个扩展中期待一种更强大的方法,该扩展将引入基于角色的高级访问控制管理。