Benutzer-Werkzeuge

Webseiten-Werkzeuge


simplesamlphp_dfn_aai

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
simplesamlphp_dfn_aai [2015/03/19 10:06]
2007
simplesamlphp_dfn_aai [2015/11/26 17:09] (aktuell)
2007 [ldap auth]
Zeile 17: Zeile 17:
   * mail   * mail
   * sn   * sn
 +  * givenName
   * ou   * ou
   * eduPersonTargetedID   * eduPersonTargetedID
Zeile 37: Zeile 38:
  
 ==== Änderungen am Code ==== ==== Änderungen am Code ====
-=== Attribute aus LDAP ===+==== Attribute aus LDAP ====
  
 Ich brauche für die Attributfilter die DN des Nutzers. Und ich möchte nur die erste E-Mail-Adresse aus LDAP haben (bei uns ist das mail-attribut in ldap multivalued). Dazu habe ich folgende Zeilen in der Datei Ich brauche für die Attributfilter die DN des Nutzers. Und ich möchte nur die erste E-Mail-Adresse aus LDAP haben (bei uns ist das mail-attribut in ldap multivalued). Dazu habe ich folgende Zeilen in der Datei
Zeile 53: Zeile 54:
 ===== Konfiguration ===== ===== Konfiguration =====
  
-=== ldap auth ===+==== ldap auth ====
  
 '''​metadata/​saml20-idp-hosted.php'''​ '''​metadata/​saml20-idp-hosted.php'''​
Zeile 108: Zeile 109:
  
 </​code>​ </​code>​
 +
 +
  
 '''​config/​ldap.php'''​ '''​config/​ldap.php'''​
Zeile 122: Zeile 125:
  */  */
  #'​auth.ldap.dnpattern' ​ => '​uid=%username%,​dc=feide,​dc=no,​ou=feide,​dc=uninett,​dc=no',​  #'​auth.ldap.dnpattern' ​ => '​uid=%username%,​dc=feide,​dc=no,​ou=feide,​dc=uninett,​dc=no',​
- '​auth.ldap.hostname' ​  ​=> ​array('​ldapmaster.fh-schmalkalden.de','​ldapslave.fh-schmalkalden.de'​),+ '​auth.ldap.hostname' ​  => '​ldapmaster.fh-schmalkalden.de ldapslave.fh-schmalkalden.de',​
  '​auth.ldap.attributes'​ => array('​gidNumber','​mail','​sn','​givenName','​ou','​uid','​employeeType','​organizationalStatus'​),​  '​auth.ldap.attributes'​ => array('​gidNumber','​mail','​sn','​givenName','​ou','​uid','​employeeType','​organizationalStatus'​),​
  '​auth.ldap.enable_tls'​ => TRUE,  '​auth.ldap.enable_tls'​ => TRUE,
Zeile 154: Zeile 157:
 </​code>​ </​code>​
  
-=== saml2 idp ===+==== saml2 und saml1.1 IdP ====
  
 '''​config/​config.php'''​ '''​config/​config.php'''​
 +
  
 <​code>​ <​code>​
 +...
         '​enable.saml20-idp' ​            => true,         '​enable.saml20-idp' ​            => true,
         '​enable.shib13-idp' ​            => true,         '​enable.shib13-idp' ​            => true,
Zeile 164: Zeile 169:
         '​enable.wsfed-sp' ​              => false,         '​enable.wsfed-sp' ​              => false,
         '​enable.authmemcookie'​ => false,         '​enable.authmemcookie'​ => false,
 +...        ​
 </​code>​ </​code>​
  
-=== Attribute DFN AAI bereitstellen ===+==== Attribute DFN AAI bereitstellen ​====
  
 Einige Attribute fehlen in der attributeMap! Einige Attribute fehlen in der attributeMap!
Zeile 289: Zeile 295:
  
 Dieses Update wird dann später per cron-job automatisch durchgeführt. Dieses Update wird dann später per cron-job automatisch durchgeführt.
-Diese Variante NUR ZUM TEST, später wird ein eigenes Verzeichnis erstellt und dieMetadatan ​werden per cronjob regelmäßig geupdated. Siehe letzter Absatz.+Diese Variante NUR ZUM TEST, später wird ein eigenes Verzeichnis erstellt und die Metadatan ​werden per cronjob regelmäßig geupdated. Siehe letzter Absatz.
  
 ===== Test mit testsp.aai.dfn.de ===== ===== Test mit testsp.aai.dfn.de =====
  
-=== Eingabe der Metadaten des IdP beim DFN-AAI-Tool ===+==== Eingabe der Metadaten des IdP beim DFN-AAI-Tool ​====
  
   * neuen IdP anlegen (Verwaltungstool DFN-AAI)   * neuen IdP anlegen (Verwaltungstool DFN-AAI)
