我已经努力在 concourse ci 中建立一个新团队,并且可以作为 Bitbucket 用户登录。
fly set-team -n main \
--basic-auth-username myuser \
--basic-auth-password xxxx \
--generic-oauth-display-name bitbucket \
--generic-oauth-client-id xxxx \
--generic-oauth-client-secret xxxx \
--generic-oauth-auth-url https://bitbucket.org/site/oauth2/authorize \
--generic-oauth-token-url https://bitbucket.org/site/oauth2/access_token
设置成功的关键是,bitbucket 中 OAuth 消费者的回调 url 只需要 concourse ci 网站(/auth/oauth/callback
回调 url 中没有)
现在我发现了一个问题。任何用户(甚至是 bitbucket 云中新注册的免费用户)都可以登录我的 concourse ci 服务器。
经过一番研究,我得到了这个
通用 oAuth
--generic-oauth-* 标志配置一个通用 oAuth 提供程序,默认情况下不会对单个用户登录执行额外的验证。它只能以这种方式与内部身份验证系统一起使用。例如,如果它用于配置 Google 或 Twitter oAuth,它将允许互联网上的几乎每个人创建管道。这将是非常慷慨的。如果您需要验证,请确保您使用的是 --generic-oauth-scope 标志。
那么有什么方法可以阻止未经授权的 bitbucket 云用户登录,这应该仅限于我的组织?与 github 的选项相同--github-auth-organization=ORG
我尝试添加 --generic-oauth-scope concourse.main
但总是得到错误:
failed to verify token
我还阅读了 Bitbucket Cloud - Scopes 上的 OAuth并尝试使用大多数范围,例如
--generic-oauth-scope account
仍然得到同样的错误。
我应该在范围内放什么?