【问题标题】:SAML + web service client + client certificateSAML + Web 服务客户端 + 客户端证书
【发布时间】:2020-10-23 02:59:19
【问题描述】:

我需要有关 SAML 和 WS-Security 架构(或可能完全不同的标准?)的帮助。

我有以下独立于平台的场景,我需要使用客户端认证身份验证来保护这些场景。场景非交互式,仅涉及 Web 服务客户端 (1)。

(1) WS 客户端 -> (2) WS 上的服务提供者 (SP) -> (3) 身份提供者 (IdP)

  • (1) 机器上有客户端证书并调用 (2)
  • (2) 具有 (1) 需要使用的服务
  • (3) 能够使用客户端证书对 (1) 客户端进行身份验证

我的问题是如何使用 SAML、WS-Trust 或其他安全标准来涵盖此场景。

谢谢

【问题讨论】:

    标签: architecture saml ws-security application-design ws-trust


    【解决方案1】:

    几乎可以使用任何“联合”协议 - OIDC、SAML、WS-Fed、WS-Trust……任你选择。

    1. 浏览器导航到 SP。
    2. SP 说“我不认识你”,并通过适用于上述所选协议的身份验证请求将您重定向到 IdP
    3. IdP 说“我不认识你,验证!”
    4. 浏览器提供认证证书
    5. IdP 验证证书,并构建适合所选协议的“断言”。
    6. IdP 将您重定向回带有断言的 SP
    7. SP 验证断言并让浏览器进入

    在列出的协议中...只有 WS-Trust 的工作方式略有不同...在 WS-Trust 中,根据 SP 和 IdP 的实际身份,SP 可以要求浏览器提供一个证书,SP 可以在 STS 调用中要求 IdP 进行身份验证。这仅在 IdP 和 SP 都配置为信任相同的特定 CA 时才有效。这将导致不会从 SP 退回到 IdP 并返回。

    【讨论】:

    • 您好,感谢您的回答。当会有浏览器和交互性时,你的答案对我来说非常清楚。但我的场景只涉及 Web 服务客户端 - 一个在我的 SP 上调用 Web 服务的应用程序。因此,没有典型的浏览器 SAML 弹跳是可能的。你能帮忙吗?
    • 那么您需要 WS-Trust。但是您需要信任并能够接受和验证用户的证书。此外,您的 WS-TRUST 合作伙伴将喜欢支持证书令牌处理器,该处理器可以处理通过 RST 传递的证书。
    猜你喜欢
    • 1970-01-01
    • 2014-02-23
    • 1970-01-01
    • 2014-08-17
    • 2015-04-18
    • 1970-01-01
    • 2014-09-04
    • 2014-09-05
    • 2014-09-06
    相关资源
    最近更新 更多