Zugriff per AAI
Viele Funktionen im cert-manager können auch nach einem Login über die DFN-AAI genutzt werden. Hierzu müssen Voraussetzungen erfüllt sein.
Voraussetzungen
Viele Funktionen im cert-manager können auch nach einem Login über die DFN-AAI genutzt werden. Hierzu müssen die folgenden Voraussetzungen erfüllt sein:
- In der Verwaltungsoberfläche muss unter ☰→Organizations→<Auswahl>→✎ das Feld
Organization Alias
gesetzt sein.- Wenn kein
Organization Alias
gesetzt ist, senden Sie bitte den entspr. Wert (in der Regel das vom IdP gesendeteschacHomeOrganization
-Attribut) per E-Mail an dfnpca@dfn-cert.de. - Welcher Wert zu setzen ist, können Sie evtl. schon der Ausgabe von https://cert-manager.com/customer/DFN/ssocheck/ entnehmen. Oft entspricht dieser Wert der Haupt-Domain einer Einrichtung, also z.B.
uni-musterstadt.de
. Im Zweifel wenden Sie sich bitte an Ihre haus-interne AAI-Administration.
- Ihr Identity-Provider muss in eduGAIN eingebunden sein (Unter https://met.refeds.org/met/search_service/ können Sie nach Ihrer Einrichtung suchen und sehen, ob diese an eduGAIN teilnimmt.)
- Ihr Identity-Provider muss mindestens die Attribute
schacHomeOrganization
,mail
undeduPersonPrincipalName
(ePPN
) an den Service-Provider von Sectigo ausliefern. - Für eine AttributeFilterPolicy für Ihren Identity-Provider, die die gewünschten Attribute an Sectigo überträgt, siehe https://doku.tid.dfn.de/de:shibidp:config-attributes-tcs
Die Konfiguration erfordert in der Regel die Mithilfe Ihrer AAI-Administration, da oft die Attributfreigaben anzupassen sind und gegebenenfalls ein Entitlement gesetzt werden muss.
Tests
Unter https://cert-manager.com/customer/DFN/ssocheck/ steht ein Test-SP von Sectigo bereit, mit dem die übergebenen Attribute eingesehen werden können.
Die DFN-AAI stellt in der DFN-AAI Testföderation ebenfalls Test-SPs bereit, insbesondere https://testsp3.aai.dfn.de, mit denen die übergebenen Attribute eingesehen werden können. Dabei ist zu beachten, dass sich die lokalen Attribute-Release-Regeln im IdP zwischen dem Sectigo-SP und den Test-SPs der DFN-AAI Testföderation unterscheiden können, und daher die IdP-Konfiguration für Tests sehr genau betrachtet werden muss, um aussagekräftige Testergebnisse zu bekommen.
Umgang mit Multi-Valued E-Mail-Adressen
Der SP von Sectigo unterstützt leider ausschließlich single-valued mail-Attribute.
Wenn Ihr IdP standard-mäßig multi-value mail-Attribute herausgibt, kann folgendermaßen vorgegangen werden:
- Vorhalten eines Feldes „idmcertrequestmail“ im Identitätsmanagement, Befüllen mit der Default-Mail-Adresse
- Definition eines Attributes „singlemail“ im IdP
- Aufstellen einer SP-spezifischen AttributeFilterPolicy
- Mappen des Attributes singlemail auf mail
Definition des Attributs:
<!-- attribute-resolver.xml --> <!-- Definition des zusätzlichen Attributes --> <AttributeDefinition id="singlemail" xsi:type="Simple"> <InputDataConnector ref="myLDAP" attributeNames="idmcertrequestmail"/> </AttributeDefinition>
Die Attribut-Filter werden der Reihe nach abgearbeitet. Falls es wie üblich schon eine allgemeine Freigabe für das E-Mail Attribut gibt, muss diese speziell für den SP cert-manager.com/shibboleth
überschrieben werden:
<!-- attribute-filter.xml --> <!-- Release some attributes to Sectigo Certificate Manager --> <AttributeFilterPolicy id="SectigoCertificateManager"> <PolicyRequirementRule xsi:type="Requester" value="https://cert-manager.com/shibboleth"/> <AttributeRule attributeID="mail"> <DenyValueRule xsi:type="ANY"/> </AttributeRule> <AttributeRule attributeID="singlemail"> <PermitValueRule xsi:type="ANY"/> </AttributeRule> </AttributeFilterPolicy>
Je nach eingesetzter IdP Version müssen an geeigneter Stelle noch die OID + Beschreibungen gesetzt werden:
<bean parent="shibboleth.TranscodingProperties"> <property name="properties"> <props merge="true"> <prop key="id">singlemail</prop> <prop key="transcoder">SAML2StringTranscoder SAML1StringTranscoder</prop> <prop key="saml2.name">urn:oid:0.9.2342.19200300.100.1.3</prop> <prop key="saml1.name">urn:mace:dir:attribute-def:mail</prop> <prop key="displayName.en">E-mail</prop> <prop key="displayName.de">E-Mail</prop> <prop key="displayName.fr">Email</prop> <prop key="displayName.it">E-mail</prop> <prop key="displayName.ja">メールアドレス</prop> <prop key="description.en">E-Mail: Preferred address for e-mail to be sent to this person</prop> <prop key="description.de">E-Mail-Adresse</prop> <prop key="description.de-ch">E-Mail Adresse</prop> <prop key="description.fr">Adresse de courrier électronique</prop> <prop key="description.it">E-Mail: l'indirizzo e-mail preferito dall'utente</prop> <prop key="description.ja">メールアドレス</prop> </props> </property> </bean>