【问题标题】:Adobe CQ5: SSO without LDAP?Adobe CQ5:没有 LDAP 的 SSO?
【发布时间】:2012-03-16 23:01:06
【问题描述】:

我们的一位客户刚刚购买了 CQ5,并希望将其所有安全性都外部化。我们想为 SSO 使用 STS 服务器,然后利用自定义授权/属性提供程序而不是 CQ5 存储库。最终,我们不想以任何方式使用 LDAP。

这是我们的设想(有些部分已经在工作):

  1. 用户浏览到在 Apache 中运行的 CQ5 Dispatcher
  2. Apache 过滤器将用户重定向到已完成登录的 STS 站点。
  3. 使用 SAML 声明将用户重定向回 Apache。
  4. 用户 ID 令牌作为 cookie 放入浏览器。 (一切正常)
  5. CQ5 根据 SSO 配置捕获该 cookie(工作)
  6. 问题从这里开始:从这里开始,我们要为用户的属性、角色、组等调用自定义授权提供程序...

我们试图弄清楚如何做到这一点,但似乎找不到丢失的链接。

我们需要创建自定义登录模块吗?我们是否需要创建自定义主体提供者?我们是否以某种方式使用了 CQ5 中现有的 LDAP 功能,但让它调用了一个利用外部身份验证源的自定义类?

如果这里有人知道如何做到这一点,如果他们可以分享,他们的业力商将在一年中满载。我不确定这是否是您使用 JAAS 所做的基本操作,甚至不确定在我创建类之后将它们放在哪里。

到目前为止,我们在这方面付出了很大的努力,似乎已经接近了,但我们总是遇到死胡同。

如果您知道从哪里开始,非常感谢!

-乔

【问题讨论】:

    标签: single-sign-on jaas aem


    【解决方案1】:

    AEM 的最新版本现在包括 SAMLAuthenticationHandler,它允许您:

    • 将用户重定向到 SSO 以模拟 IDP 发起的登录,或
    • 允许 AEM 使用 IDP 执行 SP 发起的登录
    • 指定要从 SAML 断言中获取并添加到用户配置文件节点的属性(不确定是否可以将其用于组)
    • 指定应将用户添加到哪些组
    • 设置一个名为 request-path 的 cookie,它将存储用户到达的 URL,然后在他们通过身份验证时将其重定向到该位置(即深度链接)

    这使得依赖 SAMLAuthenticationHandler 比使用 Apache 重定向更好。与 AEM 6.2 捆绑在一起的当前版本的处理程序在使用重定向方法时未正确设置 cookie,但 Adob​​e 确实有他们可以提供的更新版本来解决该问题。

    我通常建议客户端不要在 AEM 中开发自己的身份验证处理程序。

    当不使用 LDAP 时,这确实会造成用户在登录之前不存在的问题。此外,当您的架构包含多个负载平衡发布者时,用户可能存在于一台服务器上@ 987654322@.

    【讨论】:

      【解决方案2】:

      【讨论】:

      • 感谢您的指导...我已经让 SSO 工作了,但是我能找到的所有文档都将 LDAP 连接为用户属性/身份验证源。如果您想要一个不使用 LDAP 的完全外部解决方案,那么根本很难找到任何示例。我加入了 Google 上的群组...再次感谢。
      【解决方案3】:

      看来你必须实现一个自定义的 LoginModule,更多信息在这里:http://dev.day.com/docs/en/crx/current/deploying/custom-login-modules.html

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-12-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-06-01
        相关资源
        最近更新 更多