Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
de:shibidp3config-attribute [2021/04/26 14:53] – als deprecated markiert Silke Meyerde:shibidp3config-attribute [2021/05/03 13:53] (aktuell) – veralteten Inhalt gelöscht Silke Meyer
Zeile 1: Zeile 1:
-====== Konfiguration Attribut-Generierung und -Freigabe====== 
-<callout color="#ff9900" title="Veraltete IdP-Version!"> 
-</callout> 
  
-Zum grundlegenden Verständnis der Attribut-Generierung, -Freigabe und -Übertragung empfehlen wir die Lektüre dieser [[https://download.aai.dfn.de/ws/2019_hlm/attribute.pdf|Präsentation von einem der DFN-AAI Workshops]]. 
- 
-Erzeugung und Freigabe der SAML-Attribute wird weiterhin über die Dateien attribute-resolver.xml und attribute-filter.xml gesteuert. Diese unterscheiden sich syntaktisch und semantisch leicht von den gewohnten Dateien im IdP 2.x. 
- 
-Mit den folgenden beiden Konfigurationsdateien sollte ein erster Test gegen die DFN-Test-SPs schnell gelingen: 
- 
-===== Minimale attribute-resolver.xml ===== 
- 
-Laden Sie unsere Beispieldatei herunter und legen Sie diese nach ''./conf/attribute-resolver.xml''. Sie dient in erster Linie zu Testzwecken bei der Erstinstallation eines Shibboleth IdP. Die Werte für ''sourceAttributeID'' müssen ggf. den Attributnamen im lokalen IdM bzw. Nutzerverzeichnis angepasst werden. Für den späteren Produktivbetrieb müssen i.d.R. noch mindestens die Definitionen der für den Bibliotheksbereich relevanten Attribute ''eduPerson(Scoped)Affiliation'' und ''eduPersonEntitlement'' ergänzt werden, siehe die entsprechende [[de:shibidp:config-attributes-publishers|Dokumentation]].  
- 
-(Ein Klick auf den Dateinamen startet den Download)  
- 
-<file xml ./conf/attribute-resolver.xml> 
-<?xml version="1.0" encoding="UTF-8"?> 
-<AttributeResolver 
-        xmlns="urn:mace:shibboleth:2.0:resolver" 
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
-        xsi:schemaLocation="urn:mace:shibboleth:2.0:resolver http://shibboleth.net/schema/idp/shibboleth-attribute-resolver.xsd"> 
- 
-    <!-- ========================================== --> 
-    <!--      Attribute Definitions                 --> 
-    <!-- ========================================== --> 
- 
-    <!-- Attribute aus Userangaben --> 
- 
-    <AttributeDefinition id="uid" xsi:type="PrincipalName"> 
-        <DisplayName xml:lang="en">User Name</DisplayName> 
-        <DisplayName xml:lang="de">Nutzerkennung</DisplayName> 
-        <DisplayDescription xml:lang="en">Local User Id</DisplayDescription> 
-        <DisplayDescription xml:lang="de">Nutzerkennung der Heimateinrichtung</DisplayDescription> 
-        <AttributeEncoder xsi:type="SAML2String" name="urn:oid:0.9.2342.19200300.100.1.1" friendlyName="uid" encodeType="false" /> 
-    </AttributeDefinition> 
- 
-    <AttributeDefinition id="eduPersonPrincipalName" xsi:type="Scoped" scope="%{idp.scope}"> 
-        <InputAttributeDefinition ref="uid" /> 
-        <DisplayName xml:lang="en">Principal name</DisplayName> 
-        <DisplayName xml:lang="de">Netz-Id</DisplayName> 
-        <DisplayDescription xml:lang="en">A unique identifier for a person, mainly for inter-institutional user identification</DisplayDescription> 
-        <DisplayDescription xml:lang="de">Eindeutige, einrichtungsübergreifende Nutzerkennung</DisplayDescription> 
-        <AttributeEncoder xsi:type="SAML2ScopedString" name="urn:oid:1.3.6.1.4.1.5923.1.1.1.6" friendlyName="eduPersonPrincipalName" encodeType="false" /> 
-    </AttributeDefinition> 
- 
-    <!--- Attribute aus dem IdM --> 
- 
-    <AttributeDefinition id="mail" xsi:type="Simple"> 
-        <InputDataConnector ref="myLDAP" attributeNames="mail"/> 
-        <DisplayName xml:lang="en">E-mail</DisplayName> 
-        <DisplayName xml:lang="de">E-Mail</DisplayName> 
-        <DisplayDescription xml:lang="en">E-Mail address</DisplayDescription> 
-        <DisplayDescription xml:lang="de">E-Mail Adresse</DisplayDescription> 
-        <AttributeEncoder xsi:type="SAML2String" name="urn:oid:0.9.2342.19200300.100.1.3" friendlyName="mail" encodeType="false" /> 
-    </AttributeDefinition> 
- 
-    <AttributeDefinition id="surname" xsi:type="Simple"> 
-        <InputDataConnector ref="myLDAP" attributeNames="sn"/> 
-        <DisplayName xml:lang="en">Surname</DisplayName> 
-        <DisplayName xml:lang="de">Nachname</DisplayName> 
-        <DisplayDescription xml:lang="en">Surname or family name</DisplayDescription> 
-        <DisplayDescription xml:lang="de">Familienname des Nutzers bzw. der Nutzerin</DisplayDescription> 
-        <AttributeEncoder xsi:type="SAML2String" name="urn:oid:2.5.4.4" friendlyName="sn" encodeType="false" /> 
-    </AttributeDefinition> 
- 
-    <AttributeDefinition id="givenName" xsi:type="Simple"> 
-        <InputDataConnector ref="myLDAP" attributeNames="givenName"/> 
-        <DisplayName xml:lang="en">Given name</DisplayName> 
-        <DisplayName xml:lang="de">Vorname</DisplayName> 
-        <DisplayDescription xml:lang="en">Given name of a person</DisplayDescription> 
-        <DisplayDescription xml:lang="de">Vorname des Nutzers bzw. der Nutzerin</DisplayDescription> 
-        <AttributeEncoder xsi:type="SAML2String" name="urn:oid:2.5.4.42" friendlyName="givenName" encodeType="false" /> 
-    </AttributeDefinition> 
- 
- 
-    <!-- ========================================== --> 
-    <!--      Data Connectors                       --> 
-    <!-- ========================================== --> 
- 
-    <DataConnector id="myLDAP" xsi:type="LDAPDirectory" 
-        ldapURL="%{idp.attribute.resolver.LDAP.ldapURL}" 
-        baseDN="%{idp.attribute.resolver.LDAP.baseDN}" 
-        principal="%{idp.attribute.resolver.LDAP.bindDN}" 
-        principalCredential="%{idp.attribute.resolver.LDAP.bindDNCredential}" 
-        useStartTLS="%{idp.attribute.resolver.LDAP.useStartTLS:true}" 
-        connectTimeout="%{idp.attribute.resolver.LDAP.connectTimeout}" 
-        trustFile="%{idp.attribute.resolver.LDAP.trustCertificates}" 
-        responseTimeout="%{idp.attribute.resolver.LDAP.responseTimeout}"> 
-        <FilterTemplate> 
-            <![CDATA[ 
-                %{idp.attribute.resolver.LDAP.searchFilter} 
-            ]]> 
-        </FilterTemplate> 
-        <ConnectionPool 
-            minPoolSize="%{idp.pool.LDAP.minSize:3}" 
-            maxPoolSize="%{idp.pool.LDAP.maxSize:10}" 
-            blockWaitTime="%{idp.pool.LDAP.blockWaitTime:PT3S}" 
-            validatePeriodically="%{idp.pool.LDAP.validatePeriodically:true}" 
-            validateTimerPeriod="%{idp.pool.LDAP.validatePeriod:PT5M}" 
-            expirationTime="%{idp.pool.LDAP.idleTime:PT10M}" 
-            failFastInitialize="%{idp.pool.LDAP.failFastInitialize:false}" /> 
-    </DataConnector> 
- 
-</AttributeResolver> 
-</file> 
- 
-Starten Sie Tomcat neu um die neuen Einstellungen zu aktivieren (dabei Logdateien mitverfolgen!): 
-<code bash> 
-root@idp:/opt/shibboleth-idp# systemctl restart tomcat8 
-</code> 
- 
-===== attribute-filter.xml für die DFN-AAI Test-SP ===== 
- 
-Laden Sie unsere [[de:attribute-filter-example|Beispieldatei]] herunter und legen Sie diese nach ''./conf/attribute-filter.xml''. Auch sie dient in erster Linie zu Testzwecken bei der Erstinstallation eines Shibboleth IdP. Für den späteren Produktivbetrieb beachten Sie bitte die vertiefende [[de:shibidp3attributes|Dokumentation]].  
- 
-(Ein Klick auf den Dateinamen startet den Download)  
- 
-<file xml ./conf/attribute-filter.xml> 
-<?xml version="1.0" encoding="UTF-8"?> 
-<AttributeFilterPolicyGroup id="ShibbolethFilterPolicy" 
-        xmlns="urn:mace:shibboleth:2.0:afp" 
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
-        xsi:schemaLocation="urn:mace:shibboleth:2.0:afp http://shibboleth.net/schema/idp/shibboleth-afp.xsd"> 
- 
-   <!-- Attribute an die DFN-Test-IdPs freigeben --> 
-   <AttributeFilterPolicy id="dfn_test_sps"> 
-        <PolicyRequirementRule xsi:type="OR"> 
-            <Rule xsi:type="Requester" value="https://testsp.aai.dfn.de/shibboleth" /> 
-            <Rule xsi:type="Requester" value="https://testsp2.aai.dfn.de/shibboleth" /> 
-            <Rule xsi:type="Requester" value="https://testsp3.aai.dfn.de/shibboleth" /> 
-        </PolicyRequirementRule> 
- 
-        <AttributeRule attributeID="uid"                    permitAny="true"/> 
-        <AttributeRule attributeID="eduPersonPrincipalName" permitAny="true"/> 
-        <AttributeRule attributeID="mail"                   permitAny="true"/> 
-        <AttributeRule attributeID="surname"                permitAny="true"/> 
-        <AttributeRule attributeID="givenName"              permitAny="true"/> 
-  </AttributeFilterPolicy> 
-</AttributeFilterPolicyGroup> 
-</file> 
- 
-Starten Sie Tomcat neu um die neuen Einstellungen zu aktivieren (dabei Logdateien mitverfolgen!): 
-<code bash> 
-root@idp:/opt/shibboleth-idp# systemctl restart tomcat8 
-</code> 
- 
-===== Attribute-Test mithilfe der Test-SPs in der DFN-AAI-Test ===== 
- 
-Bitte testen Sie jetzt die Attribute-Freigabe gegen unsere Test-SPs, siehe hierzu unter [[de:functionaltest_idp|Funktionstest]]. 
- 
-Erst wenn diese Tests erfolgreich sind und Sie die Attribute 'uid', 'eduPersonPrincipalName', 'mail', 'surname' und 'givenName' angezeigt bekommen, sollten Sie mit der IdP-Konfiguration weiter machen! 
- 
-===== Optional: Attribute-Test mithilfe aacli ===== 
- 
-Mit dem **Resolvertest (aacli)** besteht die Möglichkeit, die Attributfreigabe für eine(n) bestimmte(n) Nutzer(in) gegenüber einem bestimmten SP zu testen. Der Aufruf von bin/aacli.sh generiert einen URL, der dann z.B. im Browser eingegeben werden kann (auch hier Zugriffskontrolle über conf/access-control.xml): 
-<code bash> 
-root@idp# ./bin/aacli.sh -n test-clt -r https://testsp3.aai.dfn.de/shibboleth 
-</code> 
-(**-n** principal = user id; **-r** requester = entityId des [simuliert] anfragenden SP) \\ 
-Für die ausführliche Dokumentation konsultieren Sie bitte das [[https://wiki.shibboleth.net/confluence/display/IDP30/AACLI|Shibboleth Wiki]]. 
- 
-Weiter geht es mit der [[de:shibidp3config-zertifikate|Zertifikate]]-Konfiguration. 
- 
-{{tag>idp3 deprecated}} 
  • Zuletzt geändert: vor 3 Jahren