2016-05-30 6 views
0

Ich wurde aufgefordert, nahtlose SSO-Authentifizierung gegen Active Directory für eine weblogic Web-basierte Anwendung zu implementieren. Nach vielen Tests und Experimenten habe ich es geschafft, die gesamte Kette wie erforderlich zu arbeiten. Benutzer, die sich von einem Windows-verwalteten PC aus anmelden und IE verwenden, können sich nahtlos bei der Webanwendung anmelden.SSO-Authentifizierung/Active Directory/Weblogic/Apache-Proxy-Probleme

Danach wurde ein Apache zwischen dem Webbrowser und Weblogic konfiguriert und installiert, um HTTPS -> HTTP-Terminierung durchzuführen. Sobald dies geschehen war, beendete der Browser die nahtlose Anmeldung - obwohl die grundlegende Authentifizierung funktionierte;

Untersuchung weiter, bemerkte ich, dass die Authorization-Header nicht an Weblogic weitergeleitet wurde, die begründet, warum die Authentifizierung nicht stattfindet. Beachten Sie, dass der Apache-Server, den ich verwende, 2.2 ist.

Weiß jemand, ob Apache den Authorization-Header explizit entfernt? Ich habe auch versucht, die Anfrage maximale Größe 30KB bei steigenden, dass das Problem

Danke war

+0

Haben Sie das Modul 'libapache-mod-auth-kerb' aktiviert? Und ich habe Apache SSO mit HTTP.keytab früher gemacht, wenn Sie möchten, dass ich dieses Dokument poste, kann ich. – Ramkee

+0

danke oder Ihre Antwort. Aber mein Problem ist das. Ich habe bereits alles eingerichtet, um nahtlos zwischen Browser-> Weblogic-> Webapp zu arbeiten. Ich brauche jedoch einen Apache dazwischen, um HTTPS -> HTTP-Konvertierung zu tun. Immer wenn ich direkt auf Weblogic stoße, funktioniert alles gut, aber wenn ich ein Apache BASIC-Authentifizierungs-Pop-Up durchführe, erscheint es. Es scheint, dass der Authorization-Header nicht über – chalad

Antwort

0
  • Wir müssen das folgende Paket installieren. apt-get install libapache-mod-auth-kerb

  • Zuerst kopieren wir haben die HTTP.keytab-etc/krb5.keytab wie wie unten (die bei „Active Directory“ erzeugt wird). cp /root/HTTP.keytab /etc/krb5.keytab

  • Als nächstes müssen wir die richtigen Berechtigungen geben. chown www-data:www-data /etc/krb5.keytab chmod 400 /etc/krb5.keytab

  • Als nächstes gehen wir zu Apache virtuellen Pfad Hosts vi /etc/apache2/sites-available/default

ein Verzeichnis hinzufügen, wie wie unter

`<Directory /> 
      AuthName "Kerberos Login" 
      AuthType Kerberos 
      Krb5Keytab /etc/krb5.keytab 
      KrbServiceName HTTP 
      KrbAuthRealm YOURDOMAIN.LOCAL //It is Domain name of your server 
      KrbMethodNegotiate on 
      KrbSaveCredentials on 
      KrbVerifyKDC on 
      Require valid-user 
    </Directory>` 

enter image description here

  • Restart Apache Webserver /etc/init.d/apache2 restart

  • Neben Browser von Active Directory-Client-Maschine gehen und auf den Web-Server mit FQDN von Apache-Server. Sie werden nicht nach dem Passwort gefragt, um diese Website zu öffnen.

enter image description here

HINWEIS:

Für Explorer Browser wir automatic logon with user name and password auf security Registerkarte

user authentication setzen müssen ->logon ->automatic logon with user name and password

enter image description here

Wenn Sie irgendwelche Schwierigkeiten gefunden haben, bitte aktualisieren Sie mich.

+0

übergeben wird. Vielen Dank für die Durchgängige Lösung, aber die beabsichtigte Lösung ist, Weblogic zu haben, um die eigentliche Authentifizierung zu tun. Ich habe alles funktioniert, wenn Apache nicht in der Mitte ist. Bitte beachten Sie meinen Kommentar oben – chalad