docker - 使用带有 docker login 的 Jfrog 访问令牌
问题描述
我想运行类似的东西:
$ TOKEN=$(curl -u <my-name:my-password> -X POST <my-jfrog-artifactory-url>/api/security/token -d "username=my-name" -d"scope=member-of-groups:<???>")
$ docker login <my-jfrog-registry>
Username=my-name
Password=$TOKEN
在生成具有完全管理员权限的令牌时(使用上面的 curl 或通过 UI),这是可行的。我想知道我需要为用户提供哪些最低权限才能让他使用此令牌进行登录,但找不到任何有关此的文档。我应该在scope=member-of-groups:<???>
上面传递什么?创建一个具有什么权限的组?
谢谢!
解决方案
这取决于您要完成的工作。如果您希望最终用户能够拉取图像但不能推送,则需要将他分配到对 Docker 存储库具有读取访问权限的组。如果 Docker 存储库是远程存储库,则还需要该组具有 DEPLOY/CACHE 权限,如果您希望他们能够拉取尚未在本地缓存的图像。
如果您希望用户能够将图像推送到本地 Docker 存储库,则该组将需要该组的 DEPLOY/CACHE 权限。如果您希望能够删除/覆盖图像,则需要 DELETE 权限。
您可以在 wiki的 Permissions 页面上查看完整的权限列表以及它们的作用。
在任何情况下,我们的想法是您将为这个令牌分配特定组对一组资源的相同权限。
推荐阅读
- linux - 如何使用 C++ 代码中的 setsockopt() 调用更改 TCP 拥塞控制算法
- angular - 我正在研究购物车,我如何在用户使用 jwt 注销后记住他的购物车状态
- c++ - 在不同循环内多次声明变量的优点
- symfony - Symfony 4 - UniqueEntity :我希望几家公司可以为一项服务使用相同的名称,但一家公司不能有两个具有相同名称的服务
- objective-c - NSTableView hideRowsAtIndexes 在 Sierra 上不起作用
- vue.js - 如何在 vue-table-2 中获取当前页码?我正在使用服务器端表
- windows - Windows xcopy 不会将文件复制回目录
- java - 在 Oracle 和 H2 的 @Formula 中使用 CURRENT_DATE()
- kubernetes - 安装 kubernetes 的 kubectl kubeadm 时找不到包 kubectl
- java - AQL-在 Arangodb 中可能的预期连接以及如何连接?