Die aktuellen Überarbeitungen der Access Manager 7 2005Q4-Patches stehen unter SunSolve Online zum Download bereit: http://sunsolve.sun.com. Die aktuellen Patch-IDs lauten:
SolarisTM-Betriebssystem (Solaris OS) auf SPARC®-basierten Systemen 120954-07
Solaris OS auf x86-Plattformen: 120955-07
Linux-Systeme: 120956-07
Microsoft Windows-Systeme: 124296-07
HP-UX-Systeme: 126371-07
Access Manager 7 2005Q4-Patches sind kumulativ. Sie können Patch 7 installieren, ohne zunächst Patch 1, 2, 3, 4, 5 oder 6 installieren zu müssen. Wenn Sie jedoch einen der früheren Patches nicht installiert haben, sollten Sie die Informationen zu neuen Funktionen und Problemen in den entsprechenden Abschnitten lesen, um festzustellen, ob die neuen Funktionen bzw. Probleme für Sie relevant sind.
Folgende Informationen zu Access Manager 7 2005Q4-Patches sind enthalten:
Access Manager 7-Patch 7 (Überarbeitung 07) behebt eine Reihe von Problemen, die in der README-Datei zum Patch aufgeführt sind.
Patch 7 enthält folgende Änderungen:
Nach einem Neustart eines Access Manager-Servers sendet das Access Manager-Client-SDK jetzt eine sinnvolle Ausnahme an einen Agenten, sodass der Agent sich selbst erneut authentifizieren kann und eine neue Anwendungssitzung gestartet werden kann. Bisher sendete das Access Manager-Client-SDK nach der Anwendung von Access Manager 7 2005Q4 Patch 5 im Anschluss an einen Neustart des Access Manager-Servers ein ungültiges Anwendungs-SSO-Token an den Agenten.
Dieses Problem wurde durch CR 6496155 behoben. Patch 7 bietet auch eine Option (Eigenschaft comp.iplanet.dpro.session.dnRestrictionOnly) zum Senden des Anwendungs-SSO-Token in einem eingeschränkten Kontext. Standardmäßig senden Agenten die IP-Adresse des Servers, auf dem sie installiert sind. Wenn jedoch strenge DN-Prüfungen erforderlich sind, legen Sie diese Eigenschaft in der Datei AMConfig.properties wie folgt fest:
com.iplanet.dpro.session.dnRestrictionOnly=true
Wenn bei einer Sitzungsfailover-Bereitstellung jede Access Manager-Instanz und der Message Queue-Broker auf demselben Server installiert sind, funktioniert das Sitzungs-Failover jetzt, wenn ein Netzwerkkabel nicht an einen der Server angeschlossen ist. Standardmäßig ist das Verbindungsfactory-Attribut imqAddressListBehavior der Nachrichtenwarteschlange auf PRIORITY gesetzt, was bewirkt, dass die Adressen in der Reihenfolge ausprobiert werden, in der Sie in der Broker-Adressenliste aufgeführt sind ( Beispiel: localhost:7777,server2:7777,server3:7777). Wenn das Attribut auf RANDOM gesetzt ist, werden für in den Versuchen die Adressen in einer zufälligen Reihenfolge verwendet.
Um dieses Attribut auf RANDOM zu setzen, legen Sie im Skript amsessiondb folgenden Parameter fest:
-DimqAddressListBehavior=RANDOM
Informationen zu den Attributen PRIORITY und RANDOM der Nachrichtenwarteschlange finden Sie im Broker Address List in Sun Java System Message Queue 3.7 UR1 Administration Guide.
Bei einer Bereitstellung mit zwei Servern, die mit einem Load Balancer verbunden sind und als einzelner Identity-Anbieter fungieren, müssen Sie in der Datei AMConfig.properties folgende Eigenschaften festlegen:
com.sun.identity.liberty.interaction.lbWspRedirectHandler com.sun.identity.liberty.interaction.trustedWspRedirectHandlers
Derzeit wird lediglich die Klasse com.sun.identity.liberty.interaction.interactionConfigClass unterstützt. Daher wird standardmäßig die mit Federation Liberty gebündelte Interations-Konfigurationsklasse für den Zugriff auf die Interaktions-Konfigurationsparameter verwendet.
Umleitungs-URLs können jetzt in SPI-Plugins für die Verarbeitung nach der Authentifizierung für erfolgreiche und fehlgeschlagene Anmeldungen sowie für die Abmeldung dynamisch festgelegt werden. Wird ein Plugin für die Nachbearbeitung nicht ausgeführt, wird die Umleitungs-URL im Nachbearbeitungs-SPI nicht verwendet, und auf andere Weise angegebene Umleitungs-URLs werden wie zuvor ausgeführt.
Informationen hierzu finden Sie im Beispiel com.iplanet.am.samples.authentication.spi.postprocess.ISAuthPostProcessSample.java.
Wichtig Wenn Sie Dateien in Ihrer aktuellen Installation angepasst haben, sichern Sie diese Dateien, bevor Sie den Patch installieren. Vergleichen Sie nach der Patch-Installation die gesicherten Dateien mit den neuen von diesem Patch installierten Dateien, um die Anpassungen zu ermitteln. Nehmen Sie die Anpassungen in den neuen Dateien vor und speichern Sie die Dateien. Weitere Informationen zum Umgang mit angepassten Dateien finden Sie im folgenden Abschnitt.
Sichern Sie vor der Installation eines Patches auch die folgenden Dateien:
Access Manager wird mit den in diesem Dokument beschriebenen Access Manager-Patches nicht installiert. Bevor Sie ein Patch anwenden, muss Access Manager 7 2005Q4 bereits auf dem Server installiert sein. Informationen zur Installation finden Sie im Sun Java Enterprise System 2005Q4 Installationshandbuch für UNIX.
Wenn Sie den Patch auf einem Windows-System installieren, lesen Sie das Sun Java Enterprise System 2005Q4 Installation Guide for Microsoft Windows .
Des Weiteren sollten Sie mit der Ausführung des Skripts amconfig für die Bereitstellung, erneute Bereitstellung und Konfiguration von Access Manager vertraut sein, wie in Kapitel 1, Access Manager 7 2005Q4 Configuration Scripts in Sun Java System Access Manager 7 2005Q4 Administration Guide beschrieben .
Eine Liste der Access Manager-Patches, die durch Anwendung dieses Patches nicht mehr aktuell sind, sowie aller anderen Patches, die Sie vor der Installation dieses Patches installieren müssen finden Sie in der README-Datei zu diesem Patch.
Access Manager-Patches (so wie alle anderen Patches) sollten auf einem Test- oder Vorabbereitstellungssystem getestet werden, bevor Sie in einer Produktionsumgebung eingesetzt werden. Darüber hinaus werden Ihre angepassten JSP-Dateien möglicherweise vom Patch-Installationsprogramm nicht ordnungsgemäß aktualisiert. Sie müssen daher unter Umständen Änderungen an diesen Dateien manuell vornehmen, damit Access Manager ordnungsgemäß ausgeführt werden kann.
Stellen Sie vor der Installation des Solaris-Patches sicher, dass Sie die unter Aufgaben vor der Installation aufgelisteten Dateien gesichert haben.
Um auf Solaris-Systemen Patches hinzuzufügen oder zu entfernen, verwenden Sie die Befehle patchadd und patchrm, die mit dem Betriebssystem bereitgestellt werden.
patchadd-Befehl
Verwenden Sie den Befehl patchadd, um ein Patch auf einem Standalone-System zu installieren. Beispiel:
# patchadd /var/spool/patch/120954-07
Wenn Sie den Solaris-Patch in einer globalen Solaris 10-Zone installieren, rufen Sie den Befehl patchadd mit dem Argument -G auf. Beispiel:
patchadd -G /var/spool/patch/120954-07
Das Skript postpatch zeigt eine Meldung zur erneuten Bereitstellung der Access Manager-Anwendungen an, mit Ausnahme für ein System, auf dem lediglich die Access Manager-SDK-Komponente installiert ist.
Das Skript postpatch erstellt die Datei amsilent in folgendem Verzeichnis:
Solaris-Systeme: AccessManager-base/SUNWam
Linux-Systeme: AccessManager-base/identity
AccessManager-base ist das Basisinstallationsverzeichnis. Das standardmäßige Basisinstallationsverzeichnis lautet /opt auf Solaris-Systemen und /opt/sun auf Linux-Systemen.
Die Datei amsilent basiert auf der Datei amsamplesilent, einige erforderliche Parameter sind jedoch entsprechend der auf dem System vorhandenen Access Manager-Konfigurationsdateien festgelegt. Die Passwortparameter enthalten jedoch Standardwerte. Kommentieren Sie den Wert für jeden Passwortparameter aus und ändern Sie die Werte. Überprüfen Sie sorgfältig die Werte der übrigen Parameter in dieser Datei entsprechend der Anforderungen Ihrer Bereitstellung.
Der Parameter COMMON_DEPLOY_URI (das URI-Präfix der gemeinsam genutzten Domänen-Webanwendung) enthält ebenfalls einen Standardwert. Wenn Sie für diesen URI einen anderen als den Standardwert verwenden möchten, müssen Sie diesen Wert aktualisieren. Anderenfalls schlägt die erneute Bereitstellung der Webanwendungen mit amconfig und der vom Patch erzeugten Datei amsilent fehl.
Führen Sie anschließend folgenden Befehl aus (in diesem Beispiel ist Access Manager im Standardverzeichnis installiert):
# cd /opt/SUNWam/bin # ./amconfig -s /opt/SUNWam/amsilent
Die Datei amsilent enthält vertrauliche Daten (z. B. das Administratorpasswort in Klartext). Stellen Sie daher sicher, dass Sie die Datei entsprechend Ihrer Bereitstellung ausreichend schützen.
Führen Sie nach der Ausführung des Skripts amconfig das Skript updateschema.sh aus, um die XML- und LDIF-Dateien zu laden. Das Skript updateschema.sh ist nach der Installation von Patch 7 in folgendem Verzeichnis verfügbar:
Solaris SPARC-Systeme: patch-home-directory/120954-07
Solaris x86-Systeme: patch-home-directory/120955-07
Starten Sie nach der Ausführung des Skripts updateschema die Access Manager-Prozesse neu. Beispiel:
# cd /opt/SUNWam/bin # ./amserver stop # ./amserver start
Starten Sie anschließend den Access Manager-Webcontainer neu.
patchrm-Befehl
Um ein Patch aus einem Standalone-System zu entfernen, verwenden Sie den Befehl patchrm. Beispiel:
# patchrm 120954-03
Das Skript backout zeigt eine Meldung an, die in etwa dem Befehl patchadd entspricht, mit Ausnahme auf Systemen, auf denen lediglich die Access Manager-SDK-Komponente installiert ist.
Stellen Sie nach dem Entfernen des Patches die Access Manager-Anwendungen unter Verwendung der Datei amsilent im Verzeichnis AccessManager-base /SUNWam erneut bereit, wobei AccessManager-base das Basisinstallationsverzeichnis ist. Auf Solaris-Systemen lautet das standardmäßige Installationsverzeichnis /opt.
Legen Sie die Parameter in der Datei amsilent entsprechend der Anforderungen für Ihre Bereitstellung fest.
Führen Sie anschließend folgenden Befehl aus. In diesem Beispiel ist Access Manager im Standardverzeichnis für Solaris-Systeme installiert:
# cd /opt/SUNWam/bin # ./amconfig -s /opt/SUNWam/amsilent
Weitere Informationen sowie Beispiele zu den Befehlen patchadd und patchrm finden Sie in den entsprechenden Solaris-man-Pages.
Weiterführende Informationen finden Sie außerdem unter Aufgaben nach der Installation.
Mit dem Solaris 10-Betriebssystem wurde das neue Zonenkonzept eingeführt. Daher enthält der "patchadd"-Befehl die neue Option -G, mit der ein Patch ausschließlich einer globalen Zone hinzugefügt wird. Der "patchadd"-Befehl sucht in "pkginfo" von Paketen, auf die der Patch angewendet werden soll, standardmäßig nach der Variable SUNW_PKG_ALLZONES. Da die Variable SUNW_PKG_ALLZONES jedoch nicht für alle Access Manager-Pakete festgelegt ist, ist die Option -G erforderlich, wenn Access Manager 7 2005Q4 in der globalen Zone installiert ist. Wenn Access Manager in einer lokalen Zone installiert ist, hat die Option patchadd -G keine Auswirkungen.
Wenn Sie Access Manager 7 2005Q4-Patches auf einem Solaris-System installieren, wird die Verwendung der Option -G empfohlen. Beispiel:
# patchadd -G AM7_patch_dir
Ebenso ist die Option -G für die Ausführung des Befehls patchrm erforderlich, wenn Access Manager in der globalen Zone installiert ist. Beispiel:
# patchrm -G 120954-07
Stellen Sie vor der Installation des Linux-Patches sicher, dass Sie die unter Aufgaben vor der Installation aufgelisteten Dateien gesichert haben.
Um ein Patch auf einem Standalone-Linux-System zu installieren, verwenden Sie den Befehl installpatch. Beispiel:
# ./installpatch
Das Skript postpatch gibt Meldungen aus, die in etwa den Meldungen auf einem Solaris-System entsprechen. Das Verfahren zum Rückgängigmachen eines Patches auf einem Linux-System unterscheidet sich jedoch von dem Verfahren auf Solaris-Systemen. Zum Rückgängigmachen eines Linux-Patches steht kein allgemeines Skript zur Verfügung. Wenn zuvor eine Vorgängerversion des Patches installiert war, installieren Sie diese Version erneut. Folgen Sie anschließend den "postpatch"-Anweisungen, um die Access Manager-Anwendungen durch Ausführung des Skripts amconfig erneut bereitzustellen.
Führen Sie nach der Ausführung des Skripts amconfig das Skript updateschema.sh (Patch 5 und zukünftige Patches) aus, um die XML- und LDIF-Dateien zu laden. Das Skript updateschema.sh ist nach der Installation von Patch 7 im Verzeichnis patch-home-directory/120956-07/scripts verfügbar.
Starten Sie nach der Ausführung der Skripte amconfig und updateschema.sh den Access Manager-Webcontainer neu.
Wenn der Patch auf der Access Manager 7 2005Q4 RTM-Version installiert wurde und Sie den Patch entfernen und den RTM-Status des Systems wiederherstellen möchten, müssen Sie die Access Manager RTM-Bestandteile mithilfe des Skripts reinstallRTM erneut installieren. Das Skript verwendet den Pfad zu dem Verzeichnis, in dem die Access Manager RTM-RPMs gespeichert sind und installiert die RTM-RPMs über die gepatchten RPMs. Beispiel:
# ./scripts/reinstallRTM path_of_AM7_RTM_RPM_directory
Stellen Sie nach der Ausführung des Skripts reinstallRTM die Access Manager-Anwendungen durch Ausführung des Skripts amconfig erneut bereit und starten Sie den Webcontainer neu.
Weiterführende Informationen finden Sie außerdem unter Aufgaben nach der Installation.
Voraussetzungen für die Windows-Patch-Installation:
Access Manager 7 2005Q4 muss auf dem Windows-System installiert sein. Informationen zur Installation finden Sie im Sun Java Enterprise System 2005Q4 Installation Guide for Microsoft Windows .
Um die Patch-Skripte ausführen zu können, muss ActivePerl 5.8 (oder höher) auf dem Windows-System ausgeführt werden.
Stellen Sie vor der Installation des Windows-Patches sicher, dass Sie die unter Aufgaben vor der Installation aufgelisteten Dateien gesichert haben.
Verwenden Sie im Basisverzeichnispfad für die Eingabe in die Patch-Skripte einen Schrägstrich (/). Beispiel: c:/sun
So installieren Sie den Windows-Patch
Melden Sie sich am Windows-System als Mitglied der Administratorgruppe an.
Erstellen Sie ein Verzeichnis für das Herunterladen und Entzippen der Windows-Patch-Datei. Beispiel: AM7p7
Laden Sie die Datei 124296-07.zip herunter und entzippen Sie die Datei im oben angegebenen Verzeichnis.
Beenden Sie alle Java ES 2005Q4-Dienste.
Führen Sie das Skript AM7p7\scripts\prepatch.pl aus.
Führen Sie AM7p7\124296-07.exe aus, um den Patch zu installieren.
Führen Sie das Skript AM7p7\scripts\postpatch.pl aus.
Starten Sie die Java ES 2005Q4-Dienste neu.
Stellen Sie die Access Manager-Anwendungen erneut bereit. Weitere Informationen finden Sie unter Aufgaben nach der Installation.
Führen Sie das Skript AM7p7\scripts\updateschema.pl aus, um das Directory Server-Dienstschema zu aktualisieren. Ihre Angaben werden überprüft und die Dateien geladen. Das Skript erstellt außerdem folgende Protokolldatei:
javaes-install-directory\AccessManager\AM70Patch-upgrade-schema- timestamp
Starten Sie die Java ES 2005Q4-Dienste neu.
So machen Sie den Windows-Patch rückgängig
Melden Sie sich am Windows-System als Mitglied der Administratorgruppe an.
Führen Sie die Datei Uninstall_124296-07.bat aus.
Führen Sie das Skript AM7p7\scripts\postbackout.pl aus.
Stellen Sie die Access Manager-Anwendungen erneut bereit.
Starten Sie die Java ES 2005Q4-Dienste neu.
Hinweis: Wenn Sie das Patch rückgängig machen, werden die vom Skript AM7p7\scripts\updateschema.pl vorgenommenen Schemaänderungen nicht aus Directory Server entfernt. Sie müssen diese Änderungen jedoch nicht manuell entfernen, da die Änderungen die Funktionalität und Bedienbarkeit von Access Manager nicht beeinträchtigen, nachdem das Patch entfernt wurde.
Um den HP-UX-Patch zu installieren oder zu entfernen, verwenden Sie den Befehl swinstall und swremove So installieren Sie den Patch beispielsweise auf einem Standalone-System
# swinstall /var/spool/patch/126371-07
So entfernen Sie den Patch von einem Standalone-System
# swremove 126371-07
Informationen zu den Befehlen swinstall und swremove finden Sie in der Online-Dokumentation unter swinstall und swremove.
Nachdem Sie den Patch installiert oder entfernt haben, müssen Sie die Access Manager-Anwendungen wie im Abschnitt Aufgaben nach der Installation erneut bereitstellen.
Führen Sie nach der erneuten Bereitstellung der Access Manager-Anwendungen das Skriptupdateschema.sh (Patch 5 und höhere Patches) aus, um die XML- und LDIF-Dateien zu laden. Das Skript updateschema.sh ist nach der Installation von Patch 7 im Verzeichnis patch-home-directory/120956-07/scripts verfügbar. Starten Sie nach der Ausführung der Skripte amconfig und updateschema.sh den Access Manager-Webcontainer neu.
Hinweis Wenn Sie den Patch entfernen, werden die vom Skript updateschema.sh vorgenommenen Schemaänderungen nicht aus Directory Server entfernt. Sie müssen diese Änderungen jedoch nicht manuell entfernen, da die Änderungen die Funktionalität und Bedienbarkeit von Access Manager nicht beeinträchtigen, nachdem der Patch entfernt wurde.
Weitere Informationen zur Bereitstellung von Access Manager auf HP-UX-Systemen finden Sie in den Sun Java System Access Manager 7 2005Q4 Release Notes for HP-UX.
Folgendes ist nach der Installation eines Access Manager 7 2005Q4-Patches zu beachten:
Das Patch-Installationsprogramm behält unter Umständen einige der angepassten WAR-Dateien nicht bei, sondern ersetzt diese durch nicht angepasste Dateiversionen. Um den angepassten Inhalt in WAR-Dateien zu ermitteln und manuell zu aktualisieren, wenden Sie folgendes Verfahren an.
In den folgenden Beispielen ist AccessManager-base das Basisinstallationsverzeichnis. Das standardmäßige Basisinstallationsverzeichnis lautet /opt auf Solaris-Systemen und /opt/sun auf Linux-Systemen.
Auf Windows-Systemen ist AccessManager-base das Verzeichnis javaes-install-directory\AccessManager. Beispiel: C:\Program Files\Sun\AccessManager
Der Patch wird auf folgende WAR-Dateien angewendet:
console.war
password.war
services.war
Diese Dateien befinden sich auf Solaris-Systemen im Verzeichnis AccessManager-base/SUNWam und auf Linux-Systemen im Verzeichnis AccessManager-base/identity.
Auf Windows-Systemen: Die zu patchenden WAR-Dateien befinden sich im Verzeichnis AccessManager-base\.
Folgender Inhalt kann in WAR-Dateien angepasst werden:
Eigenschaftsdateien:
Solaris-Systeme: AccessManager-base/SUNWam/locale/*.properties
Linux-Systeme: AccessManager-base/identity/locale/*.properties
Windows-Systeme: AccessManager-base\locale\*.properties
Tag-Bibliotheksdeskriptoren:
Solaris-Systeme: AccessManager-base/SUNWam/web-src/applications/WEB-INF/*.tld
Linux-Systeme: AccessManager-base/identity/web-src/applications/WEB-INF/*.tld
Windows-Systeme: AccessManager-base\web-src\applications\WEB-INF\*.tld
Die Datei web.xml sowie die Dateien, die für ihre Erstellung verwendet wurden (WEB-INF/web.xml und WEB-INF/*.xml).
Anwendungsspezifische Dateien: JSP-Dateien (*.jsp), Bilddateien (*.gif) und Stylesheet-Dateien mit Hintergrundfarben, Schriftgrößen usw. (*.css)
Um sicherzustellen, dass alle benutzerdefinierten Änderungen beibehalten werden, gehen Sie wie folgt vor: Bevor Sie eine Datei ändern, sichern Sie zuerst die Datei.
Installieren Sie den Patch.
Erweitern Sie die WAR-Dateien in einem temporären Verzeichnis. Beispiel mit Installation von Access Manager im Standardverzeichnis für Solaris-Systeme:
# cd temporary-directory # jar -xvf /opt/SUNWam/console.war # jar -xvf /opt/SUNWam/services.war # jar -xvf /opt/SUNWam/password.war
Überprüfen Sie die erweiterten Dateien, um festzustellen, ob das Patch-Installationsprogramm Änderungen an den von Ihnen angepassten Dateien vorgenommen hat. Nehmen Sie Ihre ursprünglichen Anpassungen an den geänderten Dateien im temporären Verzeichnis vor. Anpassungen in Dateien, die sich im Verzeichnis AccessManager-base/web-src/ befinden, jedoch nicht zu den WAR-Dateien gehören, auf die der Patch angewendet wurde, müssen Sie nicht erneut vornehmen.
Aktualisieren Sie die WAR-Dateien mit den geänderten Dateien: Beispiel mit Installation von Access Manager im Standardverzeichnis für Solaris-Systeme:
# cd temporary-directory # jar -uvf /opt/SUNWam/console.war $path/$modified file # jar -uvf /opt/SUNWam/services.war $path/$modified file # jar -uvf /opt/SUNWam/password.war $path/$modified file
Zum Beispiel für Schritt 2-4:
# mkdir /tmp/war.tmp # cd /tmp/war.tmp # jar -xvf /opt/SUNWam/services.war # vi index.html # jar -uvf /opt/SUNWam/services.war index.html
Verwenden Sie erneut die vom Patch generierte automatische Konfigurationsdatei (amsilent) oder erstellen Sie basierend auf der Vorlagendatei amsamplesilent eine neue Konfigurationsdatei und legen Sie die entsprechenden Konfigurationsvariablen in der Datei fest, einschließlich:
DEPLOY_LEVEL=21
DIRECTORY_MODE=5
Passwörter für DS_DIRMGRPASSWD, ADMINPASSWD und AMLDAPUSERPASSWD
Access Manager-Webontainer-Variablen
Verwenden Sie auf Windows-Systemen erneut die vom Skript postpatch.pl generierte automatische Konfigurationsdatei (amsilent ) und stellen Sie sicher, dass AccessManager-base\setup\AMConfigurator.properties-tmp gültige Werte enthält. Benennen Sie diese Datei anschließend in AccessManager-base \setup\AMConfigurator.properties um.
Weitere Informationen zu den Webcontainer-Variablen finden Sie in der Datei amsamplesilent im Verzeichnis /opt/SUNWam/bin (Solaris-Systeme) bzw. im Verzeichnis /opt/sun/identity/bin (Linux-Systeme).
Auf Windows-Systemen lautet die Konfigurationsdatei AccessManager-base\setup\AMConfigurator.properties.
Führen Sie das Skript amconfig wie im folgenden Beispiel aus. Bevor Sie amconfig, ausführen, muss der Directory Server und der Access Manager-Webcontainer ausgeführt werden. So führen Sie beispielsweise amconfig auf einem Solaris-System aus, auf dem Access Manager im standardmäßigen Basisinstallationsverzeichnis installiert ist
# cd /opt/SUNWam/bin # ./amconfig -s /opt/SUNWam/amsilent
Starten Sie nach der Ausführung des Skripts amconfig die Access Manager-Prozesse neu. Beispiel:
# cd /opt/SUNWam/bin # ./amserver stop # ./amserver start
Stellen Sie sicher, dass sich alle benutzerdefinierten JSP-Dateien in den richtigen untergeordneten Verzeichnissen im Verzeichnis AccessManager-base/SUNWam/web-src/ (Solaris-Systeme) bzw. AccessManager-base /identity/web-src/ (Linux-Systeme) befinden und dass Sie alle benutzerdefinierten Dateien gesichert haben.
Auf Windows-Systemen befinden sich die Dateien in AccessManager-base\web-src\ .
Starten Sie den Access Manager-Webcontainer neu.
Weitere Informationen zum Ausführen des Skripts amconfig finden Sie in: Kapitel 1, Access Manager 7 2005Q4 Configuration Scripts in Sun Java System Access Manager 7 2005Q4 Administration Guide.
Wenn Sie die verteilte Authentifizierung oder das Client SDK verwenden, erstellen Sie nach der Patch-Installation die WAR-Datei der verteilten Authentifizierung bzw. die Client SDK-WAR-Datei erneut und stellen Sie sie erneut bereit. Weitere Informationen finden Sie in folgendender Dokumentation:
Erstellen der WAR-Datei für die verteilte Authentifizierung: Technical Note: Using Access Manager Distributed Authentication
Erstellen der Client SDK-WAR-Datei: Installing the Client SDK in Sun Java System Access Manager 7 2005Q4 Developer’s Guide
Bereitstellen der Client SDK-WAR-Datei: To Deploy amclientwebapps.war in Sun Java System Access Manager 7 2005Q4 Developer’s Guide
Access Manager 7-Patch 6 (Überarbeitung 06) behebt eine Reihe von Problemen, die in der README-Datei zum Patch aufgeführt sind. Patch 6 enthält außerdem die folgenden neuen Funktionen, Problemlösungen und Dokumentationsaktualisierungen.
Neue Funktionen in Patch 6
Access Manager unterstützt die JDK 1.5-Methode HttpURLConnection setReadTimeout
Die Protokollierung für mehrere Access Manager-Instanzen erfolgt in separaten Protokolldateien.
Post-Authentifizierungs-Plugin von Microsoft IIS 6.0 unterstützt SharePoint Server
Bekannte Probleme und Einschränkungen in Patch 6
Es wird empfohlen, folgende Komponenten zu aktualisieren bzw. Patches für diese Komponenten anzuwenden, bevor Sie Patch 6 installieren:
Wenn Sie Sun Java System Web Server 6.1 SP5 oder eine ältere Version verwenden, rüsten Sie auf Web Server 6.1 SP7 auf. Diese Version finden Sie unter folgender Adresse:
http://www.sun.com/download/products.xml?id=45c90ca9
Folgen Sie den Anweisungen zum Aufrüsten unter Aktualisierung in Versionshinweise zu Sun Java System Web Server 6.1 SP8.
Laden Sie den aktuellen Sicherheitspatch für NSS, JSS und NSPR von SunSolve Online herunter: http://sunsolve.sun.com.
Solaris 8 SPARC-Plattformen: 119209
Solaris 8 x86-Plattformen: 119210
Solaris 9 SPARC-Plattformen: 119211
Solaris 9 x86-Plattformen: 119212
Solaris 10 SPARC-Plattformen: 119213
Solaris 10 x86- und AMD64-Plattformen: 119214
Windows-Systeme: 124392
HP-UX-Systeme: 124379
Zur Unterstützung der Methode setReadTimeout enthält die Datei AMConfig.properties die folgende neue Eigenschaft, sodass Sie den Wert für die Zeitüberschreitung für Lesevorgänge festlegen können:
com.sun.identity.url.readTimeout
Wenn der Webcontainer JDK 1.5 verwendet, legen Sie für diese Eigenschaft einen geeigneten Zeitüberschreitungswert für Verbindungen fest, um zu vermeiden, dass zu viele HttpURLConnections gleichzeitig aktiv sind, was zu einem Serverabsturz führen könnte. Der Standardwert ist 30.000 Millisekunden (30 Sekunden).
Die Methode setReadTimeout wird ignoriert, wenn com.sun.identity.url.readTimeout in der Datei AMConfig.properties nicht vorhanden oder auf eine leere Zeichenfolge gesetzt ist.
Wenn Sun Java System Directory Server für die Multi-Master-Replikation (MMR) konfiguriert ist, verwendet das Access Manager-SDK jetzt wieder den primären Directory-Server, nachdem dieser herunter- und wieder hochgefahren wurde. Zuvor griff das Access Manager-SDK weiterhin auf den sekundären Directory-Server zu, nachdem der primäre Server wieder hochgefahren wurde.
Zur Unterstützung dieses neuen Verhaltens verfügt die Datei AMConfig.properties von Access Manager über folgende neue Eigenschaft:
com.sun.am.ldap.fallback.sleep.minutes
Mit dieser Eigenschaft wird die Zeit in Minuten festgelegt, die eine Instanz des sekundären Directory-Servers nach dem erneuten Hochfahren des primären Servers pausiert, bevor dieser wieder verwendet wird. Der Standardwert ist 15 Minuten.
Die Eigenschaft com.sun.am.ldap.fallback.sleep.minutes ist verborgen. Um für diese Eigenschaft einen anderen als den Standardwert (15 Minuten) festzulegen, fügen Sie sie der Datei AMConfig.properties explizit hinzu. Legen Sie für den Wert beispielsweise 7 Minuten fest:
com.sun.am.ldap.fallback.sleep.minutes=7
Damit der neue Wert in Kraft tritt, starten Sie den Access Manager-Webcontainer neu.
Die Protokollierung für mehrere Access Manager-Instanzen, die auf demselben Hostserver ausgeführt werden, kann nun in verschiedenen Unterverzeichnissen erfolgen. Legen Sie hierzu die folgende neue Eigenschaft in der Datei AMConfig.properties fest:
com.sun.identity.log.logSubdir
Solange Sie das Standard-Protokollierungsverzeichnis in der Admin-Konsole nicht ändern, werden standardmäßig die folgenden Protokollierungsverzeichnisse verwendet:
Solaris-Systeme: /var/opt/SUNWam/logs
Linux- und HP-UX-Systeme: /var/opt/sun/identity/logs
Windows-Systeme: C:\Sun\JavaES5\identity\logs
Die Protokollierung für die erste Access Manager-Instanz erfolgt immer im Standard-Protokollierungsverzeichnis. Um für weitere Access Manager-Instanzen unterschiedliche Protokollierungs-Unterverzeichnisse anzugeben, legen Sie in der Datei AMConfig.properties für jede weitere Access Manager-Instanz die Eigenschaft com.sun.identity.log.logSubdir fest.
Wenn Sie beispielsweise drei Instanzen haben, am-instance-1, am-instance-2 und am-instance-3, die auf demselben Solaris-Hostserver ausgeführt werden, legen Sie die Eigenschaft wie folgt fest:
com.sun.identity.log.logSubdir=am-instance-2 com.sun.identity.log.logSubdir=am-instance-3
Die Eigenschaft com.sun.identity.log.logSubdir ist verborgen. Sie müssen diese Eigenschaft der Datei AMConfig.properties bei Bedarf explizit hinzufügen und den Access Manager-Webcontainer neu starten, damit die Werte für die Unterverzeichnisse in Kraft treten.
Die Protokollierung für die Access Manager-Instanzen erfolgt dann in folgenden Verzeichnissen:
/var/opt/SUNWam/logs/log-files-for-am-instance-1 /var/opt/SUNWam/logs/am-instance-2/log-files-for-am-instance-2 /var/opt/SUNWam/logs/am-instance-3/log-files-for-am-instance-3
Zur Unterstützung mehrerer Cookie-Domänen verfügt Access Manager über die folgende neue Eigenschaft:
com.sun.identity.authentication.setCookieToAllDomains
Der Standardwert lautet true. Die neue Eigenschaft ist verborgen. Um für den Wert false festzulegen, fügen Sie die Eigenschaft der Datei AMConfig.properties explizit hinzu, und starten Sie den Access Manager-Webcontainer neu.
Das Authentifizierungs-Plugin von Microsoft Internet Information Services (IIS) 6.0 unterstützt jetzt Microsoft Office SharePoint Server. Benutzer können sich bei Access Manager mit einer Benutzer-ID oder einem Anmeldenamen anmelden. SharePoint Server akzeptiert jedoch Anmeldenamen, was Probleme verursachen kann, wenn der Benutzer eine Benutzer-ID angibt.
Um eine Anmeldung bei SharePoint Server zu ermöglichen, verwendet das Post-Authentifizierungs-Plugin (ReplayPasswd.java) jetzt die folgende neue Eigenschaft:
com.sun.am.sharepoint_login_attr_name
Mit dieser neuen Eigenschaft wird das Benutzerattribut angegeben, das SharePoint Server für die Authentifizierung verwendet. Mit der folgenden Eigenschaft wird beispielsweise der gemeinsame Name (cn) für die Authentifizierung angegeben:
com.sun.am.sharepoint_login_attr_name=cn
Das Post-Authentifizierungs-Plugin liest die Eigenschaft com.sun.am.sharepoint_login_attr_name und ruft den entsprechenden Attributwert für den Benutzer vom Directory-Server ab. Anschließend werden die Autorisierungskopfzeilen so definiert, dass der Benutzer auf SharePoint Server zugreifen kann.
Diese Eigenschaft ist verborgen. Um die Eigenschaft festzulegen, fügen Sie sie der Datei AMConfig.properties explizit hinzu, und starten Sie dann den Access Manager-Webcontainer neu, damit der Wert in Kraft tritt.
Access Manager 7 2005Q4 Patch 6 unterstützt jetzt Microsoft Windows Internet Explorer 7.
In diesem Szenario wurden mehrere Access Manager-Server im Sitzungsfailover-Modus hinter einem Load Balancer bereitgestellt, der für das cookiebasierte so genannte "Sticky Request Routing" (zähe Anforderungsweiterleitung) konfiguriert ist. Der Access Manager-Administrator greift über den Load Balancer auf die Access Manager-Konsole zu. Wenn der Administrator sich bei der Konsole anmeldet, wird die Sitzung auf einem der Access Manager-Server erstellt. Sollte dieser Server ausfallen, wird für die Konsolensitzung erwartungsgemäß ein Failover auf einen anderen Access Manager-Server ausgeführt. Manchmal werden dem Administrator jedoch sporadisch Nullzeiger-Ausnahmen im Browser und im Fehlerprotokoll des Webcontainers angezeigt.
Dieses Problem betrifft nur die zum Zeitpunkt des Failovers aktive Access Manager-Konsolensitzung und wirkt sich nicht auf die Funktion der Access Manager-Server aus.
Umgehung: So vermeiden Sie sporadische Nullzeiger-Ausnahmen
Als vorübergehende Lösung können Sie den Browser aktualisieren oder sich abmelden und dann erneut bei der Konsole anmelden.
Um das Problem dauerhaft zu beseitigen, stellen Sie die Access Manager-Konsole auf einer separaten Access Manager-Instanz bereit, die nicht am Sitzungsfailover beteiligt ist.
Wenn Access Manager unter Windows 2003 Enterprise Edition auf einem Sun Java System Application Server in anderen Gebietsschemata als Englisch bereitgestellt wird, wird durch Aufrufen der Hilfe in der Admin-Konsole im Realm-Modus ein Anwendungsfehler zurückgegeben.
Umgehung:
Kopieren Sie die Datei javaes-install-dir\share\lib\jhall.jar in das Verzeichnis %JAVA_HOME%\jre\lib\ext.
javaes-install-dir steht hierbei für das Windows-Installationsverzeichnis.
Starten Sie die Anwendungsserver-Instanz neu.
Wenn das SAML v2-Plugin installiert ist, werden durch die Installation des Patches die SAML v2-bezogenen Dateien überschrieben, und das Skript postpatch zeigt die folgende Nachricht an:
The postpatch script detected that the SAML v2 plug-in is installed in your environment. When you run the amconfig script to redeploy the Access Manager applications, the script will recreate the amserver.war file and the SAML v2 related files will be lost. Therefore, after you run amconfig, recreate and redeploy the amserver.war file, as described in the Sun Java System SAML v2 Plug-in for Federation Services User's Guide.
Umgehung: Nachdem Sie den Patch installiert und das Skript amconfig ausgeführt haben, erstellen Sie die Datei amserver.war für die Federation Manager- oder Access Manager-Bereitstellungen, die das SAML v2-Plugin verwenden, und stellen Sie sie erneut bereit.
Die genaue Vorgehensweise entnehmen Sie Kapitel 2, Installing the SAML v2 Plug-in for Federation Services in Sun Java System SAML v2 Plug-in for Federation Services User’s Guide.
Access Manager 7-Patch 5 (Überarbeitung 05) behebt eine Reihe von Problemen, die in der README-Datei zum Patch aufgeführt sind. Patch 5 enthält außerdem die folgenden neuen Funktionen, Problemlösungen und Dokumentationsaktualisierungen.
Neue Funktionen in Patch 5
Neues updateschema.sh-Skript zum Laden von LDIF- und XML-Dateien
Unterstützung für anwendungsspezifische Zeitüberschreitungswerte für Sitzungsleerlauf
Zertifikatsauthentifizierung kann UPN-Wert für Zuordnung von Benutzerprofilen verwenden
Verarbeitung der Abmeldung nach Authentifizierung in Umgebung mit mehreren Servern
Zweifache Authentifizierung des Benutzers in Authentifizierungskette nicht mehr erforderlich
Bekannte Probleme und Einschränkungen in Patch 5
Datei amsilent in Patch 5 kann auf Linux-Systemen von allen Benutzern gelesen werden (6523499)
LDAPv3-Repository-Plugin verarbeitet Alias-Suchattribut nicht immer korrekt (6515502)
Verteilte Authentifizierung erfordert expliziten goto-URL-Parameter (6507383 und 6507377)
LDAP JDK 4.18 verursacht Probleme in LDAP-Client/Directory Server (6402167)
Problem mit Eigenschaftseinstellung com.iplanet.am.session.purgedelay (6513653)
Globalisierungsprobleme (g11n)
Dokumentationsaktualisierungen
Access Manager kann nicht vom Realm-Modus in den Legacy-Modus wechseln (6508473)
Weitere Informationen zum Deaktivieren von persistenten Suchabfragen (6486927)
Von Access Manager unterstützte und nicht unterstützte Berechtigungen (2143066)
Windows Desktop SSO-Konfiguration für Windows 2003 (6487361)
Fehlender Schritt in Onlinehilfe unter ?So erstellen Sie einen neuen Site-Namen“ (2144543)
Patch 126371 bietet Unterstützung für HP-UX-Systeme. Weitere Informationen finden Sie hier:
Informationen zur Installation von HP-UX-Systemen finden Sie im Sun Java Enterprise System 2005Q4 Installationshandbuch für UNIX.
Patch 124296 bietet Unterstützung für Windows-Systeme. Weitere Informationen finden Sie hier:
Informationen zur Installation von Windows-Systemen finden Sie im Sun Java Enterprise System 2005Q4 Installation Guide for Microsoft Windows .
Patch 5 (und höher) enthält das Skript updateschema.sh, um folgende Dateien für die Aktualisierung des Directory Server-Dienstschemas zu laden:
AddLDAPFilterCondition.xml
amPolicyConfig_mod_ldfc.xml
accountLockoutData.xml
accountLockout.ldif
idRepoServiceAddAttrSchemaRequest_Cache.xml
wsf1.1_upgrade.xml
amAuth_mod.xml
amAuthCert_mod.xml
In vorherigen Access Manager-Patch-Versionen mussten diese Dateien manuell geladen werden.
So führen Sie das updateschema.sh-Skript aus
Melden Sie sich als Superuser (root) an.
Wechseln Sie in das Patch-Verzeichnis.
Führen Sie das Skript aus. Beispielsweise auf Solaris-Systemen:
# cd /120954-07 # ./updateschema.sh
Auf Windows-Systemen lautet das Skript updateschema.pl.
Machen Sie folgende Angaben, wenn Sie dazu aufgefordert werden:
Hostname und Portnummer für Directory Server
Admin-Benutzer-DN und Passwort für Directory Server
DN und Passwort für amadmin
Ihre Angaben werden überprüft und die Dateien geladen. Das Skript erstellt außerdem folgende Protokolldatei:
Solaris-Systeme: /var/opt/SUMWam/logs/AM70Patch.upgrade.schema. timestamp
Linux-Systeme: /var/opt/sun/identity/logs/AM70Patch.upgrade.schema. timestamp
Nach Ausführung des Skripts wird der Access Manager-Webcontainer neu gestartet.
Hinweis Wenn Sie die Patch 5-Installation rückgängig machen, werden die vom updateschema.sh-Skript vorgenommenen Schemaänderungen nicht aus Directory Server entfernt. Sie müssen diese Änderungen jedoch nicht manuell entfernen, da die Änderungen die Funktionalität und Bedienbarkeit von Access Manager nicht beeinträchtigen, nachdem das Patch entfernt wurde.
Patch 5 ermöglicht die Einstellung unterschiedlicher Zeitüberschreitungswerte für den Sitzungsleerlauf in den verschiedenen Anwendungen. In einem Unternehmen erfordern manche Anwendungen möglicherweise kleinere Zeitüberschreitungswerte für den Sitzungsleerlauf als den im Sitzungsdienst angegebenen Zeitüberschreitungswert für den Sitzungsleerlauf. Zum Beispiel: Im Sitzungsdienst ist der Zeitüberschreitungswert auf 30 Minuten festgelegt, in einer HR-Anwendung soll jedoch eine Zeitüberschreitung eintreten, wenn sich die Benutzersitzung länger als 10 Minuten im Leerlauf befindet.
Voraussetzungen für die Verwendung dieser Funktion:
Die zum Schutz der Anwendung eingesetzten Agenten müssen so konfiguriert sein, dass sie die URL-Richtlinienentscheidungen von Access Manager durchsetzen.
Agenten müssen für die Ausführung eigener Richtlinienentscheidungen im Cachemodus konfiguriert sein. Siehe folgende Eigenschaften:
Für Webagenten: com.sun.am.policy.am.fetch_from_root_resource
Für J2EE-Agenten: com.sun.identity.policy.client.cacheMode
In der Access Manager-Datei AMConfig.properties muss die Auswertungsreihenfolge für Richtlinienkomponenten so angegeben sein, dass die Bedingung (Condition) zuletzt ausgewertet wird. Siehe folgende Eigenschaft:
com.sun.identity.policy.Policy.policy_evaluation_weights
Der vom Agenten erlaubte Anwendungszugriff, der auf der im lokalen Cache enthaltenen Bedingung basiert, wird der Bedingung in Access Manager nicht bekannt gemacht. Daher liegt der tatsächliche Zeitüberschreitungswert zwischen dem Zeitüberschreitungswert der Anwendung und dem Zeitüberschreitungswert der Anwendung minus der Cachedauer.
So verwenden Sie diese Funktion
Fügen Sie den Richtlinien, die die Anwendung schützen und für die ein bestimmter Zeitüberschreitungswert für den Sitzungsleerlauf erforderlich ist, eine Bedingung für das Authentifizierungsschema (Authentication Scheme Condition) hinzu.
Geben Sie in der Bedingung für das Authentifizierungsschema einen Anwendungsnamen und einen Zeitüberschreitungswert an.
Verwenden Sie in allen Richtlinien, die auf die Ressourcen für die Anwendung angewendet werden, denselben Anwendungsnamen und Zeitüberschreitungswert.
Geben Sie den Zeitüberschreitungswert in Minuten an. Wenn der Wert 0 oder höher als der im Sitzungsdienst angegebene Zeitüberschreitungswert ist, wird der Wert ignoriert und der Zeitüberschreitungswert des Sitzungsdienstes angewendet.
Gehen Sie beispielsweise von einer Richtlinie http://host.sample.com/hr/* mit folgender Bedingung für das Authentifizierungsschema aus:
Authentifizierungsschema: LDAP
Anwendungsname: HR
Zeitüberschreitungswert: 10
Wenn mehrere Richtlinien zum Schutz der Ressourcen der HR-Anwendung festgelegt wurden, müssen Sie die Bedingung allen Richtlinien hinzufügen.
Wenn ein Benutzer in einer Sitzung auf die vom Access Manager-Agenten geschützte HR-Anwendung zugreifen möchte, wird der Benutzer zur Authentifizierung mit dem LDAP-Schema aufgefordert (falls der Benutzer nicht bereits authentifiziert ist).
Ist der Benutzer bereits mit dem LDAP-Schema authentifiziert, wird dem Benutzer nur dann Zugriff auf die Anwendung gewährt, wenn seit der letzten Authentifizierung weniger als 10 Minuten vergangen sind oder der Benutzer zuletzt vor weniger als 10 Minuten auf die HR-Anwendung zugegriffen hat. Anderenfalls wird der Benutzer zur erneuten Authentifizierung mit dem LDAP-Schema aufgefordert, um auf die Anwendung zugreifen zu können.
Das CDC-Servlet kann neben einem Server mit Verteilter Authentifizierungsoberfläche in der DMZ bestehen, um domänenübergreifendes Single Sign-On (Cross-Domain Single Sign-On, CDSSO) zu aktivieren. Access Manager kann hinter einer Firewall bereitgestellt werden und sämtlicher Zugriff auf Access Manager, der für CDSSO erforderlich ist, wird vom CDC-Servlet des Servers mit Verteilter Authentifzierungsbenutzeroberfläche verarbeitet. Um CDSSO zu aktivieren, lesen Sie in der Dokumentation zum Richtlinienagenten nach und führen Sie zusätzlich folgende Schritte durch:
Ändern Sie die Datei AMAgent.properties des Agenten so, dass diese auf das CDS-Servlet auf der Seite der Verteilten Authentifizierung (Client) zeigt. Ändern Sie für Webagenten beispielsweise die folgende Eigenschaft:
com.sun.am.policy.agents.config.cdcservlet.url= http://DAhost.DAdomain:DAport/DISTAUTH_DEPLOY_URI/cdcservlet
Geben Sie in Access Manager gegebenenfalls Richtlinien für Ressourcen an, die von dem Agenten geschützt werden sollen. Wenn der Agent beispielsweise an Port host.example.com:80 liegt, legen Sie als Richtlinie für die Ressource http://host.example.com:80/* fest.
Sie können nun einen Bereichsnamen für das CDC-Servlet angeben, sodass bei der Umleitung auf die Access Manager-Anmelde-URL der Bereichsname mit eingeschlossen wird und sich der Benutzer im angegebenen Bereich anmelden kann. Beispiel:
com.sun.am.policy.agents.config.cdcservlet.url= http://lb.example.com/amserver/cdcservlet?org=realm1
Bei der Zertifikatsauthentifzierung konnte bislang nur die dn-Komponente von subjectDN für die Zuordnung eines Benutzerprofils verwendet werden. Access Manager ermöglicht nun die Verwendung des Werts für den Benutzer-Principal-Namen (User Principal Name, UPN) im SubjectAltNameExt für die Profilzuordnung.
Die Verarbeitung nach der Authentifizierung findet nun statt, wenn sich ein Benutzer von einem anderen Server abmeldet, als dem Server, bei dem er sich ursprünglich in einer Umgebung mit mehreren Servern (mit oder ohne Sitzungsfailover-Konfiguration) angemeldet hat.
SAML unterstützt nun eine neue Dienstanbieterschnittstelle (Service Provider Interface, SPI) für Namensbezeichner, sodass eine Site den Namensbezeichner in der SAML-Assertion anpassen kann. Eine Site kann die neue NameIdentifierMapper-Schnittstelle implementieren, um ein Benutzerkonto einem Namensbezeichner im Subjekt einer SAML-Assertion zuzuordnen.
Die Siteüberwachungsfunktion von Access Manager enthält die folgenden neuen Eigenschaften, mit denen Sie das Verhalten der Sitestatusüberprüfung festlegen können.
Eigenschaft |
Beschreibung |
com.sun.identity.urlchecker.invalidate.interval |
Zeitintervall in Millisekunden für das Erkennen einer Site, die nicht verfügbar ist oder nicht antwortet. Standard: 70000 Millisekunden (70 Sekunden). |
com.sun.identity.urlchecker.sleep.interval |
Zeitintervall in Millisekunden, in dem die Sitestatusüberprüfung pausieren soll. Standard: 30000 Millisekunden (30 Sekunden). |
com.sun.identity.urlchecker.targeturl |
Andere Ziel-URL zum Überprüfen des Prozess-Status von Access Manager. Standard: "/amserver/namingservice". |
Der Patch fügt diese Eigenschaften der Datei AMConfig.properties nicht hinzu. So verwenden Sie diese neuen Eigenschaften mit anderen Werten als den Standardwerten
Fügen Sie die Eigenschaften und ihre Werte der Datei AMConfig.properties hinzu. Fügen Sie für Richtlinienagenten diese Eigenschaften der Datei AMAgents.properties hinzu.
Starten Sie den Access Manager-Webcontainer neu, damit die Werte in Kraft treten.
Bedenken Sie folgendes Szenario. Eine Site konfiguriert eine Authentifizierungskette mit drei LDAP-Modulen. Alle Module werden auf SUFFICIENT festgelegt und die Optionen iplanet-am-auth-shared-state-enabled und iplanet-am-auth-store-shared-state-enabled werden auf true gesetzt. Beispiel:
<AttributeValuePair> <Value>A-LDAP SUFFICIENT iplanet-am-auth-shared-state-enabled=true iplanet-am-auth-store-shared-state-enabled=true</Value> <Value>B-LDAP SUFFICIENT iplanet-am-auth-shared-state-enabled=true iplanet-am-auth-store-shared-state-enabled=true</Value> <Value>C-LDAP SUFFICIENT iplanet-am-auth-shared-state-enabled=true iplanet-am-auth-store-shared-state-enabled=true</Value> </AttributeValuePair>
Patch 5 fügt den Moduloptionen die neue Option iplanet-am-auth-shared-state-behavior-pattern mit zwei möglichen Werten hinzu: tryFirstPass (Standard) und useFirstPass.
Um zu verhindern, dass ein Benutzer seine Benutzer-ID und sein Passwort für die Authentifizierung zweimal eingeben muss (wie im obigen Szenario beschrieben), setzen Sie die Option für alle Module in der Kette auf useFirstPass. Zuvor musste ein Benutzer, der nur in der dritten LDAP-Instanz vorhanden war, seine Benutzer-ID und sein Passwort zweimal eingeben, um sich zu authentifizieren.
Patch 5 enthält folgende Änderungen der Skripten für die Leistungsoptimierung:
Das Optimierungsskript entfernt nicht benötigte ACIs aus Directory Server
Skript amtune-os optimiert sowohl Solaris OS als auch Linux OS
Optimierungsskripte in einer lokalen Solaris 10-Zone werden vollständig ausgeführt
Zu berücksichtigende Aspekte bei der Optimierung von Sun Fire T1000- und Sun Fire T2000-Server
Patch 5 ermöglicht die Angabe eines Passworts für die Optimierungsskripte in einer Textdatei. Zuvor konnten Passwörter nur als Befehlszeilenargument eingegeben werden, wodurch unter Umständen Sicherheitsprobleme aufgetreten sind. Um eine Passwortdatei zu verwenden, legen Sie die folgenden Variablen entsprechend Ihrer Anforderungen fest:
DS_ADMIN_PASSWORD=DirectoryServer-admin-password AS_ADMIN_PASSWORD=ApplicationServer8-admin-password
So optimieren Sie beispielsweise Application Server 8
# ./amtune-as8 password-file
wobei password-file die auf das Administratorpasswort von Application Server 8 festgelegte Variable AS_ADMIN_PASSWORD enthält.
Die Optimierungsskripte verwenden die Option -j password-file beim Aufrufen der Directory Server-Dienstprogramme ldapmodify, ldapsearch, db2index und dsconf.
Wenn Access Manager 7 2005Q4 im Realm-Modus installiert ist, werden für die Ermittlung der Zugriffsberechtigungen Übertragungsberechtigungen verwendet, sodass manche Directory Server-ACIs nicht benötigt werden. Access Manager 7 2005Q4-Patch 5 ermöglicht Ihnen, die nicht benötigten ACIs durch Ausführung des Skripts amtune-prepareDSTuner zu entfernen. Das Skript liest eine Liste mit ACIs in der Datei remacis.ldif und ruft anschließend das ldapmodify-Dienstprogramm auf, um die ACIs zu entfernen.
Sie können das Skript amtune-prepareDSTuner zum Entfernen nicht benötigter ACIs auf Solaris-, HP-UX- und Windows-Systemen ausführen. Weitere Informationen, unter anderem zur Ausführung des Skripts, finden Sie im Technical Note: Sun Java System Access Manager ACI Guide .
Nachdem Sie den Server mit Verteilter Authentifizierungsbenutzeroberfläche bereitgestellt haben, können Sie den Webcontainer optimieren, indem Sie die Access Manager-Optimierungsskripte ausführen. Die folgenden Optimierungsskripte legen die JVM-Option sowie weitere Optimierungsoptionen für den jeweiligen Webcontainer fest:
Tabelle 2 Access Manager-Optimierungsskripte für Webcontainer
Webcontainer |
Optimierungsskript |
---|---|
amtune-ws61 |
Web Server 6.1 |
amtune-as7 |
Application Server 7 |
amtune-as8 |
Application Server Enterprise Edition 8.1 |
So optimieren Sie den Webcontainer eines Servers mit Verteilter Authentifizierungsbenutzeroberfläche
Da der Access Manager-Server nicht auf dem System installiert ist, auf dem der Server mit Verteilter Authentifizierungsbenutzeroberfläche bereitgestellt wird, kopieren Sie das entsprechende Webcontainer-Optimierungsskript (siehe Tabelle oben), die Konfigurationsdatei amtune-env und das Skript amtune-utils aus einer Access Manager-Serverinstallation. Wenn Sie das Solaris- oder Linuxbetriebssystem optimieren möchten, kopieren Sie zusätzlich das Skript amtune-os.
Bearbeiten Sie die Parameter in der Konfigurationsdatei amtune-env, um den Webcontainer und die Optimierungsoptionen anzugeben. Um das Skript im REVIEW-Modus auszuführen, legen Sie AMTUNE_MODE=REVIEW in der Datei amtune-env fest.
Führen Sie das Webcontainer-Optimierungsskript im REVIEW-Modus aus. Im REVIEW-Modus schlägt das Skript basierend auf den Werten in der Datei amtune-env Änderungen für die Optimierung des Webcontainers vor, führt jedoch keine Änderungen an der Bereitstellung aus.
Überprüfen Sie die Optimierungsempfehlungen in der Debug-Protokolldatei. Ändern Sie die Datei amtune-env gegebenenfalls entsprechend der empfohlenen Änderungen.
Um Optimierungsänderungen vorzunehmen, legen Sie AMTUNE_MODE=CHANGE in der Datei amtune-env fest.
Führen Sie das Skript im CHANGE-Modus aus, um Optimierungsänderungen an der Bereitstellung vorzunehmen.
Weitere Informationen zur Ausführung des Optimierungsskripts für die Optimierung des Access Manager-Webcontainers finden Sie in Kapitel Kapitel 2, Access Manager Tuning Scripts in Sun Java System Access Manager 7 2005Q4 Performance Tuning Guide.
Patch 5 enthält das Skript amtune-os, das sowohl das Solaris OS als auch das Linux OS optimiert. Das Skript bestimmt das Betriebssystem mit dem Befehl uname -s. Zuvor wurden in Access Manager separate amtune-os-Skripte für die Optimierung des jeweiligen Betriebssystems bereitgestellt.
Wenn Access Manager in einer lokalen Solaris 10-Zone installiert ist, können alle Skripte, mit Ausnahme von amtune-os, in der lokalen Zone ausgeführt werden. In einer lokalen Zone zeigt das amtune-os-Skript eine Warnung an, führt die Optimierung des Betriebssystems jedoch nicht aus. Das Skript führt anschließend alle anderen von Ihnen angeforderten Optimierungsskripts aus. Zuvor wurde die Ausführung des amtune-os -Skripts in einer lokalen Zone abgebrochen und keines der nachfolgenden angeforderten Optimierungsskripte ausgeführt.
In einer globalen Solaris 10-Zone ruft das Skript amtune das Skript amtune-os aus, um das Betriebssystem zu optimieren, sowie alle übrigen zur Ausführung angeforderten Skripten.
Patch 5 enthält Optimierungsskripte für Windows-Systeme. Die Ausführung der Optimierungsskripte auf einem Windows-System entspricht mit Ausnahme der folgenden Unterschiede der Ausführung der Skripte auf einem Solaris- oder Linux-System:
Windows-Skripte sind in Perl geschrieben und erfordern die Ausführung von Active Perl 5.8.
Wenn Sie nach der Ausführung des Skripts amtune-prepareDSTuner.pl Directory Server optimieren, müssen Sie die Dateien amtune-utils.pl, amtune-directory.pl, remacis.ldif und amtune-samplepassordfile in das Directory Server-System kopieren, da das Skript diese Dateien nicht komprimieren kann.
Es steht kein Skript für die Optimierung des Windows-Betriebssystems zur Verfügung.
Zonen werden nicht unterstützt.
Bevor Sie ein Skript ausführen, müssen Sie den Parameter $BASEDIR in der Datei amtune-env.pl auf das Access Manager-Installationsverzeichnis setzen.
Wenn Access Manager auf einem Sun Fire T1000- oder Sun Fire T2000-Server installiert ist, setzen die Skripte für Web Server 6.1 und Application Server 8 den Parameter JVM GC ParallelGCThreads auf 8:
-XX:ParallelGCThreads=8
Dieser Parameter reduziert die Anzahl der Garbage Collection-Threads, die auf einem 32–Thread-fähigen System unnötig hoch sein kann. Wenn die Aktivitäten der vollständigen Garbage Collection dadurch reduziert werden, können Sie den Wert jedoch auf 16 bzw. im Fall eines virtuellen 32 CPU-Rechners (z. B. ein Sun Fire T1000- oder Sun Fire T2000-Server) auf 20 erhöhen.
Es wird außerdem empfohlen, auf Solaris SPARC-Systemen mit einem CMT-Prozessor unter Verwendung der CoolThreads-Technologie folgende Eigenschaft an das Ende der Datei /etc/opt/SUNWam/config/AMConfig.properties anzufügen:
com.sun.am.concurrencyRate=value
Der Standardwert für value ist 16. Sie können für diese Eigenschaft jedoch je nach Anzahl der Cores im Sun Fire T1000- bzw. Sun Fire T2000-Server einen kleineren Wert festlegen.
Um die Basisauthentifizierung in Microsoft Internet Information Services (IIS) 6.0 zu aktivieren, muss der Richtlinienagent den Namen und das Passwort des Benutzers erhalten. Patch 5 enthält die folgenden neuen Klassen, um diese Funktionalität unter Verwendung der DES-Verschlüsselung des Benutzerpassworts zu aktivieren:
DESGenKey.java generiert einen eindeutigen Schlüssel für die Ver- und Entschlüsselung des Benutzerpassworts.
ReplayPasswd.java liest den Wert des Verschlüsselungsschlüssels aus der Eigenschaft com.sun.am.replaypasswd.key in der Datei AMConfig.properties, verschlüsselt das Passwort und weist es der Sitzungseigenschaft sunIdentityUserPassword zu.
Um die Basisauthentifizierung in IIS 6.0 zu verwenden, müssen Sie sowohl in Access Manager (serverseitig) als auch im Richtlinienagent für IIS 6.0 folgende Schritte durchführen.
In Access Manager:
Führen Sie DESGenKey.java aus, um einen eindeutigen Verschlüsselungsschlüssel für die Ver- und Entschlüsselung des Passworts zu generieren. Auf Solaris-Systemen befindet sich die Datei DESGenKey.java im Verzeichnis com/sun/identity/common , das sich in der Datei am_sdk.jar im Verzeichnis /opt/SUNWam/lib befindet. Der folgende Befehl generiert beispielsweise einen Verschlüsselungsschlüssel:
# cd /opt/SUNWam/lib # java -cp am_sdk.jar com.sun.identity.common.DESGenKey
Weisen Sie den Wert des Verschlüsselungsschlüssels aus Schritt 1 der Eigenschaft com.sun.am.replaypasswd.key in der Datei AMConfig.properties zu.
Stellen Sie ReplayPasswd.java als ein der Authentifizierung nachgestelltes Plugin bereit. Verwenden Sie bei der Konfiguration des Plugins den vollständigen Klassennamen: com.sun.identity.authentication.spi.ReplayPasswd .
Im Richtlinienagent für IIS 6.0:
Weisen Sie den serverseitigen Verschlüsselungsschlüssel der Eigenschaft com.sun.am.replaypasswd.key in der Datei AMAgent.properties zu. Access Manager und der Richtlinienagent für IIS 6.0 müssen denselben Verschlüsselungsschlüssel verwenden.
Aktivieren Sie die Basisauthentifizierung in IIS 6.0 Manager.
Der Richtlinienagent für IIS 6.0 liest das verschlüsselte Passwort aus der Sitzungsantwort, entschlüsselt das Passwort aus der Eigenschaft com.sun.am.replaypasswd.key und legt die Authentifizierungs-Header fest, um die Basisauthentifizierung zuzulassen.
Informationen zum Richtlinienagenten für IIS 6.0 finden Sie im Sun Java System Access Manager Policy Agent 2.2 Guide for Microsoft Internet Information Services 6.0 .
Wenn das Konto eines Benutzer gesperrt wird, meldet Access Manager 7 2005Q4 Patch 5 errorCode = null statt errorCode = 107, wenn die maximale Anzahl an versuchten Passworteingaben überschritten wird.
Lösung. Keine.
Es wird empfohlen, vor der Ausführung des Optimierungsskripts amtune-identity die folgende Eigenschaft mit der Einstellung false der Datei AMConfig.properties hinzuzufügen:
com.sun.identity.log.resolveHostName=false
Mit false wird der Aufwand für das Auflösen von Hostnamen minimiert, wodurch die Leistung verbessert werden kann. Wenn jedoch der Hostname des Clientcomputers in das Protokoll amAuthentication.access geschrieben werden soll, setzen Sie den Wert auf true.
Wenn Sie Patch 5 aus einer vollständigen Access Manager-Serverinstallation entfernen, enthalten die Dateien amAuthLDAP.xml und amPolicyConfig.xml das Passwort für amldapuser in Klartext. Diese Dateien befinden sich je nach Plattform im folgenden Verzeichnis:
Solaris-Systeme: /etc/opt/SUNWam/config/xml
Linux- und HP-UX-Systeme: /etc/opt/sun/identity/config/xml
Umgehung: Bearbeiten Sie die Dateien amAuthLDAP.xml und amPolicyConfig.xml und löschen Sie das in Klartext enthaltene Passwort.
In Access Manager 7 2005Q4-Patches fügt das Access Manager-Konfigurationsskript für BEA WebLogic Server (amwl81config) die JAR-Dateien von JAX-RPC 1.1 dem classpath für die WebLogic-Instanz hinzu. Diese Änderung ist zwar für Produkte wie Sun Java System Portal Server vorteilhaft, eine vollständige auf einem WebLogic-Server bereitgestellte Serverinstallation (DEPLOY_LEVEL=1), kann jedoch nicht mit einer Client-SDK kommunizieren, sodass es zu Ausnahmefehlern kommt.
Wenn der Access Manager 7 2005Q4-Server auf einem BEA WebLogic-Server installiert ist, muss der CLASSPATH im Skript startWebLogic.sh auf den Speicherort der JAR-Dateien von JAX-RPC 1.0 JAR festgelegt werden, um mit dem Access Manager-Client-SDK kommunizieren zu können.
Umgehung: Legen Sie vor der Anwendung des Access Manager-Patches den CLASSPATH im Skript startWebLogic.sh so fest, dass die WebLogic-Serverinstanz die JAR-Dateien von JAX-RPC 1.0 und nicht die JAR-Dateien von JAX-RPC 1.1 verwendet:
Melden Sie sich beim Access Manager-Server als Superuser (root) an oder wechseln Sie zum Superuser.
Bearbeiten Sie das Skript startWebLogic.sh und ersetzen Sie den CLASSPATH, sodass die JAR-Dateien von JAX-RPC 1.0 verwendet werden. Beispiel:
Aktueller Wert:
CLASSPATH=/etc/opt/SUNWam/config: AccessManager-base/AccessManager-package-dir/lib/jax-qname.jar: AccessManager-base/AccessManager-package-dir/lib/namespace.jar: AccessManager-base/AccessManager-package-dir/lib/jaxrpc-api.jar: AccessManager-base/AccessManager-package-dir/lib/jaxrpc-spi.jar: AccessManager-base/AccessManager-package-dir/lib/jaxrpc-impl.jar:
Neuer Wert:
CLASSPATH=/etc/opt/SUNWam/config: AccessManager-base/AccessManager-package-dir/lib/jax-qname.jar: AccessManager-base/AccessManager-package-dir/lib/namespace.jar: AccessManager-base/AccessManager-package-dir/lib/jaxrpc_1.0/jaxrpc-api.jar: AccessManager-base/AccessManager-package-dir/lib/jaxrpc-ri.jar:
wobei AccessManager-base das Basisinstallationsverzeichnis ist. Auf Solaris-Systemen lautet der Standardwert /opt, auf Linux- und HP-UX-Systemen /opt/sun. AccessManager-package-dir ist das Access Manager-Paketverzeichnis.
5. Starten Sie die WebLogic-Serverinstanz neu.
Auf Linux-Systemen. Das Skript postpatch erstellt die Datei /opt/sun/identity/amsilent mit der Berechtigung 644, die allen Benutzern Lesezugriff gewährt.
Umgehung: Ändern Sie nach Ausführung des Skripts installpatch die Berechtigungen in der Datei amsilent, sodass nur der Eigentümer Lese- und Schreibzugriff erhält. Beispiel:
# chmod 600 /opt/sun/identity/amsilent
In diesem Bereitstellungsszenario werden zwei Access Manager-Instanzen auf demselben Hostserver bereitgestellt, wobei sich die Instanzen auf verschiedenen Webcontainer-Instanzen befinden. Führen Sie folgende Schritte aus:
Wenden Sie Patch 5 an.
Bearbeiten Sie die Datei amsilent und stellen Sie die erste Access Manager-Instanz erneut bereit.
Bearbeiten Sie die Datei amsilent erneut für die zweite Access Manager-Instanz und stellen Sie diese Instanz erneut bereit.
Wenn in der Datei amsilent die Eigenschaft NEW_INSTANCE=false festgelegt ist, wird die Datei serverconfig.xml der ersten Access Manager-Instanz mit den Informationen für die zweite Access Manager-Instanz überschrieben. Ein anschließender Neustart der ersten Access Manager-Instanz schlägt fehl. Die Datei serverconfig.xml befindet sich je nach Plattform im folgenden Verzeichnis:
Solaris-Systeme: /etc/opt/SUNWam/config
Linux-Systeme: /etc/opt/sun/identity/config
Umgehung: Legen Sie bei der Bereitstellung der zweiten Access Manager-Instanz in der Datei amsilent die Eigenschaft NEW_INSTANCE=true fest. Die Datei serverconfig.xml der zweiten Access Manager-Instanz wird so mit den richtigen Informationen aktualisiert, und die Datei serverconfig.xml der ersten Access Manager-Instanz wird nicht überschrieben.
Wenn Sie Patch 5 auf einem Rechner anwenden, der nur SDK enthält, werden die Beispiel-Makefiles überschrieben.
Umgehung: Bei der Anwendung von Patch 5 auf einen Rechner, der nur SDK enthält, ist keine Neukonfiguration erforderlich. Wenn Sie jedoch die Beispiel-Makefiles verwenden möchten, führen Sie folgende Schritte durch, um die LDIF- und Eigenschaftsdateien für die Beispiel-Makefiles zu aktualisieren (Tag-Swapping):
Führen Sie das Skript amconfig mit DEPLOY_LEVEL=14 aus, um das SDK zu deinstallieren und die Konfiguration des Webcontainers aufzuheben.
Führen Sie das Skript amconfig mit DEPLOY_LEVEL=4 aus, um das SDK erneut zu installieren und den Webcontainer erneut zu konfigurieren.
Für die Mehrzahl der Suchläufe wurde das Problem behoben. Bedenken Sie jedoch folgende Problematik beim Festlegen des Alias-Suchattributs. Der Wert des Alias-Suchattributs muss über die gesamte Organisation hinweg eindeutig sein. Wenn mehrere Alias-Suchattribute festgelegt werden, besteht die Möglichkeit, dass ein Eintrag im Datenspeicher mit einem Attribut übereinstimmt und ein anderer Eintrag mit dem anderen Attribut übereinstimmt. In diesem Fall gibt Access Manager folgenden Fehler aus:
An internal authentication error has occurred. Contact your system administrator.
Umgehung: Kein
Ein Server mit Verteilter Authentifizierungsbenutzeroberfläche und ein J2EE-Richtlinienagent können nicht zusammen ausgeführt werden, wenn diese im selben Webcontainer installiert sind.
Umgehung: Erstellen Sie eine zweite Webcontainer-Instanz und stellen Sie den Server mit Verteilter Authentifizierungsbenutzeroberfläche und den J2EE-Richtlinienagenten auf verschiedenen Instanzen des Containers bereit.
Wenn Access Manager auf einem Sun Java System Application Server auf einem Windows-System bereitgestellt wird und Sie im linken Bereich des Hilfebildschirms der Konsole im Realm-Modus auf die Hilfeschaltfläche klicken, wird ein Fehler ausgegeben.
Umgehung: Kopieren Sie die Datei javaes-install-dir\share\lib\jhall.jar in das Verzeichnis JAVA_HOME\jre\lib\ext, und starten Sie den Anwendungsserver neu.
Wenn kein expliziter goto-URL-Parameter angegeben ist, versucht ein Server mit verteilter Authentifizierungsbenutzeroberfläche auf den goto eines in Access Manager angegebenen Erfolgs-URLs (Success URL) umzuleiten. Diese Umleitung kann aus folgenden Gründen fehlschlagen:
Die URL ist relativ und es ist keine entsprechende Seite beim Server mit Verteilter Authentifizierungsbenutzeroberfläche verfügbar.
Die URL ist absolut und der Browser kann die URL nicht finden.
Umgehung: Geben Sie für einen Server mit Verteilter Authentifizierungsbenutzeroberfläche immer einen expliziten goto-URL-Parameter an.
Access Manager 7 2005Q4 wurde mit LDAP JDK 4.18 als Bestandteil der Java ES 2005Q4-Version ausgegeben, wodurch eine Reihe von Verbindungsproblemen mit Access Manager und Directory Server aufgetreten sind.
Umgehung: Wenden Sie nur eines der folgenden Sun Java System LDAP Java Development Kit-Patches an:
Solaris OS-, SPARC- und x86-Plattformen: 119725-04
Linux OS: 120834-02
Die Patches stehen unter SunSolve Online zur Verfügung.http://sunsolve.sun.com.
Auf Solaris-Systemen installiert Java ES die Datei Makefile.distAuthUI, README.distAuthUI und amauthdistui.war des Servers mit Verteilter Authentifizierungsbenutzeroberfläche im falschen Verzeichnis: /opt/SUNComm/SUNWam.
Umgehung: Kopieren Sie diese Dateien in das richtige Verzeichnis: /opt/SUNWam.
Hinweis: Alle in einem Patch behobenen Probleme bezüglich des Servers mit Verteilter Authentifizierungsbenutzeroberfläche werden in die Datei /opt/SUNComm/SUNWam/amauthdistui.war aufgenommen. Sie müssen daher diese Dateien auch jedes Mal dann in das Verzeichnis /opt/SUNWam kopieren, wenn Sie einen Patch auf den Access Manager-Server anwenden und anschließend die WAR-Datei neu erstellen und bereitstellen.
Wenn Access Manager auf einem Windows- oder HP-UX-System in einem Gebietsschema installiert ist, das Multibyte-Zeichen verwendet (z. B. Japanisch), schlägt die Suche in der Konsolen-Onlinehilfe fehl, wenn Schlüsselwörter in Multibyte-Zeichen eingegeben werden.
Umgehung: Kein
Patch 6-Aktualisierung: Access Manager 7 2005Q4 Patch 6 behebt dieses Problem auf Windows-Systemen. Auf HP-UX-Systemen besteht das Problem weiterhin.
Wenn Access Manager auf einem Windows-System in einem Gebietsschema installiert ist, das Multibyte-Zeichen verwendet (z. B. Japanisch oder Chinesisch), sind die während der Access Manager-Konfiguration im Terminal-Fenster angezeigten Ausgabemeldungen nicht lesbar.
Umgehung: Keine; dieses Problem hat jedoch keine Auswirkungen auf die Konfiguration selbst.
Wenn Sie Patch 5 (124296-05) auf einem Windows-System in einem nicht englischen Gebietsschema installieren, werden manche Zeichenfolgen in der Installationsanzeige als Eigenschaftsschlüssel anstelle von Meldungstext angezeigt. Beispiele der Eigenschaftsschlüssel: PRODUCT_NAME, JES_Patch_FinishPanel_Text1 und JES_Patch_FinishPanel_Text2.
Umgehung: Kein
Das Access Manager-Skript amtune legt die Eigenschaft com.iplanet.am.session.purgedelay auf 1 fest, um so viele Access Manager-Sitzungen wie möglich zuzulassen. Diese Eigenschaft gibt die Anzahl der Minuten an, um die die Bereinigung der Sitzung verzögert wird. Der Wert 1 ist jedoch für manche Clients (z. B. Sun Java System Portal Server) unter Umständen nicht ausreichend.
Umgehung: Setzen Sie die Eigenschaft com.iplanet.am.session.purgedelay nach der Ausführung des Skripts amtune zurück:
Legen Sie in der Datei AMConfig.properties den neuen Wert für die Eigenschaft fest. Beispiel:
com.iplanet.am.session.purgedelay=5
Starten Sie den Access Manager-Webcontainer neu, damit der neue Wert in Kraft tritt.
Access Manager 7 2005Q4-Patch 4 (Überarbeitung 04) behebt folgende Probleme:
CR# 6463796: Deaktivierung des iPlanetAMClientDetection-Dienstes für genericHTML verhindert Zugriff auf Access Manager-HTML-Seiten
CR 6463779: amProfile_Client der verteilten Authentifizierung und amProfile_Server des Access Manager-Servers enthalten unbedenkliche Ausnahmefehler
CR 6463730: Cross-Site Scripting-(XSS-)Sicherheitslücke mit Parameter goto und gx-charset
CR 6435889: Methode Session.getSession schlägt fehl, da RestrictedTokenContext nicht festgelegt ist
Bekannte Probleme und Einschränkungen in Patch 4
Um die Leistung beim Lesen, Suchen und Vergleichen von Benutzerattributen für einen Server mit Verteilter Authentifizierungsbenutzeroberfläche zu optimieren, gehen Sie wie folgt vor:
Ändern Sie in der Datei Makefile.distAuthUI den Anwendungsbenutzernamen anonymous in einen anderen Benutzernamen um. Beispiel:
APPLICATION_USERNAME=user1
Fügen Sie in Directory Server den neuen Benutzer (in diesem Beispiel user1) und die neue ACI hinzu, um das Lesen, Suchen und Vergleichen von Benutzerattributen zuzulassen. Im folgenden Beispiel wird die neue ACI hinzugefügt:
dn:ou=1.0,ou=SunAMClientData,ou=ClientData,dc=example,dc=com changetype:modify add:aci aci: (target="ldap:///ou=1.0,ou=SunAMClientData,ou=ClientData,dc=example,dc=com") (targetattr = *")(version 3.0; acl "SunAM client data access to a Distributed Auth App User"; allow (read, search, compare) userdn = "ldap:///uid=user1,ou=people,dc=example,dc=com";)
Wenn ein Passwort geändert wird, sendet Access Manager die E-Mail-Benachrichtigung mithilfe des nicht qualifizierten Sendernamens Identity-Server, was zu Fehlereinträgen in den amPasswordReset-Protokollen führt. Beispiel:
07/19/2006 10:26:04:010 AM PDT: Thread[service-j2ee,5,main] ERROR: Could not send email to user [Ljava.lang.String;@999262 com.sun.mail.smtp.SMTPSendFailedException: 553 5.5.4 <Identity-Server>... Domain name required for sender address Identity-Server
Umgehung: Ändern Sie die from-Adresse, sodass der vollständige Domänenname des Hostservers in der Datei amPasswordResetModuleMsgs.properties enthalten ist:
Ändern Sie die Angabe für die from-Adressbezeichnung. Beispiel:
fromAddress.label=<Identity-Server@amhost.example.com>
Ändern Sie die Eigenschaft lockOutEmailFrom, um sicherzustellen, dass Sperrbenachrichtigungen die richtige from-Adresse verwenden. Beispiel:
lockOutEmailFrom=<Identity-Server@amhost.example.com>
Die Datei amPasswordResetModuleMsgs.properties befindet sich im Verzeichnis AccessManager-base/SUNWam/locale (Solaris-Systeme) bzw. im Verzeichnis AccessManager-base/identity/locale (Linux-Systeme).
AccessManager-base ist das Basisinstallationsverzeichnis. Das standardmäßige Basisinstallationsverzeichnis lautet /opt auf Solaris-Systemen und /opt/sun auf Linux-Systemen.
Access Manager 7-Patch 3 (Überarbeitung 03) behebt eine Reihe von Problemen, die in der README-Datei zum Patch aufgeführt sind. Des Weiteren enthält Patch 3 folgende neue Funktionen und bekannte Probleme:
Neue Funktionen in Patch 3
Bekannte Probleme und Einschränkungen in Patch 3
Fehlender Link für Benutzerdienst unter "Gefilterte Funktion" in Konsolenonlinehilfe (6460576)
Ausnahmefehler bei Verwendung der Abruffunktion zusammen mit dem Client-SDK (6452320)
SSOToken eines authentifizierten Benutzers wird ungewollt auf Rogue-Websites angezeigt (6442905)
Site-Überwachungsintervall und Eigenschaften der Zeitüberschreitung (6441918)
Die "Verteilte Authentifizierung" sollte nicht als amadmin-Benutzer ausgeführt werden (6440697)
Server mit Verteilter Authentfizierungsbenutzeroberfläche und Load Balancer (6440695)
Cookie-Wiedergabe erfordert Eigenschaft com.sun.identity.session.resetLBCookie (6440651)
com.iplanet.am.lbcookie.name-Eigenschaft übernimmt den Standardwert amlbcookie (6440648)
Eigenschaft com.iplanet.am.lbcookie.value ist veraltet (6440641)
SSO-Token im ID-FF-SSO-Anwendungsfall kann nicht erstellt werden (6429610)
Federation schlägt bei Verwendung des Artefaktprofils fehl (6324056)
Die Siteüberwachungsfunktion von Access Manager enthält folgende neue Eigenschaften:
Eigenschaft |
Beschreibung |
com.sun.identity.sitemonitor.interval |
Intervallzeit in Millisekunden für Siteüberwachung. Die Siteüberwachungsfunktion überprüft die Verfügbarkeit der einzelnen Sites im angegebenen Zeitintervall. Standard: 60000 Millisekunden (1 Minute). |
com.sun.identity.sitemonitor.timeout |
Zeitüberschreitung in Millisekunden für Überprüfung der Siteverfügbarkeit. Die Siteüberwachungsfunktion wartet auf eine Antwort von der Site, bis der angegebene Zeitüberschreitungswert erreicht wurde. Standard: 5000 Millisekunden (5 Sekunden). |
Der Patch fügt diese Eigenschaften der Datei AMConfig.properties nicht hinzu. So verwenden Sie diese neuen Eigenschaften mit anderen Werten als den Standardwerten
Fügen Sie die Eigenschaften und deren Werte zur Datei AMConfig.properties im folgenden Verzeichnis (abhängig von der Plattform) hinzu:
Solaris-Systeme: /etc/opt/SUNWam/config
Linux-Systeme: /etc/opt/sun/identity/config
Fügen Sie für Richtlinienagenten diese Eigenschaften der Datei AMAgents.properties hinzu.
Starten Sie den Access Manager-Webcontainer neu, damit die Werte in Kraft treten.
Benutzerdefinierte Implementierung. Die Klasse com.sun.identity.sitemonitor.SiteStatusCheck ermöglicht Ihnen zusätzlich, Ihre eigene Implementierung für die Überprüfung der Siteverfügbarkeit über folgende Schnittstelle anzupassen:
package com.iplanet.services.naming.WebtopNaming$SiteStatusCheck
Alle Implementierungsklassen müssen die Methode doCheckSiteStatus verwenden.
public interface SiteStatusCheck { public boolean doCheckSiteStatus(URL siteurl); }
WSF1.1 ist die in Access Manager 7-Patch 3 verwendete Standardversion von ID-WSF. Zum Auslösen von ID-WSF ist keine gesonderte Konfiguration erforderlich, die Beispiele müssen jedoch die neuen Sicherheitsmechanismen verwenden. Die neuen Sicherheitsmechanismen für ID-WSF1.1 lauten:
urn:liberty:security:2005-02:null:X509 urn:liberty:security:2005-02:TLS:X509 urn:liberty:security:2005-02:ClientTLS:X509 urn:liberty:security:2005-02:null:SAML urn:liberty:security:2005-02:TLS:SAML urn:liberty:security:2005-02:ClientTLS:SAML urn:liberty:security:2005-02:null:Bearer urn:liberty:security:2005-02:TLS:Bearer urn:liberty:security:2005-02:ClientTLS:Bearer
Neue Eigenschaft für Liberty ID-WSF-Unterstützung
Die Eigenschaft com.sun.identity.liberty.wsf.version legt das Liberty ID-WSF-Framework fest, wenn das Framework nicht von der eingehenden Nachricht oder vom Ressourcenangebot festgelegt werden kann und Access Manager als WSC agiert. Gültige Werte sind 1.0 und 1.1. Der Standardwert lautet 1.1.
Hinweis Bei der Patch-Installation wird die Eigenschaft com.sun.identity.liberty.wsf.version der Datei AMConfig.properties nicht hinzugefügt (6458184). Um diese neue Eigenschaft zu verwenden, fügen Sie sie der Datei AMConfig.properties mit dem enstprechenden Wert hinzu, nachdem Sie den Patch installiert und den Access Manager-Webcontainer neu gestartet haben.
Führen Sie nach der Installation von Access Manager 7-Patch 3 den folgenden Befehl aus, um die Schemaänderungen zu laden. Im folgenden Beispiel ist Access Manager im Standardverzeichnis für Solaris-Systeme installiert:
# /opt/SUNWam/bin/amadmin -u amadmin -w amadmin_password -t /etc/opt/SUNWam/wsf1.1_upgrade.xml
Die Erkennungsregistrierung von ID-WSF kann diese neuen Sicherheitsmechanismen bei der Registrierung verwenden. Darüber hinaus erkennen WSCs automatisch, welche Version bei der Kommunikation mit WSPs verwendet werden muss. Um die Konfiguration für ID-WSF1.1 vorzunehmen, folgen Sie den Anweisungen in den im Produkt enthaltenen Readme-Dateien für Liberty ID-FF Beispiel 1 und ID-WSF-Beispiele.
Anfragen bei Access Manager über die "Verteilte Authentifizierungsbenutzeroberfläche" lösen Ausnahmefehler im Protokoll distAuth/amProfile_Client und im Access Manager-Serverprotokoll debug/amProfile_Server aus. Nach mehreren Sitzungen kann das Protokoll amProfile_Client auf mehrere Gigabyte und das Access Manager-Serverprotokoll amProfile_Server auf mehrere Megabyte anwachsen. Die Funktionalität wird durch die Ausnahmefehler in diesen Protokollen nicht beeinträchtigt. Die Ausnahmefehler können jedoch unnötigerweise Benutzer alarmieren und dazu führen, dass die Protokolle den gesamten Festplattenspeicherplatz einnehmen.
Lösung. Führen Sie cron-Aufträge aus, die den Inhalt der Protokolldateien auf null setzen. Beispiel:
Führen Sie auf dem Client mit der "Verteilten Authentifizierungsoberfläche" in Abständen von einigen Stunden (je nach Datenverkehr) den Auftrag "cat /dev/null > distAuth/amProfile_Client" aus.
Führen Sie auf dem Access Manager-Server in Abständen von einigen Tagen (anstatt in Abständen von einigen Stunden) "cat /dev/null > /var/opt/SUNWam/debug/amProfile_Server" aus.
Wenn Sie einen Server mit der "Verteilten Authentifizierungsbenutzeroberfläche" bereitstellen, darf der Administrator der verteilten Authentifizierung nicht amadmin sein. Der standardmäßige Anwendungsbenutzer der verteilten Authentifizierung in der Datei Makefile.distAuthUI lautet amadmin und somit auch in der Datei AMConfig.properties, nachdem die Datei distAuth.war auf Clientseite bereitgestellt wurde. Der Benutzer amadmin verfügt über ein AppSSOToken, das nach Zeitüberschreitung der amadmin-Sitzung abläuft. Dies kann zu einem SCHWEREN FEHLER in der Protokolldatei amSecurity führen, die sich standardmäßig im Verzeichnis /tmp/distAuth befindet.
Lösung. Geben Sie UrlAccessAgent als Anwendungsbenutzer der verteilten Authentifizierung an. Beispiel:
Ändern Sie vor der Bereitstellung der Datei distAuth.war im Client-Webcontainer folgende Parameter in der Datei Makefile.distAuthUI :
APPLICATION_USERNAME=UrlAccessAgent APPLICATION_PASSWORD=shared-secret-password or amldapuser-password
oder
Ändern Sie nach der Bereitstellung der Datei distAuth.war im Client-Webcontainer die folgenden Eigenschaften in der Datei AMConfig.properties für jeden Access Manager-Server:
com.sun.identity.agents.app.username=UrlAccessAgent com.iplanet.am.service.password=shared-secret-password or amldapuser-password
Siehe auch Die "Verteilte Authentifizierung" sollte nicht als amadmin-Benutzer ausgeführt werden (6440697).
In der Konsolenonlinehilfe zu Access Manager fehlt unter "Gefilterte Funktion" der Link zum Benutzerdienst. Navigieren Sie in der Onlinehilfe zu "Inhalt", "Gefilterte Funktion" und "So erstellen Sie eine gefilterte Rolle". Wenn Sie weiterblättern, wird je nach ausgewähltem Identitätstyp eine Liste mit Diensten angezeigt, ein Link zum Benutzerdienst ist jedoch nicht verfügbar.
Lösung. Kein
Nach der Anwendung von Access Manager 7-Patch 3 in einer DEPLOY_LEVEL=1-Bereitstellung auf IBM WebSphere Application Server 5.1.1.6 unter Red Hat Linux AS 3.0 Update 4 wurde das Skript reinstallRTM ausgeführt, um die RTM-RPMs wiederherzustellen. Die Webanwendungen wurden anschließend erneut bereitgestellt, nachdem die vom Skript reinstallRTM generierte Datei amsilent bearbeitet wurde. WebSphere wurde dann mit den Skripten stopServer.sh und startServer.sh neu gestartet. Beim Zugriff auf die Anmeldeseite hat WebSphere jedoch einen 500-Fehler mit Verweis auf Filter amlcontroller angezeigt.
Dieses Problem trat auf, da die neue vom Skript reinstallRTM generierte Datei server.xml fehlerhaft war.
Lösung. Die vom Skript amconfig erstellte Kopie der Datei server.xml ist nach wie vor gültig. Verwenden Sie diese Kopie wie folgt:
Halten Sie den Server an.
Ersetzen Sie die fehlerhafte Datei server.xml durch die vom Skript amconfig erstellte Kopie der Datei.
Die vom Skript amconfig erstellte Kopie der Datei server.xml hat den Namen server.xml-orig- pid, wobei pid die Prozess-ID des Skripts amwas51config ist. Die Datei befindet sich im folgenden Verzeichnis:
WebSphere-home-directory/config/cells/WebSphere-cell /nodes/WebSphere-node/servers/server-name
Starten Sie den Server neu.
Organisationen in einem Access Manager-Informationsverzeichnisbaum (Directory Information Tree, DIT), der mit einer Vorgängerversion von Access Manager 7 erstellt wurde, verfügen möglicherweise nicht über die Objektklasse sunISManagerOrganization. Ebenso ist in der Definition von Organisationen, die von einem anderen Produkt als Access Manager erstellt wurden, die Objektklasse sunISManagerOrganization nicht enthalten.
Lösung. Stellen Sie vor dem Aufrüsten auf Access Manager 7 2005Q4 sicher, dass alle Organisation im DIT in ihrer Definition über die Objektklasse sunISManagerOrganization verfügen. Fügen Sie die Objektklasse vor dem Aufrüsten gegebenenfalls manuell hinzu.
Das Aufrüsten hat folgenden Fehler auf der Registerkarte "Aktuelle Sitzungen" der Access Manager-Konsole verursacht:
Failed to get valid Sessions from the Specified server
Dieses Problem betrifft Bereitstellungen, die von Access Manager 6-Versionen aufgerüstet werden und ein Root-Suffix im Format o=orgname aufweisen.
Lösung. Wenden Sie nach der Installation von Access Manager 7 2005Q4 den Access Manager 7-Patch 3 an und führen Sie anschließend das Skript amupgrade aus, um die Daten zu migrieren. Gehen Sie wie folgt vor:
Sichern Sie Ihren Access Manager 6-DIT.
Führen Sie das Skript ampre70upgrade aus.
Installieren Sie Access Manager 7 2005Q4 mit der Option "Später konfigurieren".
Heben Sie die Bereitstellung der Access Manager-Webanwendungen auf.
Stellen Sie die Access Manager-Webanwendungen bereit.
Wenden Sie den Access Manager 7-Patch 3 an, ohne dabei die XML/LDIF-Änderungen anzuwenden. Die XML/LDIF-Änderungen müssen nach der Ausführung des Skripts amupgrade im nächsten Schritt angewendet werden.
Führen Sie das Skript amupgrade aus.
Stellen Sie die Access Manager-Webanwendungen erneut bereit. Dies ist aufgrund der Änderungen durch den Access Manager 7-Patch 3 erforderlich.
Greifen Sie auf die Access Manager-Konsole zu.
Wenn Sie das Access Manager Client-SDK (amclientsdk.jar) bereitstellen und die Abruffunktion aktivieren, können beispielsweise folgende Fehler auftreten:
ERROR: Send Polling Error: com.iplanet.am.util.ThreadPoolException: amSessionPoller thread pool's task queue is full.
Fehler dieser Art können auftreten, wenn Sie einen Server mit Verteilter Authentifizierungsbenutzeroberfläche oder J2EE-Agenten bereitstellen bzw. wenn Sie das Access Manager Client-SDK auf einem Client bereitstellen.
Lösung. Beschränkt sich die Anzahl der gleichzeitigen Sitzungen auf einige hundert Sitzungen, fügen Sie folgende Eigenschaften und deren Werte entweder der Datei AMConfig.properties oder der Datei AMAgents.properties hinzu:
com.sun.identity.session.polling.threadpool.size=10 com.sun.identity.session.polling.threadpool.threshold=10000
Handelt es sich um Tausende oder Zehntausende von Sitzungen, sollten die Werte mit den Werten für die Benachrichtigung in der Access Manager-Datei AMConfig.properties übereinstimmen, nachdem das Skript amtune-identity ausgeführt wurde. Für einen Rechner mit 4 GB RAM werden vom Access Manager-Skript amtune-identity beispielsweise folgende Werte festgelegt.
com.sun.identity.session.notification.threadpool.size=28 com.sun.identity.session.notification.threadpool.threshold=76288
Legen Sie ähnliche Werte auf Clientseite in der Datei AMAgent.properties oder AMConfig.properties fest, wenn der Server mit der "Verteilten Authentifizierungsoberfläche" oder das Access Manager Client-SDK auf einem Client-Rechner mit 4 GB RAM bereitgestellt wird.
Durch Klicken auf einen URL auf einer Rogue-Website ist es möglich, dass ein authentifizierter Access Manager-Benutzer ungewollt den SSOToken auf der Rogue-Website anzeigt.
Lösung. Erstellen Sie für alle teilnehmenden Richtlinienagenten immer ein eindeutiges Agent-Benutzerprofil in Access Manager, um sicherzustellen, dass die Website keine Rogue-Website ist. Stellen Sie außerdem sicher, dass keiner der eindeutigen Agent-Benutzer dasselbe Passwort als gemeinsames geheimes Passwort bzw. amldapuser -Passwort verwendet. Richtlinienagenten werden beim Access Manager-Anwendungsauthentifizierungsmodul standardmäßig als UrlAccessAgent-Benutzer authentifiziert.
Weitere Informationen zum Erstellen eines Agenten unter Verwendung der Access Manager Administration Console finden Sie unter Agents in Sun Java System Access Manager 7 2005Q4 Administration Guide.
Access Manager-Sitefailover enthält folgende neue Eigenschaften:
com.sun.identity.sitemonitor.interval com.sun.identity.sitemonitor.timeout
Weitere Informationen finden Sie unter Neue Konfigurationseigenschaften für Siteüberwachung.
Um einen anderen Administrator als den standardmäßigen Administrator (amadmin) der Anwendungsauthentifizierung für die verteilte Authentifizierung zu erstellen, gehen Sie wie folgt vor:
Erstellen Sie einen LDAP-Benutzer für den Administrator der verteilten Authentifizierung. Beispiel:
uid=DistAuthAdmin,ou=people,o=am
Fügen Sie den Administrator der verteilten Authentifzierung der Liste der besonderen Benutzer hinzu. Beispiel:
com.sun.identity.authentication.special.users=cn=dsameuser, ou=DSAME Users,o=am|cn=amService-UrlAccessAgent,ou=DSAME Users, o=am|uid=DistAuthAdmin,ou=People,o=am
Fügen Sie diese Eigenschaft der Datei AMConfig.properties auf allen Access Manager-Servern hinzu, damit das AppSSOToken des Administrators der verteilten Authentifzierung bei Ablauf der Sitzung nicht abläuft.
Wenn in Ihrer Bereitstellung mehreren Servern mit verteilter Authentifizierungsbenutzeroberfläche ein Load Balancer vorgeschaltet ist, legen Sie nach Bereitstellung der WAR-Datei die folgenden Eigenschaften in der Datei AMConfig.properties fest.
com.iplanet.am.lbcookie.name=DistAuthLBCookieName com.iplanet.am.lbcookie.value=DistAuthLBCookieValue
Damit die Cookie-Wiedergabe für das Access Manager-Sitzungsfailover ordnungsgemäß ausgeführt wird, fügen Sie die Eigenschaft com.sun.identity.session.resetLBCookie mit dem Wert true sowohl für den Richtlinienagenten als auch für den Access Manager-Server hinzu. Beispiel:
com.sun.identity.session.resetLBCookie='true'
Fügen Sie für den Richtlinienagenten die Eigenschaft der Datei AMAgents.properties hinzu.
Fügen Sie für Access Manager-Server die Eigenschaft der Datei AMConfig.properties hinzu.
Hinweis: Diese Eigenschaft ist nur erforderlich, wenn Sie das Access Manager-Sitzungsfailover implementiert haben.
Der Richtlinienagent und der Access Manager-Server übernehmen standardmäßig den Load Balancer-Cookie-Namen amlbcookie. Wenn Sie den Cookie-Namen auf dem Back-End-Server ändern, müssen Sie denselben Namen in der Datei AMAgent.properties für den Richtlinienagenten verwenden. Ebenso müssen Sie denselben Cookie-Namen wie den vom Back-End-Server verwendeten Namen verwenden, wenn Sie das Access Manager Client-SDK verwenden.
Access Manager unterstützt nicht mehr die Servereigenschaft com.iplanet.am.lbcookie.value zum Anpassen des Load Balancer-Cookies. Access Manager verwendet nun stattdessen für den vom Agenten wiedergegebenen Wert und Namen des Cookies die bei der Sitzungskonfiguration konfigurierte Server-ID.
Nach dem Einrichten von Liberty Identity Federation Framework (ID-FF) Beispiel 1 ist Federation erfolgreich, SSO schlägt jedoch fehl.
Lösung. Fügen Sie die uuid des Benutzers dsameuser der Eigenschaft com.sun.identity.authentication.special.users in der Datei AMConfig.properties hinzu. Für die Anwendungsauthentifzierung benötigt dsameuser ein nicht ablaufendes SSO-Token für den Access Manager-Server.
Bei der Anmeldung eines Benutzers in Access Manager treten wiederholte LDAP-Suchabfragen des Benutzerattributs nsRoleDN auf.
Lösung. Führen Sie nach der Installation von Access Manager 7-Patch 3 den folgenden Befehl aus. Im folgenden Beispiel ist Access Manager im Standardverzeichnis für Solaris-Systeme installiert:
# /opt/SUNWam/bin/amadmin -u amadmin -w amadmin_password -t /etc/opt/SUNWam/idRepoServiceAddAttrSchemaRequest_Cache.xml
Ein Authentifzierungsmodul kann den "goto"-URL überschreiben und die Umleitung zu einem anderen URL auf einer externen Website anfordern, um den Benutzerstatus zu bestätigen.
Um den "goto"-URL nach Abschluss der Authentifizierung zu überschreiben, legen Sie die im folgenden Beispiel gezeigte Eigenschaft im SSOToken. fest. Verwenden Sie zum Festlegen der Eigenschaft die onLoginSuccess-Methode der Klasse PostProcess, die das AMPostAuthProcessInterface implementiert. OverridingURL ist in diesem Beispiel der URL, der den "goto"-URL überschreibt:
public class <..> implements AMPostAuthProcessInterface { ... public void onLoginSuccess(...) { try { ssoToken.setProperty("PostProcessSuccessURL", OverridingURL); } catch (Exception ...) { ... } ... }
Die neue Funktion RedirectCallback für benutzerdefinierte Authentifizierungsmodule ermöglicht zum Überprüfen eines Benutzers die Umleitung auf eine externe Website über die Authentifizierungsbenutzeroberfläche. Bei erfolgreicher Authentifizierung wird der Benutzer zurück zum ursprünglichen Access Manager-Server-URL umgeleitet. Folgende Beispieldateien gehören dazu:
LoginModuleSample.java
LoginModuleSample.xml
testExtWebSite.jsp
So implementieren Sie diese Funktion
Erstellen Sie mithilfe des Beispiels LoginModuleSample.java ein benutzerdefiniertes Authentifizierungsmodul.
Laden Sie das Modul auf einen Access Manager-Server.
Erstellen Sie RedirectCallback in der XML-Datei mithilfe des Beispiels LoginModuleSample.xml.
Um das Modul zu testen, verwenden Sie die Beispieldatei testExtWebSite.jsp als externe Website.
Melden Sie sich unter Verwendung des folgenden URLs an:
http://example.com/amserver/UI/Login?module=LoginModuleSample
Der Benutzername und das Passwort werden zur Überprüfung auf die externe Website umgeleitet. Wenn Name und Passwort gültig sind, ist die Authentifizierung erfolgreich und der Benutzer wird zurück zum ursprünglichen Access Manager-Server-URL umgeleitet.
Im folgenden Beispielszenario wird in der Bereitstellung ein benutzerdefiniertes Authentifizierungsmodul für den Zugriff auf eine Geld-/Kreditkarten-Website verwendet:
Ein Benutzer ruft die Authentifizierungs-/Anmeldeseite für das benutzerdefinierte Authentifizierungsmodul auf.
Der Benutzer gibt seine Anmeldedaten (Benutzername und Passwort) ein und übermittelt eine Anforderung an das benutzerdefinierte Authentitfizierungsmodul.
Das benutzerdefinierte Authentifizierungsmodul leitet den Benutzer zusammen mit den erforderlichen Benutzerangaben und der Anforderung auf eine externe Geld-/Kreditkarten-Website um.
Die externe Geld-/Kreditkarten-Website überprüft den Benutzerstatus und gibt die Anforderung entweder als erfolgreich oder als nicht erfolgreich zurück. Der Status ist in der zurückgegebenen Anforderung festgelegt.
Das benutzerdefinierte Authentifizierungsmodul überprüft den Benutzer basierend auf dem in Schritt 4 zurückgegebenen Status und gibt den Status an den Authentifizierungsdienst zurück.
Die Benutzerauthentifizierung wird als erfolgreich oder als nicht erfolgreich abgeschlossen.
Umgehung: Um dieses Problem zu beheben, wenden Sie die für Ihre Plattform enstprechende aktuelle Version des Patches "Core Mobile Access" an:
Solaris OS auf SPARC-basierten Systemen: 119527
Solaris OS auf x86-Plattformen: 119528
Linux-Systeme: 119529
Starten Sie nach Anwendung des Patches den Webcontainer neu.
Access Manager 7 2005Q4-Patch 2 (Überarbeitung 02) hat eine Reihe von Problemen behoben, die in der README-Datei zum Patch aufgeführt sind. Patch 2 enthält darüber hinaus folgende neue Funktionen und bekannte Probleme:
Neue Funktionen in Patch 2
Bekannte Probleme und Einschränkungen in Patch 2
Patch 2 umfasst außerdem die folgenden neuen Eigenschaften für die Benutzerverwaltung (Access Manager-SDK), Identitäts-Repository- (IdRepo) und Dienst-Verwaltungszwischenspeicher. Diese Eigenschaften ermöglichen es Ihnen, die verschiedenen Zwischenspeicher in Abhängigkeit der Bereitstellungsanforderungen unabhängig voneinander zu aktivieren und zu deaktivieren sowie die Time to Live (TTL) für die Zwischenspeichereinträge festzulegen.
Tabelle 3 Neue Eigenschaften für die Benutzerverwaltungs-, Identitäts-Repository- und Dienst-Verwaltungszwischenspeicher
Eigenschaft |
Beschreibung |
Neue Eigenschaften zum Aktivieren und Deaktivieren von Zwischenspeichern |
|
com.iplanet.am.sdk.caching.enabled |
Globale Eigenschaft, die die Identitäts-Repository- (IdRepo), Benutzerverwaltungs- und Dienst-Verwaltungszwischenspeicher aktiviert (true) oder deaktiviert (false). Falls der Wert mit true festgelegt oder die Eigenschaft nicht in der Datei AMConfig.properties vorhanden ist, sind alle drei Zwischenspeicher aktiviert. |
Hinweis Die folgenden drei Eigenschaften zum Aktivieren bzw. Deaktivieren der jeweiligen Zwischenspeicher treffen nur zu, wenn der Wert der vorhergehenden globalen Eigenschaft mit false festgelegt ist. |
|
com.sun.identity.amsdk.cache.enabled |
Aktiviert (true) bzw. deaktiviert (false) nur den Benutzerverwaltungszwischenspeicher (Access Manager-SDK). |
com.sun.identity.idm.cache.enabled |
Aktiviert (true) bzw. deaktiviert (false) nur den Identitäts-Repository (IdRepo)-Zwischenspeicher. |
com.sun.identity.sm.cache.enabled |
Aktiviert (true) bzw. deaktiviert (false) nur den Dienst-Verwaltungszwischenspeicher. |
Neue Eigenschaften des Benutzerverwaltungszwischenspeichers für TTL |
|
com.iplanet.am.sdk.cache.entry.expire.enabled |
Aktiviert (true) bzw. deaktiviert (false) die durch die folgenden beiden Eigenschaften definierte Ablaufzeit des Benutzerverwaltungszwischenspeichers. |
com.iplanet.am.sdk.cache.entry.user.expire.time |
Gibt die Zeit in Minuten an, die Benutzereinträge für den Benutzerverwaltungszwischenspeicher nach ihrer letzten Bearbeitung gültig bleiben. Dies bedeutet, dass die Daten für den zwischengespeicherten Eintrag nach dieser bestimmten Zeit (nach der letzten Bearbeitung oder dem letzten Lesevorgang vom Verzeichnis) ablaufen. Neue Anforderungen für Daten dieser Einträge müssen dann vom Verzeichnis gelesen werden. |
com.iplanet.am.sdk.cache.entry.default.expire.time |
Gibt die Zeit in Minuten an, die Einträge, die nicht von Benutzern stammen, für den Benutzerverwaltungszwischenspeicher nach ihrer letzten Bearbeitung gültig bleiben. Dies bedeutet, dass die Daten für den zwischengespeicherten Eintrag nach dieser bestimmten Zeit (nach der letzten Bearbeitung oder dem letzten Lesevorgang vom Verzeichnis) ablaufen. Neue Anforderungen für Daten dieser Einträge müssen dann vom Verzeichnis gelesen werden. Neue Eigenschaften des Identitäts-Repository-Zwischenspeichers für TTL |
com.sun.identity.idm.cache.entry.expire.enabled |
Aktiviert (true) bzw. deaktiviert (false) die durch die folgende Eigenschaft definierte Ablaufzeit des Benutzerverwaltungszwischenspeichers. |
com.sun.identity.idm.cache.entry.default.expire.time |
Gibt die Zeit in Minuten an, die Einträge, die nicht von Benutzern stammen, für den IdRepo-Zwischenspeicher nach ihrer letzten Bearbeitung gültig bleiben. Dies bedeutet, dass die Daten für den zwischengespeicherten Eintrag nach dieser bestimmten Zeit (nach der letzten Bearbeitung oder dem letzten Lesevorgang vom Repository) ablaufen. Neue Anforderungen für Daten dieser Einträge müssen dann vom Repository gelesen werden. |
Verwenden der neuen Eigenschaften beim Zwischenspeichern
Die Access Manager 7 2005Q4-Patches fügen die neuen Eigenschaften beim Zwischenspeichern nicht automatisch zur Datei AMConfig.properties hinzu.
So verwenden Sie die neuen Eigenschaften beim Zwischenspeichern
Fügen Sie die Eigenschaften und deren Werte mit einem Texteditor zur Datei AMConfig.properties im folgenden Verzeichnis (abhängig von der Plattform) hinzu:
Solaris-Systeme: /etc/opt/SUNWam/config
Linux-Systeme: /etc/opt/sun/identity/config
Starten Sie den Access Manager-Webcontainer neu, damit die Werte in Kraft treten.
Die neue Eigenschaft com.sun.identity.federation.spadapter definiert die Implementierungsklasse für com.sun.identity.federation.plugins.FederationSPAdapter , der zum Hinzufügen anwendungsspezfischer Prozesse während der Federation-Verarbeitung auf Dienstanbieterseite verwendet wird.
Weitere Informationen finden Sie unter Vorhandene und neue IDPs und SPs sind nicht sichtbar (6385696).
Die Unterstützung der LDAP-Filterbedingung wird in Patch 2 hinzugefügt. Ein Richtlinien-Administrator kann jetzt bei der Definition einer Richtlinie einen LDAP-Filter in der Bedingung angeben. Die Richtlinie wird nur dann auf den Benutzer angewendet, wenn der LDAP-Eintrag des Benutzers das in der Bedingung angegebenen LDAP-Filterkriterium erfüllt. Der LDAP-Eintrag des Benutzers wird in dem im Richtlinienkonfigurationsdienst angegebenen Verzeichnis gesucht.
Um die LDAP-Filterbedingung zu registrieren und zu verwenden, führen Sie nach der Installation von Access Manager 7-Patch 2 folgenden Befehl aus. Im folgenden Beispiel ist Access Manager im Standardverzeichnis für Solaris-Systeme installiert:
# /opt/SUNWam/bin/amadmin -u amadmin -w amadmin_password -s /etc/opt/SUNWam/AddLDAPFilterCondition.xml # /opt/SUNWam/bin/amadmin -u amadmin -w amadmin_password -t /etc/opt/SUNWam/amPolicyConfig_mod_ldfc.xml
Hinweis zu Patch 5 Wenn Sie Access Manager 7 2005Q4-Patch 5 installiert und das Skript updateschema.sh ausgeführt haben, müssen Sie diese Dateien unter Verwendung von amadmin laden. Weitere Informationen finden Sie unter Neues updateschema.sh-Skript zum Laden von LDIF- und XML-Dateien.
Führen Sie nach der Installation von Access Manager 7-Patch 2 folgende Befehle aus. Im folgenden Beispiel ist Access Manager im Standardverzeichnis für Solaris-Systeme installiert:
# cd DirectoryServer-base/shared/bin # ./ldapmodify -h DirectoryServerHost -p DirectoryServerPort -D "cn=Directory Manager" -w DirectoryMangerPassword -a -f /etc/opt/SUNWam/accountLockout.ldif # /opt/SUNWam/bin/amadmin -u amadmin -w amadmin_password -t /etc/opt/SUNWam/accountLockoutData.xml
Der Standardwert für DirectoryServer-base lautet /var/opt/mps/serverroot (Solaris-Systeme) bzw. /var/opt/sun/directory-server (Linux-Systeme).
Hinweis zu Patch 5 Wenn Sie Access Manager 7 2005Q4-Patch 5 installiert und das Skript updateschema.sh ausgeführt haben, müssen Sie diese Dateien unter Verwendung von amadmin laden. Weitere Informationen finden Sie unter Neues updateschema.sh-Skript zum Laden von LDIF- und XML-Dateien.
Die neue Eigenschaft com.sun.identity.session.property.doNotTrimList in der Datei AMConfig.properties kann eine kommagetrennte Liste mit Sitzungseigenschaftsnamen enthalten. Die in dieser Liste definierten Eigenschaften werden nach Ablauf einer Sitzung nicht entfernt, sodass auf die Eigenschaften zugegriffen werden kann, bevor die Sitzung bereinigt wird. Beispiel:
com.sun.identity.session.property.doNotTrimList=UserId,HostName
Die neue Eigenschaft com.sun.identity.am.cookie.check in der Datei AMConfig.properties gibt an, ob der Server überprüfen soll, ob Cookies vom Browser unterstützt werden bzw. die Cookie-Unterstützung im Browser aktiviert ist. Wenn der Wert als true festgelegt ist, überprüft der Server, ob der Browser Cookies unterstützt bzw. ob die Cookie-Unterstützung aktiviert ist. Werden keine Cookies unterstützt bzw. ist die Cookie-Unterstützung nicht aktiviert, wird eine Fehlerseite ausgegeben. Dieser Wert muss als "false" (Standard) festgelegt werden, wenn der Server für die Authentifizierung einen Modus ohne Cookies unterstützen soll.
Die folgenden neuen Eigenschaften wurden der Datei AMConfig.properties hinzugefügt und werden vom CDCServlet gelesen:
Mit com.iplanet.services.cdc.WaitImage.display wird im Browser ein Bild angezeigt, solange ein Benutzer in einem CDSSO-Szenario auf die Anzeige der geschützten Seite wartet. Hierzu muss die Eigenschaft auf "true" festgelegt sein. Der Standardwert ist "false".
com.iplanet.services.cdc.WaitImage.name gibt den Bildnamen an. Der Standardwert ist waitImage.gif. Dieses Bild wird aus dem Verzeichnis login_images kopiert.
com.iplanet.services.cdc.WaitImage.width gibt die Bildbreite an. Der Standardwert ist "420".
com.iplanet.services.cdc.WaitImage.height gibt die Bildhöhe an. Der Standardwert ist "120".
Die neue Eigenschaft com.sun.am.event.connection.disable.list in der Datei AMConfig.properties gibt an, welche Ereignisverbindung deaktiviert werden kann. Gültige Werte (Groß-/Kleinschreibung beachten):
aci - Änderungen des Attributs aci, wobei bei der Suche der LDAP-Filter (aci=*) angewendet wird.
sm - Änderungen des Access Manager-Informationsbaums (oder des Dienstverwaltungskontens), der Objekte mit der Markerobjektklasse sunService oder sunServiceComponent enthält. Sie können beispielsweise eine Richtlinie erstellen, um Zugriffsberechtigungen für eine geschützte Ressource festzulegen, oder die Regeln, Subjekte, Bedingungen oder Antwortanbieter für eine bestehende Richtlinie ändern.
um - Änderungen des Benutzerverzeichnisses (oder des Benutzerverwaltungsknotens). Sie können beispielsweise den Namen oder die Adresse eines Benutzers ändern.
So deaktivieren Sie beispielsweise die persistente Suche für Änderungen des Access Manager-Informationsbaums (oder des Dienstverwaltungsknotens)
com.sun.am.event.connection.disable.list=sm
Wenn Sie mehrere Werte angeben möchten, verwenden Sie als Trennzeichen ein Komma.
Persistente Suchabfragen verursachen Performance-Overhead in Directory Server. In diesem Fall ist das Entfernen diese Performance-Overheads in einer Produktionsumgebung dringend erforderlich. Sie können eine oder mehrere persistente Suchabfragen mit der Eigenschaft com.sun.am.event.connection.disable.list deaktivieren.
Bevor Sie jedoch eine persistente Suche deaktivieren, sollten Sie mit den oben beschriebenen Einschränkungen vertraut sein. Es wird dringend empfohlen, diese Eigenschaft nur im absoluten Bedarfsfall zu ändern. Diese Eigenschaft wurde in erster Linie eingeführt, um Overhead auf Directory Server bei Einsatz mehrerer J2EE-Agenten zu vermeiden, da persistente Suchabfragen von jedem Agenten eingerichtet werden. Da die 2.2 J2EE-Agenten diese persistenten Suchabfragen nicht mehr einrichten, müssen Sie die Eigenschaft unter Umständen nicht verwenden.
Weitere Informationen finden Sie unter Weitere Informationen zum Deaktivieren von persistenten Suchabfragen (6486927).
Die neue Eigenschaft com.sun.identity.federation.spadapter in der Datei AMConfig.properties gibt die standardmäßige Implementierung des Federation-Dienstanbieteradapters an, an dem die Anwendung Bestätigungsanweisungen und Antwortinformationen erhält. Beispiel:
com.sun.identity.federation.spadapter=com.sun.identity.federation.plugins.FSDefaultSPAdapter
Access Manager 7 2005Q4-Patch 1 (Überarbeitung 01) hat eine Reihe von Problemen behoben, die in der README-Datei zum Patch aufgeführt sind. Des Weiteren enthält Patch 1 folgende neue Funktionen und bekannte Probleme:
Unterstützung für Rollen und gefilterte Rollen im LDAPv3-Plugin
com.iplanet.am.session.client.polling.enable auf Serverseite darf nicht true sein (6320475)
Access Manager-Debug-Dateien werden standardmäßig im Debug-Verzeichnis erstellt, auch wenn die Eigenschaft com.iplanet.services.debug.level in der Datei AMConfig.properties auf false festgelegt ist. Vor der Herausgabe von Access Manager 7-Patch 1 wurden Debug-Dateien nur dann erstellt, wenn die erste Debug-Meldung in der Datei protokolliert wurde.
Access Manager 7-Patch 1 fügt Unterstützung für Rollen und gefilterte Rollen für das LDAPv3-Plugin hinzu, vorausgesetzt, die Daten sind in Sun Java System Directory Server gespeichert. Weitere Informationen finden Sie unter Beschreibung der Unterstützung für Rollen und gefilterte Rolle für das LDAPv3-Plugin (6365196).
Die Eigenschaft com.iplanet.am.session.client.polling.enable in der Datei AMConfig.properties auf Serverseite wird standardmäßig auf false festgelegt und sollte niemals erneut auf true festgelegt werden.
Wenn der Passwortverschlüsselungsschlüssel Leerzeichen enthält, schlägt die Anwendung des Patches fehl.
Lösung. Verwenden Sie einen neuen Verschlüsselungsschlüssel ohne Leerzeichen. Detailierte Anweisungen zum Ändern des Verschlüsselungsschlüssels finden Sie in: Anhang B, Changing the Password Encryption Key in Sun Java System Access Manager 7 2005Q4 Deployment Planning Guide.