带有SAML 2.0的SSO用于通配符域



我正在为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并为每个环境更改值

相关内容

  • 没有找到相关文章

最新更新