Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
de:shibidp:config-attributes-publishers [2021/05/03 15:21] – aktualisiert Silke Meyerde:shibidp:config-attributes-publishers [2025/06/04 10:31] (aktuell) – [Attributfreigabe] Andreas Borm
Zeile 1: Zeile 1:
 ====== Attributfreigaben für Verlagsanbieter ====== ====== Attributfreigaben für Verlagsanbieter ======
-(zurück zur [[de:shibidp:config-attributes#haeufig_genutzt_service_provider|Übersicht]])+(zurück zur [[de:shibidp:config-attributes#haeufig_genutzte_service_provider|Übersicht]])
  
 Viele kommerzielle Verlagsanbieter bieten inzwischen eine Anmeldung über SAML an, also über die DFN-AAI oder eduGAIN. Sie haben sich dazu auf **einheitliche Attributanforderungen** geeinigt, so dass Sie mit einer einzigen Konfiguration am IdP alle großen Verlagsanbieter auf einmal abdecken können. Die Voraussetzung dafür ist meist ein Lizenzvertrag zwischen Ihrer Hochschule bzw. Bibliothek und dem Anbieter. Viele kommerzielle Verlagsanbieter bieten inzwischen eine Anmeldung über SAML an, also über die DFN-AAI oder eduGAIN. Sie haben sich dazu auf **einheitliche Attributanforderungen** geeinigt, so dass Sie mit einer einzigen Konfiguration am IdP alle großen Verlagsanbieter auf einmal abdecken können. Die Voraussetzung dafür ist meist ein Lizenzvertrag zwischen Ihrer Hochschule bzw. Bibliothek und dem Anbieter.
Zeile 14: Zeile 14:
 Ihr Lizenzvertrag oder ggf. das Landeshochschulgesetz Ihres Bundeslandes geben Auskunft darüber, welche Gruppen welche Berechtigungen bekommen. Ihr Lizenzvertrag oder ggf. das Landeshochschulgesetz Ihres Bundeslandes geben Auskunft darüber, welche Gruppen welche Berechtigungen bekommen.
 </callout> </callout>
 +
 +Eine Orientierung für die Attributfreigaben bietet auch die Gruppe FIM4L (Federated Identity Management For Libraries) https://www.fim4l.org/ mit ihren Principles and Recommendation.
  
 ===== Beispiel ===== ===== Beispiel =====
Zeile 28: Zeile 30:
 Es soll erreicht werden, dass die ersten vier Gruppen als Angehörige der Einrichtung die Verlagsressourcen nutzen dürfen, Gäste dagegen nicht. Es soll erreicht werden, dass die ersten vier Gruppen als Angehörige der Einrichtung die Verlagsressourcen nutzen dürfen, Gäste dagegen nicht.
  
-==== Attributdefinition im upgegradeten IdP 4.x ==== 
  
-In aktualisierten IdP 4.x mit der alten Syntax/ohne die Attribute Registry machen Sie es so:+==== Attributdefinition ====
  
 <file xml ./conf/attribute-resolver.xml> <file xml ./conf/attribute-resolver.xml>
Zeile 38: Zeile 39:
  <AttributeDefinition xsi:type="Mapped" id="eduPersonAffiliation">  <AttributeDefinition xsi:type="Mapped" id="eduPersonAffiliation">
   <InputDataConnector ref="myLDAP" attributeNames="memberOf"/>   <InputDataConnector ref="myLDAP" attributeNames="memberOf"/>
-   <DisplayName xml:lang="en">Affiliation type</DisplayName> 
-   <DisplayName xml:lang="de">Zugehörigkeit</DisplayName> 
-   <DisplayDescription xml:lang="en">Type of affiliation with Home Organization</DisplayDescription> 
-   <DisplayDescription xml:lang="de">Art der Zugehörigkeit zur Heimateinrichtung</DisplayDescription> 
-  <AttributeEncoder xsi:type="SAML2String" name="urn:oid:1.3.6.1.4.1.5923.1.1.1.1" friendlyName="eduPersonAffiliation" /> 
  
    <!-- default 'affiliate', damit immer mindestens ein Wert vorhanden ist -->    <!-- default 'affiliate', damit immer mindestens ein Wert vorhanden ist -->
Zeile 52: Zeile 48:
    <ValueMap>    <ValueMap>
      <ReturnValue>student</ReturnValue>      <ReturnValue>student</ReturnValue>
-     <SourceValue ignoreCase="true">cn=studiengang.+</SourceValue>+     <SourceValue caseSensitive="false">cn=studiengang.+</SourceValue>
    </ValueMap>    </ValueMap>
    <ValueMap>    <ValueMap>
      <ReturnValue>staff</ReturnValue>      <ReturnValue>staff</ReturnValue>
-     <SourceValue ignoreCase="true">cn=angestellte,.+</SourceValue> +     <SourceValue caseSensitive="false">cn=angestellte,.+</SourceValue> 
-     <SourceValue ignoreCase="true">cn=professoren,.+</SourceValue>+     <SourceValue caseSensitive="false">cn=professoren,.+</SourceValue>
    </ValueMap>    </ValueMap>
  
    <ValueMap>    <ValueMap>
      <ReturnValue>member</ReturnValue>      <ReturnValue>member</ReturnValue>
-     <SourceValue ignoreCase="true">cn=studiengang.+</SourceValue> +     <SourceValue caseSensitive="false">cn=studiengang.+</SourceValue> 
-     <SourceValue ignoreCase="true">cn=angestellte,.+</SourceValue> +     <SourceValue caseSensitive="false">cn=angestellte,.+</SourceValue> 
-     <SourceValue ignoreCase="true">cn=professoren,.+</SourceValue> +     <SourceValue caseSensitive="false">cn=professoren,.+</SourceValue>
-   </ValueMap> +
- </AttributeDefinition> +
- +
- <!-- eduPersonScopedAffiliation aus eduPersonAffiliation bilden --> +
- <AttributeDefinition xsi:type="Scoped" id="eduPersonScopedAffiliation" scope="%{idp.scope}"> +
-   <InputAttributeDefinition ref="eduPersonAffiliation"/> +
-   <DisplayName xml:lang="en">Affiliation type (with institution)</DisplayName> +
-   <DisplayName xml:lang="de">Zugehörigkeit (+ Einrichtung)</DisplayName> +
-   <DisplayDescription xml:lang="en">Type of affiliation with Home Organization with scope</DisplayDescription> +
-   <DisplayDescription xml:lang="de">Art der Zugehörigkeit zur Heimateinrichtung mit Geltungsbereich</DisplayDescription> +
-   <AttributeEncoder xsi:type="SAML2ScopedString" name="urn:oid:1.3.6.1.4.1.5923.1.1.1.9" friendlyName="eduPersonScopedAffiliation" encodeType="false" /> +
- </AttributeDefinition> +
- +
- <!-- eduPersonEntitlement je nach eduPersonAffiliation setzen --> +
- <AttributeDefinition xsi:type="ScriptedAttribute" id="eduPersonEntitlement"> +
-   <InputAttributeDefinition ref="eduPersonAffiliation" /> +
-   <DisplayName xml:lang="en">Entitlement</DisplayName> +
-   <DisplayName xml:lang="de">Berechtigung</DisplayName> +
-   <DisplayDescription xml:lang="en">URI that indicates a set of rights to specific resources</DisplayDescription> +
-   <DisplayDescription xml:lang="de">Zeichenkette, die Rechte für spezifische Ressourcen beschreibt</DisplayDescription> +
-   <AttributeEncoder xsi:type="SAML2String" name="urn:oid:1.3.6.1.4.1.5923.1.1.1.7" friendlyName="eduPersonEntitlement" /> +
-   <Script> +
-          <![CDATA[ +
-              if (eduPersonAffiliation.getValues().contains("member")) { +
-                      eduPersonEntitlement.getValues().add("urn:mace:dir:entitlement:common-lib-terms"); +
-              } +
-           ]]> +
-   </Script> +
- </AttributeDefinition> +
-</file> +
- +
-==== Attributdefinition im IdP 4.x ==== +
- +
-In **Neu**installationen des IdP 4.x ist die Datei übersichtlicher gestaltet: +
- +
-<file xml ./conf/attribute-resolver.xml> +
- +
- <!-- eduPersonAffiliaton aus dem 'memberof' herausholen --> +
-     +
- <AttributeDefinition xsi:type="Mapped" id="eduPersonAffiliation"> +
-  <InputDataConnector ref="myLDAP" attributeNames="memberOf"/> +
- +
-   <!-- default 'affiliate', damit immer mindestens ein Wert vorhanden ist --> +
-   <DefaultValue>affiliate</DefaultValue> +
- +
-   <!-- Mapping der Gruppen aus dem IdM jede Gruppe bekommt eine eigene eduPersonAffiliation +
-   und zusätzlich "member" sofern "Angehörige" im Sinne LHG --> +
- +
-   <ValueMap> +
-     <ReturnValue>student</ReturnValue> +
-     <SourceValue ignoreCase="true">cn=studiengang.+</SourceValue> +
-   </ValueMap> +
-   <ValueMap> +
-     <ReturnValue>staff</ReturnValue> +
-     <SourceValue ignoreCase="true">cn=angestellte,.+</SourceValue> +
-     <SourceValue ignoreCase="true">cn=professoren,.+</SourceValue> +
-   </ValueMap> +
- +
-   <ValueMap> +
-     <ReturnValue>member</ReturnValue> +
-     <SourceValue ignoreCase="true">cn=studiengang.+</SourceValue> +
-     <SourceValue ignoreCase="true">cn=angestellte,.+</SourceValue> +
-     <SourceValue ignoreCase="true">cn=professoren,.+</SourceValue>+
    </ValueMap>    </ValueMap>
  </AttributeDefinition>  </AttributeDefinition>
Zeile 162: Zeile 95:
       <AttributeRule attributeID="eduPersonScopedAffiliation">       <AttributeRule attributeID="eduPersonScopedAffiliation">
         <PermitValueRule xsi:type="OR">         <PermitValueRule xsi:type="OR">
-            <Rule xsi:type="Value" value="member"          ignoreCase="true" /> +            <Rule xsi:type="Value" value="member"          caseSensitive="false" /> 
-            <Rule xsi:type="Value" value="library-walk-in" ignoreCase="true" />+            <Rule xsi:type="Value" value="library-walk-in" caseSensitive="false" />
         </PermitValueRule>         </PermitValueRule>
       </AttributeRule>       </AttributeRule>
     </AttributeFilterPolicy>     </AttributeFilterPolicy>
 </file> </file>
- 
-{{tag>idp4}} 
  • Zuletzt geändert: vor 4 Jahren