我正在实施SP发起的Web浏览器SAML SSO配置文件
我的申请是SP。
客户要求我提供元数据文件
我有一个Shibboleth元数据文件,用于针对本地Shibboleth IDP服务器测试我的应用程序
现在,当我将此文件发送给非Shibboleth客户时,他说该文件是一个Shibboleth文件,他需要一个不同的文件。
我的问题是:
我是否可以使用适合所有客户的标准SP元数据文件,无论他们使用什么IDP?
我找到了一个例子:
<md:EntityDescriptor
xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
ID="_z7b6d339da96016iib0ed98ed476er3d7ae4dct5"
entityID="https://my.application.sp/login">
<md:SPSSODescriptor AuthnRequestsSigned="false"
WantAssertionsSigned="true"
protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">
<md:KeyDescriptor use="signing">
<ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<ds:X509Data>
<ds:X509SubjectName>CN=my.application.sp</ds:X509SubjectName>
<ds:X509Certificate>--my certificate--</ds:X509Certificate>
</ds:X509Data>
</ds:KeyInfo>
</md:KeyDescriptor>
<md:KeyDescriptor use="encryption">
<ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<ds:X509Data>
<ds:X509Certificate>--my certificate--</ds:X509Certificate>
</ds:X509Data>
</ds:KeyInfo>
</md:KeyDescriptor>
<md:NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</md:NameIDFormat>
<md:AssertionConsumerService
Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
Location="https://my.application.sp/handleLogin" index="0"/>
</md:SPSSODescriptor>
</md:EntityDescriptor>
这够了吗? 我可以将其用作所有国内流离失所者的一般元数据吗?
由于
答案 0 :(得分:1)
sp.xml受SAML的限制,SAML是一个开放协议,因此不存在“Shibboleth元数据” - 它是Shibboleth使用的SAML元数据。
各方的细节必须在双方之间进行谈判,例如:你已经指定了HTTP-POST。
如果IDP更喜欢HTTP重定向怎么办?
如果他们希望nameid格式是持久的而不是瞬态的等等,那该怎么办呢。
或者您的证书可能是1024位而不是2048?
与SAML相关的元数据可以作为一般示例使用,但它可能无法满足所有个人IDP要求。