【问题标题】:How can we configure Artifactory to auto-assign OAuth users to LDAP groups?我们如何配置 Artifactory 以自动将 OAuth 用户分配给 LDAP 组?
【发布时间】:2021-11-05 21:34:32
【问题描述】:

我已将 Artifactory 设置为允许通过 Keycloak 中的 OIDC 客户端进行 SSO。 Keycloak 在后台与 Active Directory 对话。我还在 Artifactory 中配置了相同的 Active Directory。我还配置了 Keycloak 以在 userinfo 结构中提供用户组。

我想要做的是让 OAuth 用户自动添加到 Artifactory 中导入的 LDAP 组中。我不介意这是通过 userinfo 结构或当用户登录时通过单独的 LDAP 查找。但是我似乎无法弄清楚如何实现这一点。

我知道 Artifactory 提供了一个名为 synchronizeLdapGroups.groovy 的插件,它似乎在宣传做我需要的事情,但该插件似乎并没有真正生效。也就是说,用户最终不会获得属于 LDAP 组所提供的权限。

我尝试自己编写一个插件来做我需要的事情,但是当我调用 API 将组添加到用户时,插件崩溃了。目前还不清楚为什么。

似乎其他人已将 Artifactory 中的 SCIM 功能用于类似的事情(尽管主要通过 SAML 而不是 OIDC),但是 Keycloak 不支持开箱即用的 SCIM,而我尝试使用的 SCIM 插件有同样没有给我任何结果。

有没有人做过类似的事情,并且有我可以遵循的可行解决方案?

【问题讨论】:

    标签: oauth-2.0 keycloak openid-connect artifactory jfrog


    【解决方案1】:

    如果是您希望所有用户都加入的特定组,您可以尝试:

    • 在安全性 - OAuth SSO 设置选项卡下 - 选中“自动创建用户”
    • 在身份和访问权限 - 组下 - 选择特定组并选中“自动将新用户加入组”

    我猜你想在 Keycloak 和 Artifactory 之间自动同步用户组关联。 SCIM 是您正在寻找的东西,但是 Keycloak SCIM 插件存在一个已知问题。 我们正在研究 Keycloak 的 SCIM 插件(无法在特定的时间线提交修复,但应该在本季度的某个时间)。

    如果您只需要 UI 中的关联,您可以尝试设置“自动关联组”的 SAML。它不会为 APIKey/Token 调用应用组关联,但它适用于 UI。


    编辑: 经过进一步调查 github.com/Captain-P-Goldfish/scim-for-keycloak 在这里不相关 - 它使 keycloak 成为 SCIM 客户端,而不是 SCIM 服务器。 keycloak 中没有对 SCIM 的官方支持,请参阅 issues.redhat.com/browse/KEYCLOAK-2537。并且没有用于 keycloak 的工作插件,使其成为我可以找到的 SCIM 服务器(尝试了一些,都坏了)。目前 Artifactory 无法通过 Keycloak 支持 SCIM

    【讨论】:

    • “我猜你想在 Keycloak 和 Artifactory 之间自动同步用户组关联。”这是正确的。
    • 您是否有链接或其他内容来解释您提到的 SCIM/Keycloak 的具体问题?
    • 有一个内部票证 JA-2488(没有公开票证)。我们正在调查这个:github.com/Captain-P-Goldfish/scim-for-keycloak
    • 已知错误的本质是什么?
    • 我知道没有官方文档。我会建议创建一个。无论如何,要点是 - 在 keycloak 中创建一个 saml 客户端,选中“签名断言”,取消选中“需要客户端签名”,取消选中“强制 POST 绑定”,取消选中“前通道注销”,将“有效重定向 Uri”设置为 / *,在细粒度 SAML 端点配置下,为两个注销 url 设置 /ui/login。在 Artifactory 中,将登录和注销设置为 /auth/realms/keyCloak/protocol/saml 和 SAML 证书 - 从 keycloak 领域设置 > 密钥 > 公钥 > 证书 > RS256 (Use=SIG) 获取
    猜你喜欢
    • 1970-01-01
    • 2022-01-23
    • 2011-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-13
    相关资源
    最近更新 更多