Mam apacza 2.2 na ubuntu 10.04
Robie na nim autoryzację kerberosową z AD ( SSO )
Generalnie katalog zabezpieczony kerberosem wpuszcza użytkowników zautoryzowanych na stacji roboczej do AD.
Działa to dla IE i FF.
Wymagania są takie aby tylko skrypt autoryzujący był zabezpieczony ( minimalizowanie obciążenia AD ) a pozostała część serwisu jest poza kerberosem.
Wykombinowałem sobie w takim razie, że uzytkownik po wejsciu na stronę zostanie przekierowany do katalogu /SSO/ tam skrypt go zautoryzuje i przekieruje z powrotem. I to działa.
Może jednak zdażyć się sytuacja, że użytkownik nie będzie miał konta w AD i wtedy cała koncepcja się sypie, bo skrypt znajdujący się w /SSO/ się nie wykona ( katalog jest zabezpieczony ) i nie spowoduje zwrotnego przekierowania.
Jak wykrywać sytuację, że użytkownik jest z poza AD ?
Zamieszczam konfigurację virtualki
<IfModule mod_ssl.c> <VirtualHost 192.168.1.12:443> ServerAdmin webmaster@localhost ServerName test.kerb DocumentRoot /srv/www/html/kerberos/public <Directory /srv/www/html/kerberos/public/> Options FollowSymLinks Multiviews AllowOverride All Order allow,deny allow from all </Directory> <Directory /srv/www/html/kerberos/public/sso/> SSLRequireSSL AuthType Kerberos AuthName "CaMan" KrbMethodNegotiate On KrbMethodK5Passwd Off KrbServiceName HTTP/test.kerbt@TEST.KERB KrbAuthRealms TEST.KERB Krb5KeyTab /etc/krb5.keytab require valid-user </Directory> </VirtualHost> </IfModule>
Pozdrawiam
Gaza