Zeile 303: Zeile 309:
   * unbedingt den Scope eintragen (bei uns fh-schmalkalden.de),​ sonst können die scoped-Attribute nicht richtig interpretiert werden (Anmelden am staffonly nicht möglich)   * unbedingt den Scope eintragen (bei uns fh-schmalkalden.de),​ sonst können die scoped-Attribute nicht richtig interpretiert werden (Anmelden am staffonly nicht möglich)
  
-=== Test der Authentifizierung ===+==== Test der Authentifizierung ​====
  
-==== SAML2 ====+=== SAML2 ===
  
-zunächst könnte man das debugging einschalten,​ die SAML-Antwort an den SP wird dann angezeigt: 
  
-'''​config/​config.php''':​ +https://​testsp2.aai.dfn.de/​secure-all
- +
-<​code>​ +
-       '​debug' ​                ​=> ​     TRUE, +
-</​code>​ +
- +
-dann weiter mit https://​testsp2.aai.dfn.de/​secure-all+
  
 oder zusätzlich als Member oder zusätzlich als Member
Zeile 321: Zeile 320:
 https://​testsp2.aai.dfn.de/​secure-memberonly https://​testsp2.aai.dfn.de/​secure-memberonly
  
-==== SAML1.1 (Shib13) ​====+=== SAML1.1 (Shib13) ===
  
 https://​testsp.aai.dfn.de/​secure-all https://​testsp.aai.dfn.de/​secure-all
Zeile 330: Zeile 329:
  
 siehe http://​simplesamlphp.org/​docs/​1.10/​simplesamlphp-automated_metadata siehe http://​simplesamlphp.org/​docs/​1.10/​simplesamlphp-automated_metadata
 +
  
 <note important>​Performanceprobleme mit xmlseclibs.php</​note>​ <note important>​Performanceprobleme mit xmlseclibs.php</​note>​
Zeile 337: Zeile 337:
   PHP Fatal error: ​ Maximum execution time of 600 seconds exceeded in /​var/​simplesamlphp/​lib/​xmlseclibs.php on line 770   PHP Fatal error: ​ Maximum execution time of 600 seconds exceeded in /​var/​simplesamlphp/​lib/​xmlseclibs.php on line 770
  
-Ich hatte die max. exec time von php von ursprünlich 30sec schon auf 600sec erhöht. ​Dazu dieser Hinweis:+Dazu dieser Hinweis:
  
 https://​simplesamlphp.org/​metaprocessing https://​simplesamlphp.org/​metaprocessing
Zeile 348: Zeile 348:
  
  
-===== Änderungen am Code für redundanz ldap-server ===== 
- 
-  * simplesamlphp-1.10 
-  * php-5.3 (wegen ldap-network-timeout-option notwendig) 
- 
-Ich habe in der config/​ldap.php aus einem String ein Array gemacht: 
- 
-<​code>​ 
-... 
-'​auth.ldap.hostname' ​  => array('​ldapmaster.fh-entenhausen.de',​ 
-                                        '​ldapslave.fh-entenhausen.de'​),​ 
-... 
-</​code>​ 
- 
-und am Code was geändert: 
- 
-lib/​SimpleSAML/​Auth/​LDAP.php:​ 
- 
-<code lang="​diff">​ 
-58c58 
-< '​host=\''​ . $hostname . 
---- 
-> '​host=\''​ . $hostname[0] . 
-76,79c76,84 
-< $this->​ldap = @ldap_connect($hostname,​ $port); 
-< if ($this->​ldap == FALSE) 
-< throw new $this->​makeException('​Library - LDAP __construct():​ Unable to connect to \''​ . $hostname . '​\'',​ ERR_INTERNAL);​ 
- 
---- 
->         ​$this->​ldap = @ldap_connect($hostname[1]);​ 
->         ​ldap_set_option($this->​ldap,​ LDAP_OPT_NETWORK_TIMEOUT,​ 3); 
->         if (!($rr = @ldap_bind($this->​ldap))) { 
->            $this->​ldap = @ldap_connect($hostname[0]);​ 
->            ldap_set_option($this->​ldap,​ LDAP_OPT_NETWORK_TIMEOUT,​ 3); 
->            if (!($rr = @ldap_bind($this->​ldap))) { 
->              throw $this->​makeException('​Library - LDAP __construct():​ Unable to connect to the ldap-server!',​ ERR_INTERNAL);​ 
->            }  
->         } 
-98c103 
-< if (!preg_match("/​ldaps:/​i",​ $hostname) and $enable_tls) 
---- 
-> if ($enable_tls) 
- 
-</​code>​ 
  
 +===== Speicherung der Micro-Approve-Nutzerdaten in einer Datenbank =====
  
-Bei Ausfall eines Ldap-Servers wird gegen den zweiten authentifiziert.+https://​simplesamlphp.org/​docs/​stable/​consent:​consent
  
  
simplesamlphp_dfn_aai.1426755964.txt.gz · Zuletzt geändert: 2015/03/19 10:06 von 2007