SAML 2.0

✍ dations ◷ 2025-02-24 11:19:12 #计算机访问控制,联邦身份,身份管理,基于XML的标准,身份管理系统,元数据标准

安全断言标记语言 2.0 (SAML 2.0) 作为 SAML 的最新标准, 用来在安全域中交换身份验证(Authentication)数据和 授权(Authorization)数据。SAML 2.0基于XML协议,使用包含断言(Assertions)的安全令牌在SAML授权方(即身份提供者(英语:Identity_provider),Identity_provider,缩写为IdP)和SAML消费方(即服务提供者,Service Provider,缩写为SP)之间传递委托人(通常是一个终端用户)的信息。SAML 2.0 可以实现基于网络跨域的单点登录(SSO), 以便于减少向一个用户分发多个身份验证令牌的管理开销。

SAML 2.0在2005年三月正式代替SAML 1.1(英语:SAML 1.1)成为OASIS标准。SAML 2.0的关键特征在官方文档SAMLCore, SAMLBind,SAMLProf和SAMLMeta中有详细地记载。

来自超过24个公司及团体的大约30人参与了SAML 2.0的创建。尤其是,自由联盟(英语:Liberty Alliance)将身份联合框架规范(ID-FF)贡献给OASIS,后者成为了SAML 2.0规范的基础。 因此,SAML 2.0实际上是SAML 1.1(英语:SAML 1.1), Liberty ID-FF 1.2 页面存档备份,存于互联网档案馆和Shibboleth 1.3(英语:Shibboleth (Shibboleth Consortium))三种协议的融合。

断言是一个包含了由SAML授权方提供的0到多个声明(statement)的信息包。SAML断言通常围绕一个主题生成。该主题使用<Subject>声明。SAML 2.0规范定义了三种断言声明并且每一种都和一个主题相关。详细信息如下:

一种非常重要的SAML断言类型叫做“Bearer Assertion”。它主要是用来实现Web浏览器的单点登录。下面是一个短期Bearer断言的例子。一个IdP(https://idp.example.org/SAML2)发布了一个短期Bearer断言到一个SP(https://sp.example.com/SAML2)。该断言包括一个身份验证断言<saml:AuthnStatement>和一个属性断言<saml:AttributeStatement>。SP将使用该属性断言实现访问控制。前缀saml:代表SAML 2.0断言的命名空间。

<saml:Assertion   xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"   xmlns:xs="http://www.w3.org/2001/XMLSchema"   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   ID="b07b804c-7c29-ea16-7300-4f3d6f7928ac"   Version="2.0"   IssueInstant="2004-12-05T09:22:05Z">   <saml:Issuer>https://idp.example.org/SAML2</saml:Issuer>   <ds:Signature     xmlns:ds="http://www.w3.org/2000/09/xmldsig#">...</ds:Signature>   <saml:Subject>     <saml:NameID       Format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient">       3f7b3dcf-1674-4ecd-92c8-1544f346baf8     </saml:NameID>     <saml:SubjectConfirmation       Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">       <saml:SubjectConfirmationData         InResponseTo="aaf23196-1773-2113-474a-fe114412ab72"         Recipient="https://sp.example.com/SAML2/SSO/POST"         NotOnOrAfter="2004-12-05T09:27:05Z"/>     </saml:SubjectConfirmation>   </saml:Subject>   <saml:Conditions     NotBefore="2004-12-05T09:17:05Z"     NotOnOrAfter="2004-12-05T09:27:05Z">     <saml:AudienceRestriction>       <saml:Audience>https://sp.example.com/SAML2</saml:Audience>     </saml:AudienceRestriction>   </saml:Conditions>   <saml:AuthnStatement     AuthnInstant="2004-12-05T09:22:00Z"     SessionIndex="b07b804c-7c29-ea16-7300-4f3d6f7928ac">     <saml:AuthnContext>       <saml:AuthnContextClassRef>         urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport       </saml:AuthnContextClassRef>     </saml:AuthnContext>   </saml:AuthnStatement>   <saml:AttributeStatement>     <saml:Attribute       xmlns:x500="urn:oasis:names:tc:SAML:2.0:profiles:attribute:X500"       x500:Encoding="LDAP"       NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri"       Name="urn:oid:1.3.6.1.4.1.5923.1.1.1.1"       FriendlyName="eduPersonAffiliation">       <saml:AttributeValue         xsi:type="xs:string">member</saml:AttributeValue>       <saml:AttributeValue         xsi:type="xs:string">staff</saml:AttributeValue>     </saml:Attribute>   </saml:AttributeStatement> </saml:Assertion>

参考文献

一手来源:

相关

  • 圭亚那圭亚那(英语:Guyana)是今日圭亚那共和国的前身,是一个存在于1966年和1970年之间的独立国家。英国在圭亚那的统治结束于1966年5月26日,当时英国通过《1966年圭亚那独立法》给予圭
  • 系统工程系统工程是一个跨多学科领域的工程学和工程管理,通常专注于如何设计、开发和管理在其生命周期内的复杂系统。系统工程的核心系利用系统性思考的原则,以建构其知识体系。当处理
  • 狮子Felis leo Linnaeus, 1758狮(学名:Panthera leo),又称狮子(古称狻猊),被人称为万兽之王。狮是一种生存在非洲和亚洲的大型猫科动物,豹属之中最著名的一种,现存中是和老虎并列的两大
  • 综合企业综合企业,是指一些跨产业发展的企业,用以分散风险。一般而言,由于登记营业项目的限制与营业税的考量,多以企业集团的模式营运。
  • 海王星辰Corporate Site,中国海王星辰连锁药店股份有限公司(NYSE:NPD) 是一家主要销售安全药品的健康连锁药房。1995年创立的,当时叫深圳市海王星辰医药有限公司,业务分布于深圳、广州
  • 联邦禁酒局禁酒局(英语:Bureau of Prohibition)或禁酒部(Prohibition Unit),是美国政府为执行1919年全国禁酒法而成立的联邦执法机构,该禁酒法俗称为沃尔斯泰德法(Volstead Act),详细说明了美国
  • 1980年魁北克公民投票1980年魁北克公民投票是第一次就魁北克应否脱离加拿大成为独立国家而举行的公民投票,由支持魁北克分离出加拿大的魁北克人党(简称魁人党)政府号召举行。公投于1980年5月20日在
  • 樱井洋子樱井洋子(1951年8月9日-),日本电视节目主持人,出生于新潟县;毕业于明治大学。1975年到任NHK。
  • 马骥 (男演员)马骥(1924年4月29日-1998年2月14日),台湾男演员、导演、编剧,曾获第2届金马奖最佳男配角。马骥生于四川,毕业于南京戏剧专科学校,擅长歌唱。1940年代,他开始演出话剧。1949年,马骥来
  • MltermMlterm是一个基于X Window系统的支持多语言的终端软件,在中文方面,它支持GB 2312,GBK,GB 18030,Big5和UTF-8。Mlterm会检查当前的locale并选择恰当的编码。Mlterm还支持AA字体抗