0

我们遇到了 Shibboleth 和 Apache 服务器的问题。我正在与 Tomcat 应用程序的 SSO 门户集成。我已经确定了与 SSO 门户的集成,但我们遇到了属性映射问题。我们正在获取一个 NameID,它是电子邮件地址。我不知道我错过了什么。我可以在 Shibd.log 中看到电子邮件,但在 Shibboleth.sso/Session 中看不到任何属性这是我对属性映射的配置:

<Attributes xmlns="urn:mace:shibboleth:2.0:attribute-map" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Attribute name="urn:oasis:names:tc:SAML:2.0:nameid-format:persistent" id="persistent-id">
        <AttributeDecoder xsi:type="NameIDAttributeDecoder" formatter="$NameQualifier!$SPNameQualifier!$Name" defaultQualifiers="true"/>
    </Attribute>
    <Attribute name="emailAddress" nameFormat="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress" id="emailAddress">
        <AttributeDecoder xsi:type="NameIDAttributeDecoder" formatter="$Name" defaultQualifiers="true" />
    </Attribute>
     <Attribute name="mail" nameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified" id="mail">
        <AttributeDecoder xsi:type="NameIDAttributeDecoder" formatter="$Name" defaultQualifiers="true" />
    </Attribute>
</Attributes>

这是我在属性策略中的内容:

<afp:AttributeFilterPolicyGroup
    xmlns="urn:mace:shibboleth:2.0:afp:mf:basic"
    xmlns:saml="urn:mace:shibboleth:2.0:afp:mf:saml"
    xmlns:basic="urn:mace:shibboleth:2.0:afp:mf:basic"
    xmlns:afp="urn:mace:shibboleth:2.0:afp"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <afp:AttributeFilterPolicy>
        <!-- This policy is in effect in all cases. -->
        <afp:PolicyRequirementRule xsi:type="ANY"/>
        <!-- Catch-all that passes everything else through unmolested. -->
        <afp:AttributeRule attributeID="*" permitAny="true"/>
    </afp:AttributeFilterPolicy>
</afp:AttributeFilterPolicyGroup>   

Shibd.log 有以下措辞:

019-12-16 16:48:23 INFO Shibboleth.AttributeExtractor.XML : creating mapping for Attribute urn:oasis:names:tc:SAML:2.0:nameid-format:persistent
2019-12-16 16:48:23 INFO Shibboleth.AttributeExtractor.XML : creating mapping for Attribute emailAddress, Format/Namespace:urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress
2019-12-16 16:48:23 INFO Shibboleth.AttributeExtractor.XML : creating mapping for Attribute mail, Format/Namespace:urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified

但是,如前所述,我们在 Shibboleth.sso/Session 中看不到任何属性

我错过了什么吗?

4

1 回答 1

0

这是通过添加属性修复的:

<Attribute name="urn:mace:dir:attribute-def:mail" id="SHIB_MAIL"/>
    <Attribute name="urn:oid:0.9.2342.19200300.100.1.3" id="SHIB_MAIL"/>

这是 SP Session 的属性部分中出现的唯一属性。

于 2019-12-16T23:05:09.143 回答