现代身份:SAML、OIDC 与混合方案
探索组织如何通过 SAML 联合和 OpenID Connect 超越 Kerberos,实现身份系统现代化。
现代身份:SAML、OIDC 与混合方案 是 CoddyKit 上的免费 Cryptology Academy 课时。 这是第 4 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Cryptology Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Cryptology Academy 课程共包含 4 节课。
面向企业 SSO 的 SAML 2.0
安全断言标记语言 2.0(SAML)是面向企业环境的基于 XML 的单点登录(SSO)开放标准。SAML 于 2005 年标准化,允许身份提供商(IdP)向服务提供商(SPs)颁发经过数字签名的 XML 断言,使用户只需进行一次身份验证即可访问多个服务,而无需重复输入凭据。
SAML 身份提供商与服务提供商
在 SAML 中,身份提供商(IdP)负责对用户进行身份验证并颁发断言。示例包括 Okta、Microsoft Entra ID 和 PingFederate。服务提供商(SP)是依赖 IdP 断言的应用程序。示例包括 Salesforce、Workday 和 ServiceNow。SP 信任 IdP 的签名并据此授予访问权限。
SAML 断言安全性
SAML 断言必须由 IdP 使用 RSA 或 EC 密钥对进行数字签名,使 SP 能够验证其真实性。断言还可以在传输过程中加密,以确保机密性。SP 必须验证签名,检查断言的 NotBefore 和 NotOnOrAfter 时间戳,并验证受众限制,以防止重放攻击。
OIDC 作为现代 SAML 替代方案
OpenID Connect(OIDC)是构建于 OAuth 2.0 之上的现代身份层,作用与 SAML 的 SSO 相同,但使用 JSON 和 JWT,而不是 XML。OIDC 于 2014 年发布,更适合移动应用、单页应用和 REST API,而 SAML 在传统企业 Web 应用中仍占主导地位。
OIDC 下的 OAuth 2.0
OIDC 通过在 OAuth 2.0 授权流程中添加 ID 令牌(包含身份声明的 JWT)来扩展 OAuth 2.0。OAuth 2.0 负责授权(向 API 委派访问权限),而 OIDC 增加了身份验证(验证用户身份)。OIDC 要求使用 openid 作用域,并在返回 OAuth 访问令牌的同时返回 ID 令牌。
Entra ID 作为混合身份提供商
Microsoft Entra ID(原 Azure Active Directory)是云原生身份提供商,同时支持用于联合 SSO 的 SAML 和 OIDC/OAuth 2.0。它可以通过 Entra Connect 与本地 Active Directory 同步,实现混合身份管理,使云端和本地资源共享同一个身份目录。
AD FS 作为本地联合桥接服务
Active Directory Federation Services(AD FS)是 Microsoft 的本地联合服务器,为本地 Active Directory 发布 SAML 和 WS-Federation 终结点。AD FS 将基于旧式 SAML 的应用程序与 Active Directory 凭据连接起来;在混合部署中,它还与 Entra ID 联合,从而将 SSO 扩展到云应用程序。
用于用户配置的 SCIM
跨域身份管理系统(SCIM)是一种 REST API 标准,用于自动化身份系统和应用程序之间的用户配置与取消配置。当新员工被添加到 Entra ID 或 Okta 时,SCIM 会自动在连接的 SaaS 应用程序中创建对应账户,并在员工离职时删除这些账户。
条件访问与 MFA 集成
现代身份提供商会实施条件访问策略,在授予访问权限之前评估风险信号(设备合规性、位置和用户行为)。这些策略可以要求用户针对敏感资源进行增强型多因素身份验证。条件访问与 OIDC 或 SAML SSO 结合后,可以提供自适应安全性,同时避免重复身份验证带来的不便。
超越 Kerberos 边界的零信任
零信任架构认为网络位置与访问决策无关:用户或设备位于企业网络内部并不会因此获得任何隐式信任。零信任不采用基于 Kerberos 边界的身份验证,而是通过 OIDC 或 SAML,在每次请求访问资源时实施持续的身份验证、设备运行状况检查和最小权限访问策略。
如何选择 SAML 与 OIDC
对于 2014 年之前构建且已经支持 SAML 的旧式企业应用程序,请使用 SAML。对于新应用程序、移动应用、SPA 和 API,请使用 OIDC。主要 IdP 都支持这两种协议,因此选择通常取决于应用程序现有的支持情况,而不是安全性差异。对于所有新的开发项目,首选 OIDC。
SAML 与 OIDC 检查
以下哪项正确描述了 SAML 与 OIDC 之间的一项关键差异?
课程回顾:SAML、OIDC 与混合身份
SAML 2.0 为传统企业应用提供基于 XML 的 SSO。OIDC 使用 JWT 令牌将身份功能添加到 OAuth 2.0,并且更适合现代应用。Entra ID 作为混合云 IdP 同时支持这两者。AD FS 将本地 AD 与基于 SAML 的应用连接起来。SCIM 自动执行用户配置。零信任以持续、基于策略的身份验证取代基于边界的 Kerberos。
常见问题解答
「现代身份:SAML、OIDC 与混合方案」课时是免费的吗?
是的 — 「现代身份:SAML、OIDC 与混合方案」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Cryptology Academy 课程的其余内容,请升级到 CoddyKit PRO。 Cryptology Academy 课程共包含 4 节课。
「现代身份:SAML、OIDC 与混合方案」这节课中我会学到什么?
探索组织如何通过 SAML 联合和 OpenID Connect 超越 Kerberos,实现身份系统现代化。 你通过在浏览器中直接运行的动手代码来练习 Cryptology Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Cryptology Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Cryptology Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 4 节课,共 4 节。
「现代身份:SAML、OIDC 与混合方案」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Cryptology Academy 课中编写并运行代码吗?
能。每节 Cryptology Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- Kerberos 架构与票据流程
- Active Directory 与 Kerberos 集成
- Kerberos 攻击技术:Kerberoasting 与黄金票据
- 现代身份:SAML、OIDC 与混合方案