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
Nächste ÜberarbeitungBeide Seiten der Revision
de:shibidp:config-storage [2020/05/13 16:14] – ↷ Links angepasst weil Seiten im Wiki verschoben wurden Silke Meyerde:shibidp:config-storage [2021/05/05 15:02] Silke Meyer
Zeile 1: Zeile 1:
 +<-  de:shibidp:config-tou|Nutzungsbedingungen ^ de:shibidp:uebersicht|Überblick: Tutorial zur IdP-Inbetriebnahme ^ de:shibidp:config-slo|Single Logout ->
 ~~NOTOC~~ ~~NOTOC~~
-====== Server-Side Storage ======+====== Server-Side Storage und persistentId ======
 {{INLINETOC 2}} {{INLINETOC 2}}
  
Zeile 171: Zeile 172:
  
 ==== Generierung und Speicherung ==== ==== Generierung und Speicherung ====
-Das gewählte Quellattribut legen Sie in ''./conf/saml-nameid.properties'' fest: Schauen Sie in ''.conf/attribute-resolver.xml'' nach, welche "id" das Quellattribut hat und tragen Sie sie hier ein. Es wird //nicht// der originale Attribut-Name aus dem IdM verwendet! Der Hash sollte möglichst lang und beliebig sein und mit niemandem geteilt werden. Schließlich stellen Sie hier noch ein, dass die persistenIds in der MySQL-Datenbank gespeichert werden sollen.+ 
 +Das gewählte Quellattribut legen Sie in ''./conf/saml-nameid.properties'' fest: Schauen Sie in ''./conf/attribute-resolver.xml'' nach, welche "id" das Quellattribut hat und tragen Sie sie hier ein. Es wird //nicht// der originale Attribut-Name aus dem IdM verwendet! Hier stellen Sie auch ein, dass die persistentIds in der MySQL-Datenbank gespeichert werden sollen.
  
 <file properties /opt/shibboleth-idp/conf/saml-nameid.properties> <file properties /opt/shibboleth-idp/conf/saml-nameid.properties>
 idp.persistentId.sourceAttribute = uid idp.persistentId.sourceAttribute = uid
 # idp.persistentId.useUnfilteredAttributes = true # idp.persistentId.useUnfilteredAttributes = true
-# Do *NOT* share the salt with other people, it's like divulging your private key. 
-# idp.persistentId.algorithm = SHA 
-idp.persistentId.salt = MöglichstBeliebigUndGeHeim-mindestens-16bytes 
  
 # To use a database, use shibboleth.StoredPersistentIdGenerator # To use a database, use shibboleth.StoredPersistentIdGenerator
Zeile 184: Zeile 183:
 # For basic use, set this to a JDBC DataSource bean name: # For basic use, set this to a JDBC DataSource bean name:
 idp.persistentId.dataSource = shibboleth.MySQLDataSource idp.persistentId.dataSource = shibboleth.MySQLDataSource
 +
 </file> </file>
 +
 +Der Salt-Hash, mit dem die persistentIds generiert werden, wird aus Sicherheitsgründen in der zugriffsbeschränkten Passwortdatei ''./credentials/secrets.properties'' hinterlegt. Er sollte möglichst lang und beliebig sein und mit niemandem geteilt werden.
 +
 +<file properties /opt/shibboleth-idp/credentials/secrets.properties>
 +idp.persistentId.salt = my-very-very-long-hash
 +
 +</file>
 +
  
 ==== Generator anschalten ==== ==== Generator anschalten ====
Zeile 228: Zeile 236:
 Meist sind Usernamen in IdM-Systemen unabhängig von Groß- und Kleinschreibung: Nutzer*innen können ihre Anmeldenamen sowohl groß, als auch klein schreiben und sich damit erfolgreich anmelden. Die IdP-Datenbank unterscheidet jedoch zwischen Groß- und Kleinschreibung. Wir empfehlen daher, alle Usernamen im IdP in Kleinbuchstaben zu verarbeiten: Meist sind Usernamen in IdM-Systemen unabhängig von Groß- und Kleinschreibung: Nutzer*innen können ihre Anmeldenamen sowohl groß, als auch klein schreiben und sich damit erfolgreich anmelden. Die IdP-Datenbank unterscheidet jedoch zwischen Groß- und Kleinschreibung. Wir empfehlen daher, alle Usernamen im IdP in Kleinbuchstaben zu verarbeiten:
  
 +=== bis IdP 4.0.1 ===
 <file xml ./conf/c14n/simple-subject-c14n-config.xml> <file xml ./conf/c14n/simple-subject-c14n-config.xml>
    ...    ...
    <util:constant id="shibboleth.c14n.simple.Lowercase" static-field="java.lang.Boolean.TRUE"/>    <util:constant id="shibboleth.c14n.simple.Lowercase" static-field="java.lang.Boolean.TRUE"/>
    ...    ...
 +</file>
 +
 +=== ab IdP 4.1.0 ===
 +<file properties ./conf/c14n/subject-c14n.properties>
 +idp.c14n.simple.lowercase = true
 +</file>
 +
 +===== Data Connector =====
 +Stellen Sie sicher, dass Ihre ''./conf/attribute-resolver.xml'' unten bei den Data Connectors einen Abschnitt für die Datenbank enthält. Er kann dann als ''InputDataConnector'' in Attribut-Definitionen verwendet werden, in denen die persistentId verwendet werden soll (z.B. für die [[de:common_attributes#a17|samlPairwiseID]] (Wert der persistentId + Scope)).
 +
 +<file xml ./conf/attribute-resolver.xml>
 +    <DataConnector id="StoredId"
 +        xsi:type="StoredId"
 +        generatedAttributeID="persistentId"
 +        salt="%{idp.persistentId.salt}">
 +        <InputAttributeDefinition ref="%{idp.persistentId.sourceAttribute}" />
 +        <BeanManagedConnection>shibboleth.MySQLDataSource</BeanManagedConnection>
 +    </DataConnector>
 </file> </file>
  
Zeile 317: Zeile 344:
 Falls die persistentId nur an ausgewählte SPs übertragen werden soll, so finden sich [[de:shibidp:config-pidspecials|hier einige Beispiele]]. Falls die persistentId nur an ausgewählte SPs übertragen werden soll, so finden sich [[de:shibidp:config-pidspecials|hier einige Beispiele]].
  
-**Weiter geht es mit [[:de:shibidp:config-slo|Single Logout]]. ** +{{tag>idp4 tutorial persistentid storage datenbank session included-in-ansible}}
- +
-{{tag>idp4 tutorial}}+
  • Zuletzt geändert: vor 3 Wochen