我正在为ADFS 2.0的"依赖方信托"one_answers"索赔提供者信托"手动编写联邦元数据XML这可能是一个基本的例子…
<?xml version="1.0" encoding="utf-8"?>
<EntityDescriptor ID="_271f377f-78d8-4133-8c46-a73c4936bb1f" entityID="https://example.com" xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
<RoleDescriptor xsi:type="fed:ApplicationServiceType" xmlns:fed="http://docs.oasis-open.org/wsfed/federation/200706" protocolSupportEnumeration="http://docs.oasis-open.org/wsfed/federation/200706" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<fed:TargetScopes>
<wsa:EndpointReference xmlns:wsa="http://www.w3.org/2005/08/addressing">
<wsa:Address>https://example.com/</wsa:Address>
</wsa:EndpointReference>
</fed:TargetScopes>
<fed:PassiveRequestorEndpoint>
<wsa:EndpointReference xmlns:wsa="http://www.w3.org/2005/08/addressing">
<wsa:Address>https://example.com/</wsa:Address>
</wsa:EndpointReference>
</fed:PassiveRequestorEndpoint>
</RoleDescriptor>
</EntityDescriptor>
有一些方法可以使用像通配符域这样的东西来验证我所有的环境(开发、集成、预生产、生产……)
例如…<EntityDescriptor ID="_271f377f-78d8-4133-8c46-a73c4936bb1f" entityID="https://*.example.com" xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
<wsa:Address>https://*.example.com/</wsa:Address>
.
马赫https://des.example.com/https://int.example.com/https://pre.example.com/https://pro.example.com/我已经读了什么在SAML EntityID URL呈现?但以防万一。
您不能在EntityID中使用通配符,原因如下
-
"*";在URI中允许1,2,但不作为通配符操作,因此这不会产生您正在寻找的
的效果。 -
每个实体(由它的EntityID标识)应该有自己的端点,以便其他SAML实体现在将在哪里重定向浏览器或发出反向通道请求到和/或它应该在哪里侦听请求。
您可以简单地复制EntityDescriptor并为每个环境更改值