Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

En del tjänster behöver veta vilken organisation en användare kommer ifrån, inte bara med domännamnet i eduPersonPrincipalName utan även organisationens namn och i vilket land organisationen har sin hemvist. Denna sida beskriver hur du gör för att skapa statiska attribut med denna information.

Note

I denna text antar vi att attributen o, co, c, norEduOrgAcronym, schacHomeOrganization och schacHomeOrganizationType inte varierar mellan olika användare utan kan skapas från en konfigurationsfil. I vissa fall när en IdP används för flera organisationer kan dessa attribut behöva sättas från en databas eller katalogtjänst.

Det De attribut som ingår i den beskrivna statiska organisationsinformationen är:

  • Organisationsnamn (LDAP-attrributet o)
  • Vedertagen förkortning av organisationsnamnet (LDAP-attrributet norEduOrgAcronym)
  • Namn på landet där organisationen har sitt säte (LDAP-attrributet co)
  • Förkortning enlgit enligt ISO-3166 för landet där organisationen har sitt säte (LDAP-attrributet c)

Konfiguration för Shibboleth 2.x SP

Info

Konfigurationerna under detta avsnitt fungerar endast för Shibboleth 2 eller senare. För simpleSAMLphp och ADFS2 kan konfigurationsexemplen endast användas som inspiration.

Följande definitioner krävs i attribute-map.xml:

För att få tillgång till de rekommenderade statiska attributen i en Service Provider måste attributen definieras i attribute-map.xml.

  • Attributet o för organisationsens namn finns definierat men bortkommenterat den mappningsfil som följer med installationen.
  • Attributet norEduPersonAcronym för den vedertagna förkortningen av organisationsens namn finns defineirad på sidan Rekommenderade ändringar i attribute-map.xml (IdP).
  • Attributen co och c för landsnamn och i ISO-3166 definierad förkortning finns definerade nedan.
Code Block

<!-- Country name and country ISO-3166 code -->
<Attribute name="urn:mace:dir:attribute-def:co" id="friendlyCountryName"/>
<Attribute name="urn:mace:dir:attribute-def:c" id="countryName"/>
<Attribute name="urn:oid:0.9.2342.19200300.100.1.43" id="friendlyCountryName"/>
<Attribute name="urn:oid:2.5.4.6" id="countryName"/>

  • Huvuddomän för organisationen (schacHomeOrganization)
  • Typ av organisation (schacHomeOrganizationType)

Konfiguration för Shibboleth Identity Provider 3

...

Info

Konfigurationerna under detta avsnitt fungerar endast för Shibboleth 2 3 eller senare. För simpleSAMLphp och ADFS2 ADFS kan konfigurationsexemplen endast användas som inspiration.

...

  • Konfigurerar en statisk datakälla
  • Konfigurerar attributrelease för attributen
  • Konfigurerar attributfilter för SWAMID och Kalmar2

Lägg till följande i avsnittet Data Connectors i attribute-resolver.xml:

När du in lägger nedanstående definition byt ut "Lärosäte X" mot ORGANIZATION_NAME mot namnet på ert lärosäte och "XX" mot ORGANIZATION_ACRONYM mot vedertagen förkortning för lärosätet och SCHAC_HOME_ORG_DOMAIN_NAME mot lärosätets toppdomännamn. För Uppsala universitet blir det Uppsala universitet, UU och UUuu.se. Tänk på att det inte är möjligt att skicka med ett svenskt namn och ett engelskt namn utan välj det som är mest gångbart även utomlands. Om ni inte är ett lärosäte måste ni även byta ut schacHomeOrganizationType mot lämpligt värde. I Example of a standard attribute resolver for Shibboleth IdP v5 and above finns detta redan inlagt men ni måste uppdatera värdena på de statiska attributen.

Code Block

    <!-- Static data connector for organization -->
<!--
    Update the following attributes to the correct values for your organization
-->
    <resolver:DataConnector id="staticAttributes" xsi:type="dc:Static" xmlns="urn:mace:shibboleth:2.0:resolver:dc">
        <Attribute id="o">
        <Value>Lärosäte X<    <Value>ORGANIZATION_NAME</Value>
        </Attribute>
        <Attribute id="norEduOrgAcronym">
            <Value>XX<<Value>ORGANIZATION_ACRONYM</Value>
        </Attribute>
        <Attribute id="c">
            <Value>SE</Value>
        </Attribute>
        <Attribute id="co">
            <Value>Sweden</Value>
        </Attribute>
        <Attribute id="schacHomeOrganization">
            <Value>SCHAC_HOME_ORG_DOMAIN_NAME</Value>
        </Attribute>
        <Attribute id="schacHomeOrganizationType">
            <Value>urn:schac:homeOrganizationType:eu:higherEducationInstitution</Value>
<!-- This value is for EU higher education institution, other allowed values are:
            - urn:schac:homeOrganizationType:eu:educationInstitution
            - urn:schac:homeOrganizationType:int:NREN
            - urn:schac:homeOrganizationType:int:universityHospital
            - urn:schac:homeOrganizationType:int:NRENAffiliate
            - urn:schac:homeOrganizationType:int:other
-->
        </Attribute>
    </resolver:DataConnector>

Lägg till eller ändra följande i avsnittet Attribute definitions i attribute-resolver.xml:

Du kan redan ha definierat en eller flera av nedanstående attributdefinitioner i attribute-resolver.xml, om så är fallet behöver du byta ut dem mot nedanstående. Om du inte har definierat dem är det bara att lägga till.

