Ergebnis 1 bis 9 von 9

Thema: Active Directory - Usersynchronisation

  1. #1
    Contao-Nutzer
    Registriert seit
    01.07.2009.
    Beiträge
    2

    Standard Active Directory - Usersynchronisation

    Hallo Zusammen,

    wir bauen gerade in unserem Unternehmen ein Intranet auf Basis von Typolight auf.
    Die gesamt Benutzerverwaltung wird bei uns über eine Active Directory (Windows Server 2008) gesteuert.
    Gibt es eine Möglichkeit die Benutzer und Gruppeneinstellung automatisch mit Typolight zu synchronisieren?

    Mit freundlichen Grüßen

    Jan Neycken

  2. #2
    Contao-Urgestein Avatar von Toflar
    Registriert seit
    15.06.2009.
    Beiträge
    4.467
    Partner-ID
    8667
    User beschenken
    Wunschliste

    Standard

    TL ist beliebig erweiterbar. Das heisst, du musst einen Weg finden, wie du Daten exportieren und importieren kannst...

    Solche Spezialanfertigungen sind äusserst komplex denke ich. Ich würde mal nach Möglichkeiten und Kosten bei den TL-Partnern anfragen
    Contao Core-Entwickler @terminal42 gmbh
    Wir sind Contao Premium-Partner!
    Für Individuallösungen kannst du uns gerne kontaktieren.
    PS: Heute schon getrakked?

  3. #3
    Contao Core-Team
    Association Vorstand
    Avatar von andreas.schempp
    Registriert seit
    15.06.2009.
    Ort
    Lyss
    Beiträge
    5.613
    Partner-ID
    8667
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo Jan,

    Wie toflar schon sagt, möglich ist alles

    Die Frage ist mal was du unter "synchronisieren" verstehst. Es wäre natürlich möglich eine Datenbank-Synchronisation oder ähnliches im Hintergrund - unabhängig von TYPOlight - zu machen. Allerdings wohl nicht ganz einfach.

    Was TYPOlight kann, ist beim nicht-finden eines Benutzer+Passwortes, dieses in einer andere Datenbank nachsehen (bei entsprechender Entwicklung). Das ist allerdings keine Synchronisation, die Frage ist ob sich die Daten im Active Directory ändern und/oder ob der Benutzer über TL seine Daten ändern können soll.
    terminal42 gmbh
    Wir sind Contao Premium-Partner! Für Modulwünsche oder Programmierungen kannst du uns gerne kontaktieren.
    Hilfe für Isotope eCommerce kann man auch kaufen: Isotope Circle

  4. #4
    Contao-Nutzer Avatar von matze
    Registriert seit
    19.06.2009.
    Ort
    Amberg
    Beiträge
    236

    Standard

    ich glaube, man kann das Active Directory via LDAP abfragen. Oder man kann zumindest Adapter im AD installieren, die das können.
    Dann kannst du wieder recht einfach eine Erweiterung für TL schreiben, die das AD abfragt.

  5. #5
    Contao-Nutzer
    Registriert seit
    01.07.2009.
    Beiträge
    2

    Standard

    Hallo,

    danke für die schnellen Antworten!

    Haben versucht die Active Directory über LDAP anzusprechen, jedoch nicht mit PHP, sondern wir haben ein kleines Tool im Netz gefunden. Also LDAP wird unterstützt.

    @Andreas: Ich meine den Import, falls der User nicht gefunden wird.

    Wir wollen folgende Daten in die Typolight-MySql-Datenbank importieren:
    • Benutzername
    • Passwort
    • Gruppenzugehörigkeiten


    Da ich nicht viel Erfahrung in PHP habe, muss ich mir alle Informationen erst recherchieren, also bitte Nachsicht falls eine dumme Frage kommt :

    Hier habe ich eine !?Funktion!? entdeckt für den LDAP-Import:
    http://de.contaowiki.org/DevelopmentHooks
    So wie ich das sehe, ist unter "importUser" genau die Funktion eingesetzt, die ich brauche. Ich stelle mir nun vor, dass ich ein eigenes Modul schreibe. Dort definiere ich, was passiert, wenn die Funktion "importUserFromLdap" aufgerufen wird! Liege ich da richtig?

    Danke im Voraus!

    Mit freundlichen Grüßen

    Jan Neycken

  6. #6
    Contao-Nutzer
    Registriert seit
    20.06.2009.
    Ort
    Rheinbach
    Beiträge
    86

    Standard

    Du wirst das AD Kennwort nicht exportieren können bzw. per LDAP auslesen können.
    Geändert von Toffa (03.07.2009 um 14:44 Uhr)

  7. #7
    Contao Core-Team
    Association Vorstand
    Avatar von andreas.schempp
    Registriert seit
    15.06.2009.
    Ort
    Lyss
    Beiträge
    5.613
    Partner-ID
    8667
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo Jan,

    Der Hook ist genau was ich meinte. Noch zu beachten dass der erst ab 2.7 funktioniert, ich hoffe ihr setzt das ein. Allerdings hat Toffa recht, du kannst das Passwort im Active Directory ziemlich sicher nicht auslesen, das ist aber nötig um es in die TYPOlight-Datenbank zu schreiben.

    Im Prinzip gibt es nur eine einfache Lösung, welche auch die sauberste ist: Du musst ein eigenes Login-Modul schreiben, welches nicht in der TL-Datenbank authentifiziert sondern über LDAP, und dann die Benutzer-Session generiert. Nicht ganz einfach, aber sicherlich möglich (Die Recall-Erweiterung macht sowas ähnliches).
    terminal42 gmbh
    Wir sind Contao Premium-Partner! Für Modulwünsche oder Programmierungen kannst du uns gerne kontaktieren.
    Hilfe für Isotope eCommerce kann man auch kaufen: Isotope Circle

  8. #8
    AG CMS-Garden
    Contao-Urgestein
    Avatar von lindesbs
    Registriert seit
    05.06.2009.
    Ort
    Oer-Erkenschwick
    Beiträge
    4.154
    Partner-ID
    keine
    User beschenken
    Wunschliste

    Standard

    Willst du wirklich eine Synchronisierung beider DB´s ?

    Wie sollte dort nach Frontend und Backend Benutzer getrennt werden ?

    Machbar waere auch eine eigene DB_MYSQL DB Zugriffsklasse. Die den execute String analysiert. Wenn nach tl_member oder tl_user (respektive deren groups) gefragt wird, kannst du den AD befragen, und den Database_Result deine Ergebnisse uebergeben.

    Sollte auch gehen. Dann hast du nicht zwei DBs zu verwalten und synchron zu halten.

    Vorteil : Du kannst in der localconfig.php deine DB Treiberklasse anpassen und waerest somit updatesicher.
    von Willi Voltz aus PR 500: Henry George sagte einmal: »Kultur ist Zusammenarbeit.«


    Contao-Hosting: begeisterter Uberspace-Nutzer

  9. #9
    AG CMS-Garden
    Contao-Urgestein
    Avatar von lindesbs
    Registriert seit
    05.06.2009.
    Ort
    Oer-Erkenschwick
    Beiträge
    4.154
    Partner-ID
    keine
    User beschenken
    Wunschliste

    Standard

    Habs gerade ausprobiert, geht ganz einfach.

    Kopiere dir deine DB_MYSQL.php in den system/drivers nach DB_MYSQL_LDAP.php

    Aendere in deiner localconfig.php folgendes ab :
    Code:
    $GLOBALS['TL_CONFIG']['dbDriver'] = 'MYSQL_LDAP';
    Bennene alle drei Klassen um mit dem LDAP Zusatz (also DB_Mysql_LDAP,DB_Mysql_LDAP_Statement,DB_Mysql_LDA P_Result) und aendere in die Function fetch_assoc in folgendes um :

    Code:
    protected function fetch_assoc()
    	{
    		$retArray = @mysql_fetch_assoc($this->resResult);
    		
    		if ((strpos($this->strQuery,"tl_user")!==false) && (is_array($retArray)))
    		{
    			if (array_key_exists('name',$retArray))
    				$retArray['name'] .="###";
    		}
    		
    		return $retArray;
    	}
    Nun werden alle Namen, welche aus der DB geholt werden, mit einem Zusatz "###" versehen.

    Natuerlich musst du noch fetch_row anpassen.
    Auch solltest Du kontrolllieren, auf ein SELECT, DELETE oder UPDATE.

    Aber so kannst du auf einfache Weise dem TL andere Daten unterschieben.
    von Willi Voltz aus PR 500: Henry George sagte einmal: »Kultur ist Zusammenarbeit.«


    Contao-Hosting: begeisterter Uberspace-Nutzer

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. Antworten: 20
    Letzter Beitrag: 20.08.2016, 13:00
  2. Ändern von 'Directory owner'
    Von Oden im Forum Installation / Update
    Antworten: 11
    Letzter Beitrag: 29.02.2012, 23:52
  3. minicalender BG vom active !?!?
    Von sfx im Forum Layout / Templates / Holy Grail
    Antworten: 4
    Letzter Beitrag: 04.11.2010, 20:09
  4. CSS a:active
    Von koko im Forum Layout / Templates / Holy Grail
    Antworten: 7
    Letzter Beitrag: 23.12.2009, 09:16

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •