简介
SAML (Security Assertion Markup Language) 译为安全断言标记语言,是一种 xXML 格式的语言,使用XML 格式交互,来完成 SSO 的功能。
SAML 存在 1.1 和 2.0 两个版本,这两个版本不兼容,不过在逻辑概念或者对象结构上大致相当,只是在一些细节上有所差异。
认证过程
SAML 的认证涉及到三个角色,分别为服务提供者 (SP)、认证服务 (IDP)、用户 (Client)。一个比较典型认证过程如下:
1. Client 访问受保护的资源
2. SP 生成认证请求 SAML 返回给 Client
3. Client 提交请求到 IDP
4. IDP 返回认证请求
5. Client 登陆 IDP
6. 认证成功后,IDP 服务器托管网生成私钥签名标识了权限的 SAML,返回给 Client
7. Client 提交 SAML 给 SP
8.读取 SAML,确定请求合法,返回资源
安全问题
• 源于 ssl 模式下的认证可选性,服务器托管网可以删除签名方式标签绕过认证
• 如果 SAML 中缺少了 expiration,并且断言 ID 不是唯一的,那么就可能被重放影响
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.fwqtg.net
相关推荐: 蜘点云原生之 KubeSphere 落地实践过程
【直播预告】上云 vs 下云:降本增笑?割韭菜? 作者:池晓东,蜘点商业网络服务有限公司技术总监,从事软件开发设计 10 多年,喜欢研究各类新技术,分享技术。 来源:本文由 11 月 25 日广州站 meetup 中讲师池晓东整理,整理于该活动中池老师所分享的…