Code Block

<!-- Organizational name -->
    <resolver:AttributeDefinition id="organizationName" xsi:type="ad:Simple"
        xmlns="urn:mace:shibboleth:2.0:resolver:ad id="organizationName" sourceAttributeID="o">
        <resolver:Dependency ref="staticAttributes" />
        <resolver:AttributeEncoder xsi:type="enc:SAML1String" xmlns="urn:mace:shibboleth:2.0:attribute:encoder"
            name="urn:mace:dir:attribute-def:o" />
        <resolver:AttributeEncoder xsi:type="enc:SAML2String" xmlns="urn:mace:shibboleth:2.0:attribute:encoder"
            name="urn:oid:2.5.4.10" friendlyName="o" />
    </resolver:AttributeDefinition>

<!-- Organizational acronym -->
    <resolver:AttributeDefinition id="norEduOrgAcronym" xsi:type="ad:Simple"
        xmlns="urn:mace:shibboleth:2.0:resolver:ad" sourceAttributeID="norEduOrgAcronym">
        <resolver:Dependency ref="staticAttributes" />
        <resolver:AttributeEncoder xsi:type="enc:SAML1String" xmlns="urn:mace:shibboleth:2.0:attribute:encoder"
            name="urn:mace:dir:attribute-def:norEduOrgAcronym" />
        <resolver:AttributeEncoder xsi:type="SAML2String" xmlns="urn:mace:shibboleth:2.0:attribute:encoder"
            enc:SAML2String" name="urn:oid:1.3.6.1.4.1.2428.90.1.6" friendlyName="norEduOrgAcronym" />
    </resolver:AttributeDefinition>

<!-- Country name -->
    <resolver:AttributeDefinition id="friendlyCountryName" xsi:type="Simple"
        xmlns="urn:mace:shibboleth:2.0:resolver:ad" sourceAttributeID="co">
        <resolver:Dependency ref="staticAttributes" />
        <resolver:AttributeEncoder xsi:type="SAML1String" xmlns="urn:mace:shibboleth:2.0:attribute:encoder"
            enc:SAML1String" name="urn:mace:dir:attribute-def:co" />
        <resolver:AttributeEncoder xsi:type="SAML2String" xmlns="urn:mace:shibboleth:2.0:attribute:encoder"
            enc:SAML2String" name="urn:oid:0.9.2342.19200300.100.1.43" friendlyName="co" />
    </resolver:AttributeDefinition>

<!-- Country ISO-3166 code -->
    <resolver:AttributeDefinition id="countryName" xsi:type="Simple"
        xmlns="urn:mace:shibboleth:2.0:resolver:ad" sourceAttributeID="c">
        <resolver:Dependency ref="staticAttributes" />
        <resolver:AttributeEncoder xsi:type="SAML1String" xmlns="urn:mace:shibboleth:2.0:attribute:encoder"
            name="urn:mace:dir:attribute-def:c" />
        <resolver:AttributeEncoder xsi:type="SAML2String" xmlns="urn:mace:shibboleth:2.0:attribute:encoder"
            name="urn:oid:2.5.4.6" friendlyName="c" />
    </resolver:AttributeDefinition>

Lägg till följande i attributrelase för SWAMID och Kalmar2 i attribute-resolver.xml:

Nedanstående behöver läggas till i den attributrealse som görs generellt för SWAMID. Om er IdP även är medlemmar i konfederationen Kalmar2 behöver ni göra samma sak i den generella attributreleasen för Kalmar2.

Code Block

        <AttributeRule attributeID="organizationName">
            <PermitValueRule <!-- schacHomeOrganization main domain -->
    <resolver:AttributeDefinition id="schacHomeOrganization" xsi:type="basic:ANYSimple" /sourceAttributeID="schacHomeOrganization">
        </AttributeRule><resolver:Dependency ref="staticAttributes" />
        <AttributeRule attributeID="norEduOrgAcronym" <resolver:AttributeEncoder xsi:type="SAML1String" name="urn:mace:dir:attribute-def:schacHomeOrganization" />
            <PermitValueRule <resolver:AttributeEncoder xsi:type="basic:ANYSAML2String" name="urn:oid:1.3.6.1.4.1.25178.1.2.9" friendlyName="schacHomeOrganization" />
        </AttributeRule>
   resolver:AttributeDefinition>

<!-- schacHomeOrganization type -->
     <AttributeRule attributeID="countryName<resolver:AttributeDefinition id="schacHomeOrganizationType" xsi:type="Simple" sourceAttributeID="schacHomeOrganizationType">
            <PermitValueRule xsi:type="basic:ANY<resolver:Dependency ref="staticAttributes" />
        </AttributeRule>
        <AttributeRule attributeID="friendlyCountryName"<resolver:AttributeEncoder xsi:type="SAML1String" name="urn:mace:dir:attribute-def:schacHomeOrganizationType" />
            <PermitValueRule <resolver:AttributeEncoder xsi:type="basic:ANYSAML2String" name="urn:oid:1.3.6.1.4.1.25178.1.2.10" friendlyName="schacHomeOrganizationType" />
        </AttributeRule>

</resolver:AttributeDefinition>

Lägg till följande i attributrelase för SWAMID i attribute-filter.xml:

I Example of a standard attribute filter for Shibboleth IdP v5 and above finns användningen av de statiska organisationsfiltren definierad.