Hallo, Am 2014-09-23 08:06, schrieb Thomas Güttler:
wir haben den vagen Wunsch eines Kunden eine Intranetanwendung von uns ans Active Directory anzubinden.
Das hab ich mit openATTIC durch. Die große Schwierigkeit daran ist, zu verstehen was man eigentlich vorhat.
Wunsch: Gemeinsame Passwörter für Windows und die Intranetanwendung.
Das hab ich gemacht, indem ich Django beigebracht habe, gegen PAM zu authentifizieren[0]. PAM macht dann die Drecksarbeit mit Auth gegen LDAP, hauptsächlich weil ich mich so garnicht wie möglich mit Auth gegen LDAP befassen wollte. ;) [0] https://bitbucket.org/openattic/openattic/src/tip/pamauth.py?at=default
Optional: Single-Sign-On.
Dann wirds tricky. Dazu brauchst du zunächst Samba + Winbind, die du in die Domäne joinst (net ads join), damit AD in der Lage ist Kerberos-Tickets für deinen Dienst auszustellen. Kerberos-Tickets sind quasi sowas wie dein Perso in der wirklichen Welt: Ein von einer vertrauenswürdigen third party -- dem AD -- ausgestellter Ausweis, der bestätigt, wer du bist. Beim Domain- Join gibt es ein paar Fallstricke, die wir mittlerweile mit unserem Join-Script[1] abgefangen kriegen, daran könntest du dich also orientieren. Wenn der Teil erstmal läuft, musst du "nur noch" dem Apachen beibringen, Kerberos-Tickets zu verstehen (also mod-auth-kerb passend konfigurieren), und deiner App beibringen dass "wenn REMOTE_USER im env steht, stimmt der". Ganz einfach oder? ;) Ist aber schon saucool wenn du dann einfach auf "Domänen-Login" drücken kannst und bist eingeloggt... [1] https://bitbucket.org/openattic/openattic/src/tip/bin/oaconfig?at=default#cl... Grüße, Michael