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-tou [2020/12/07 15:59] – [Benutzer-Einwilligung zur Attributfreigabe (User Consent)] Wolfgang Pempede:shibidp:config-tou [2022/02/28 08:38] (aktuell) – Ergänzung um messages.properties Silke Meyer
Zeile 8: Zeile 8:
 ===== Aktivierung der Nutzungsbedingungen ===== ===== Aktivierung der Nutzungsbedingungen =====
  
-Mit der folgenden Konfiguration erreichen Sie, dass die Nutzer*innen bei der erstmaligen Anmeldung über den IdP und bei Änderungen an den Nutzungsbedingungen informiert und um Zustimmung gebeten werden.+Mit der folgenden Konfiguration erreichen Sie, dass die Nutzer*innen bei der erstmaligen Anmeldung über den IdP und bei Änderungen an den Nutzungsbedingungen informiert und um Zustimmung gebeten werden. Die Nutzungsbedingungen aktivieren Sie in folgenden Schritten: 
  
-Die Nutzungsbedingungen aktivieren Sie in zwei Schritten+**Ab dem IdP 4.1.0** müssen Sie zunächst das [[https://wiki.shibboleth.net/confluence/display/IDP4/ConsentConfiguration|Intercept Consent-Modul aktivieren]], damit Sie die erste Datei überhaupt haben. Dieser Schritt ist bis IdP 4.0.1 nicht nötig.<code bash>bin/module.sh -t idp.intercept.Consent || bin/module.sh -e idp.intercept.Consent</code>
  
-Erstens modifizieren Sie zwei Stellen in der Datei ''./conf/intercept/consent-intercept-config.xml'':+Dann modifizieren Sie die Datei ''./conf/intercept/consent-intercept-config.xml'': 
 + 
 +**Vor IdP 4.1.0:**
  
 <file xml ./conf/intercept/consent-intercept-config.xml> <file xml ./conf/intercept/consent-intercept-config.xml>
Zeile 34: Zeile 36:
 </file> </file>
  
-und zweitens modifizieren Sie die beiden SSO-Zeilen in: +**Ab IdP 4.1.0:** 
- +<file xml ./conf/intercept/consent-intercept-config.xml> 
-<file xml ./conf/relying-party.xml>+ ...
     <!--     <!--
-    Default configuration, with default settings applied for all profiles, and enables +    Terms of use is driven by a lookup function returning a key into messages/consent-messages.properties 
-    the attribute-release consent flow.+ 
 +    The default mapping returns the relying party / SP name as the key. The second example below 
 +    demonstrates use of a custom mapping table from the relying party name to the key to use.
     -->     -->
 +
 +    <!-- bean einfügen, das die statischen Terms-Of-Use aus consent-messages.properties referenziert -->
 +    <bean id="shibboleth.consent.terms-of-use.Key" class="com.google.common.base.Functions" factory-method="constant">
 +        <constructor-arg value="my-terms"/>
 +    </bean>
 +
 +    <!-- ...
 +</file>
 +
 +Zweitens modifizieren Sie das SAML2.SSO-Profil in ''./conf/relying-party.xml''. Das SAML1-Profil Shibboleth.SSO wird nicht mehr benötigt. Falls Sie auf die Idee kommen, es einzukommentieren, muss dort dieselbe Änderung gemacht machen, wie hier im Beispiel:
 +
 +<file xml ./conf/relying-party.xml>                
 +    <!-- Default configuration, with default settings applied for all profiles. -->
     <bean id="shibboleth.DefaultRelyingParty" parent="RelyingParty">     <bean id="shibboleth.DefaultRelyingParty" parent="RelyingParty">
         <property name="profileConfigurations">         <property name="profileConfigurations">
             <list>             <list>
-                <!-- Shibboleth-SSO default-Zeile deaktivieren  +                <!-- SAML 1.1 and SAML 2.0 AttributeQuery are disabled by default. --> 
-                <bean parent="Shibboleth.SSO" p:postAuthenticationFlows="attribute-release" /> --> +                <!-- 
-                <!-- und ersetzen durch --> +                <bean parent="Shibboleth.SSO" p:postAuthenticationFlows="#{ {'terms-of-use', 'attribute-release'} }"/>
-                <bean parent="Shibboleth.SSO" p:postAuthenticationFlows="#{ {'terms-of-use', 'attribute-release'} }" />+
                 <ref bean="SAML1.AttributeQuery" />                 <ref bean="SAML1.AttributeQuery" />
                 <ref bean="SAML1.ArtifactResolution" />                 <ref bean="SAML1.ArtifactResolution" />
-                <!-- SAML2-SSO default-Zeile deaktivieren +                --> 
-                <bean parent="SAML2.SSO" p:postAuthenticationFlows="attribute-release" /> --> +                <!-- SAML2.SSO Standard-Zeile erweitern: -->
-                <!-- und ersetzen durch -->+
                 <bean parent="SAML2.SSO" p:postAuthenticationFlows="#{ {'terms-of-use', 'attribute-release'} }" />                 <bean parent="SAML2.SSO" p:postAuthenticationFlows="#{ {'terms-of-use', 'attribute-release'} }" />
-                <!-- danach alles lassen wie es ist --> 
                 <ref bean="SAML2.ECP" />                 <ref bean="SAML2.ECP" />
-                <ref bean="...+                <ref bean="SAML2.Logout" /> 
 +                <!-- 
 +                <ref bean="SAML2.AttributeQuery" /> 
 +                --> 
 +                <ref bean="SAML2.ArtifactResolution" /> 
 +                <ref bean="Liberty.SSOS" /> 
 +            </list> 
 +        </property> 
 +    </bean>                       
 </file> </file>
 Starten Sie Tomcat neu: Starten Sie Tomcat neu:
Zeile 62: Zeile 84:
 root@idp:~# systemctl restart tomcat9 root@idp:~# systemctl restart tomcat9
 </code> </code>
 +
 +Den eigentlichen Text der Nutzungsbedingungen konfigurieren Sie in ''./messages/messages.properties'' bzw. ''./messages/messages_de.properties'':<file properties ./messages/messages.properties>
 +my-terms     = my-tou
 +my-tou.title = Example Terms of Use
 +my-tou.text  = This is an example Terms of Use
 +</file>
 +
 +Nach Änderungen im ''messages''-Ordner müssen Sie die Datei ''./war/idp.war'' erneuern lassen: ''./bin/build.sh''
  
 ===== Dauerhafte Einsehbarkeit der ToU ===== ===== Dauerhafte Einsehbarkeit der ToU =====
Zeile 118: Zeile 148:
  
 <callout color="#ff9900" title="EU-DSGVO"> <callout color="#ff9900" title="EU-DSGVO">
-Falls Sie dem [[de:shibidp3consent_dsgvo|Beispiel für eine EU-DSGVO-konforme Konfiguration des User Consent Moduls]] folgen, finden Sie dort eine angepasste Datei ''tou.jsp''.+Falls Sie dem [[de:shibidp:config-consent-dsgvo|Beispiel für eine EU-DSGVO-konforme Konfiguration des User Consent Moduls]] folgen, finden Sie dort eine angepasste Datei ''tou.jsp''.
 </callout> </callout>
  
Zeile 131: Zeile 161:
 Weiterführende Informationen finden Sie im [[https://wiki.shibboleth.net/confluence/display/IDP4/ConsentConfiguration|Shibboleth Wiki]]. Weiterführende Informationen finden Sie im [[https://wiki.shibboleth.net/confluence/display/IDP4/ConsentConfiguration|Shibboleth Wiki]].
  
-Per Default ist auf der Seite, auf der die zu übertragenden Attribute angezeigt werden, der Radiobutton aktiv, der die nochmalige Anzeige der Attribute beim nächsten Zugriff auf den jeweiligen SP deaktiviert. Sollte dies aus Datenschutzrechtlichen Gründen nicht gewollt sein, kann durch einen Eingriff in die Datei ''./views/intercept/attribute-release.vm'' erreicht werden, dass die Option voreingestellt ist, die zu übertragenden Attribute auch beim nächsten Mal angezeigt zu bekommen. \\ +Per Default ist auf der Seite, auf der die zu übertragenden Attribute angezeigt werden, der Radiobutton aktiv, der die nochmalige Anzeige der Attribute beim nächsten Zugriff auf den jeweiligen SP deaktiviert. Sollte dies aus datenschutzrechtlichen Gründen nicht gewollt sein, kann durch einen Eingriff in die Datei ''./views/intercept/attribute-release.vm'' erreicht werden, dass die Option voreingestellt ist, die zu übertragenden Attribute auch beim nächsten Mal angezeigt zu bekommen. \\ 
 Hierzu muss jeweils die Zeile  Hierzu muss jeweils die Zeile 
   <input id="_shib_idp_doNotRememberConsent" type="radio" name="_shib_idp_consentOptions" value="_shib_idp_doNotRememberConsent">   <input id="_shib_idp_doNotRememberConsent" type="radio" name="_shib_idp_consentOptions" value="_shib_idp_doNotRememberConsent">
 in in
   <input id="_shib_idp_doNotRememberConsent" type="radio" name="_shib_idp_consentOptions" value="_shib_idp_doNotRememberConsent" checked>    <input id="_shib_idp_doNotRememberConsent" type="radio" name="_shib_idp_consentOptions" value="_shib_idp_doNotRememberConsent" checked> 
 +
 +\\
  
 und  und 
Zeile 144: Zeile 176:
 geändert werden. geändert werden.
  
-{{tag>idp4 tutorial tou nutzungsbedingungen consent}}+====== Attribute ohne Personenbezug vom User Consent ausnehmen ====== 
 +Attribute, die reine Verwaltungsinformationen ohne Personenbezug wie z.B. Level of Assurance transportieren, können ggf. vom User Consent ausgenommen werden:  
 +<file xml ./conf/intercept/consent-intercept-config.xml> 
 + ... 
 +    <util:set id="shibboleth.consent.attribute-release.IgnoredAttributeIDs"> 
 +        <value>eduPersonAssurance</value> 
 +    </util:set> 
 + ... 
 +</file> 
 + 
 +{{tag>idp4 tutorial tou nutzungsbedingungen consent included-in-ansible}}
  • Zuletzt geändert: vor 3 Jahren