SP Metadata示例
<md:EntityDescriptor entityID="https://sp.example.com/shibboleth"
xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui">
<md:SPSSODescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">
<md:Extensions>
<mdui:UIInfo>
<mdui:DisplayName xml:lang="en">GARR Test SP</mdui:DisplayName>
<mdui:DisplayName xml:lang="it">GARR SP di Test</mdui:DisplayName>
<mdui:Description xml:lang="en">This is a Service Provider useful for testing</mdui:Description>
<mdui:Description xml:lang="it">Questo è un Service Provider utile per i test</mdui:Description>
</mdui:UIInfo>
</md:Extensions>
<md:KeyDescriptor>
<ds:KeyInfo>
<ds:X509Data>
<ds:X509Certificate>
SP_SELF-SIGNED_SUGGESTED_CERTIFICATE_USED_TO_
SIGN_AND_ENCRYPT_THE_ASSERTIONS_EXCHANGED_WITH_A_IDP-CHANGE_IT
</ds:X509Certificate>
</ds:X509Data>
</ds:KeyInfo>
</md:KeyDescriptor>
<md:AssertionConsumerService
Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
Location="https://sp.example.com/Shibboleth.sso/SAML2/POST"
index="0" />
<md:AttributeConsumingService index="1">
<!-- example for the required attribute: mail -->
<md:RequestedAttribute FriendlyName="mail"
Name="urn:oid:0.9.2342.19200300.100.1.3"
NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri"
isRequired="true" />
<!-- example for the required attribute: eduPersonPrincipalName -->
<md:RequestedAttribute FriendlyName="eduPersonPrincipalName"
Name="urn:oid:1.3.6.1.4.1.5923.1.1.1.6"
NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri"
isRequired="true" />
</md:AttributeConsumingService>
</md:SPSSODescriptor>
<md:Organization>
<md:OrganizationName xml:lang="en">Consortium GARR</md:OrganizationName>
<md:OrganizationName xml:lang="it">Consortium GARR</md:OrganizationName>
<md:OrganizationDisplayName xml:lang="en">Consortium GARR
</md:OrganizationDisplayName>
<md:OrganizationDisplayName xml:lang="it">Consortium GARR</md:OrganizationDisplayName>
<md:OrganizationURL xml:lang="en">http://www.garr.it/b/eng
</md:OrganizationURL>
<md:OrganizationURL xml:lang="it">https://www.garr.it</md:OrganizationURL>
</md:Organization>
<md:ContactPerson contactType="technical">
<md:EmailAddress>mailto:example.technical.contact@garr.it</md:EmailAddress>
</md:ContactPerson>
</md:EntityDescriptor>
这段元数据描述了一个名为 "GARR Test SP" 的服务提供者 (SP),它用于测试目的。以下是元数据中各个部分的解释:
1. md:EntityDescriptor
:
entityID="https://sp.example.com/shibboleth"
: SP 的唯一标识符,用于在 SAML 系统中识别它。xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
: 定义了 XML 数字签名 (XML Digital Signature) 的命名空间。xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
: 定义了 XML Schema 实例的命名空间。xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
: 定义了 SAML 2.0 元数据的命名空间。xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui"
: 定义了 SAML 2.0 元数据用户界面 (Metadata User Interface) 的命名空间。
2. md:SPSSODescriptor
:
protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol"
: 表示 SP 支持 SAML 2.0 协议。
3. md:Extensions
:
mdui:UIInfo
: 包含 SP 的用户界面信息。mdui:DisplayName
: SP 的显示名称,分别用英文和意大利语提供。mdui:Description
: SP 的描述,分别用英文和意大利语提供。
4. md:KeyDescriptor
:
ds:KeyInfo
: 包含 SP 的公钥信息。ds:X509Data
: 包含 SP 的 X.509 证书。ds:X509Certificate
: SP 的证书内容,这里用占位符表示,实际应该包含真实的证书内容。
5. md:AssertionConsumerService
:
Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
: 指定 SP 使用 HTTP POST 绑定方式接收 SAML 断言。Location="https://sp.example.com/Shibboleth.sso/SAML2/POST"
: SP 的断言接收服务 (ACS) 的 URL。index="0"
: 用于标识 ACS 的索引,这里为 0。
6. md:AttributeConsumingService
:
index="1"
: 用于标识 AttributeConsumingService 的索引,这里为 1。md:RequestedAttribute
: 定义了 SP 所需的属性。FriendlyName
: 属性的友好名称。Name
: 属性的 OID (对象标识符)。NameFormat
: 属性名称格式。isRequired
: 是否为必需属性,这里两个属性都为必需。
7. md:Organization
:
md:OrganizationName
: SP 所属组织的名称,分别用英文和意大利语提供。md:OrganizationDisplayName
: SP 所属组织的显示名称,分别用英文和意大利语提供。md:OrganizationURL
: SP 所属组织的网站 URL,分别用英文和意大利语提供。
8. md:ContactPerson
:
contactType="technical"
: 表示技术联系人。md:EmailAddress
: 技术联系人的电子邮件地址。
总结:
这段元数据描述了一个名为 "GARR Test SP" 的服务提供者,它支持 SAML 2.0 协议,使用 HTTP POST 绑定方式接收 SAML 断言,并需要 "mail" 和 "eduPersonPrincipalName" 两个属性。它还包含了 SP 所属组织的信息和技术联系人的信息。
参考资料
https://wiki.geant.org/display/eduGAIN/Basic+SP+Metadata+Example
最后更新于