Zugriffsfehler nach Aktivierung der Sicherheitskomponente
Verwenden Sie diese Informationen, wenn nach dem Aktivieren der Sicherheit Zugriffsprobleme auftreten.
- Nach dem Aktivieren der Sicherheitskomponente ist der partielle bzw. vollständige Zugriff auf die Administrationskonsole oder die Verwendung des Tools wsadmin nicht möglich
- Nach dem Aktivieren der Sicherheitskomponente ist der Zugriff auf eine Webseite nicht möglich
- Authentifizierungsfehler beim Zugriff auf eine Webseite
- Berechtigungsfehler beim Zugriff auf eine Webseite
- Nach dem Aktivieren der Sicherheitskomponente kann der Client nicht auf eine Enterprise-Bean zugreifen
- Der Client wird nicht zur Eingabe von Daten aufgefordert, wenn er auf eine gesicherte Enterprise-Bean zugreift
- Nach dem Aktivieren der Sicherheitskomponente kann ein Anwendungsserver, Knotenmanager oder Knoten nicht gestoppt werden
Der AccessControlException Ausnahme, wird in der SystemOut.Protokoll
- Nach dem Aktivieren von SSO (Single Sign-On) kann die Anmeldung an der Administrationskonsole nicht mehr durchgeführt werden
- SECJ0306E: Es wurde kein empfangener oder Aufrufberechtigungsnachweis im Thread gefunden.
- Ein NameNotFoundException-Fehler tritt auf, wenn zum ersten Mal eine Verbindung zu den eingebundenen Repositorys hergestellt wird
Allgemeine Tipps zur Diagnose und Lösung sicherheitsrelevanter Probleme finden Sie im Thema Tipps zur Fehlerbehebung bei Sicherheitskomponenten.
Wenn Sie kein ähnliches Problem sehen oder die bereitgestellten Informationen Ihr Problem nicht lösen, lesen Sie die Hilfe zur Fehlerbehebung unter IBM.
Nach dem Aktivieren der Sicherheitskomponente ist der partielle bzw. vollständige Zugriff auf die Administrationskonsole oder die Verwendung des Tools wsadmin nicht möglich
Wenn Sie nicht auf die Administrationskonsole zugreifen oder bestimmte Objekte nicht anzeigen und aktualisieren können, schauen Sie im SystemOut Protokoll des Anwendungsservers, der die Verwaltungskonsolenseite für eine zugehörige Fehlermeldung hostet.
Sollten Sie nicht auf die Administrationskonsole zugreifen können oder bestimmte Objekte nicht anzeigen oder aktualisieren können, suchen Sie in den Protokollen des Anwendungsservers, in dem sich die Seite der Administrationskonsole befindet, nach einer diesbezüglichen Fehlernachricht.
Notiz: Zum Abschließen der nächsten beiden Elemente müssen Sie die Verwaltungskonsole verwenden. Sollten Sie Probleme beim Zugriff auf die Administrationskonsole haben, müssen Sie die Sicherheit inaktivieren und die Administrationskonsole erneut starten. Geben Sie zum Inaktivieren der Sicherheit an der Eingabeaufforderung den folgenden Befehl ein:
Geben Sie Folgendes ein, wenn die Eingabeaufforderung wieder angezeigt wird:wsadmin.sh -conntype NONE
Starten Sie den Deployment Manager erneut, nachdem Sie die Sicherheit inaktiviert haben.securityoff- Möglicherweise hat Ihre ID keine Berechtigung für Verwaltungstasks. Dieses
Problem wird angezeigt durch Fehlermeldungen wie die folgenden:
- [8/2/02 10:36:49:722 CDT] 4365c0d9 RoleBasedAuth A CWSCJ0305A: Role based authorization check failed for security name MyServer/myUserId, accessId MyServer/S-1-5-21-882015564-4266526380-2569651501-1005 while invoking method getProcessType on resource Server and module Server.
- Ausnahmebedingungsnachricht:CWWMN0022E: Access denied for the getProcessType operation on Server MBean
- When running the command: wsadmin -username j2ee -password j2ee: CWWAX7246E: Cannot establish "SOAP" connection to host "BIRKT20" because of an authentication failure. Ensure that user and password are correct on the command line or in a properties file.
- Vergewissern Sie sich, dass die Funktionalität der gesicherten Anwendung aktiviert ist. Die Funktionalität vertrauenswürdiger Anwendungen ist aktiviert, wenn WebSphere Application Server hat SAF-Zugriff von READ auf die RACF Klasse der EINRICHTUNG und Profil der BBO.TRUSTEDAPPS.<Kurzname der Zelle>.<Kurzname des Clusters>.
Nach dem Aktivieren der Sicherheitskomponente ist der Zugriff auf eine Webseite nicht möglich
- Authentifizierungsfehler - WebSphere Application Server Die Sicherheit kann die ID der Person oder des Prozesses nicht identifizieren. Symptome von Authentifizierungsfehlern:
- Authorization failed. Retry?Nach einem Anmeldeversuch wird eine Meldung angezeigt.
- Akzeptiert eine beliebige Anzahl von erneuten Anmeldeversuchen und zeigtError 401Meldung, wenn auf „Abbrechen“ geklickt wird, um den erneuten Versuch zu stoppen.
- Eine typische Browsermeldung zeigt:Error 401: Basic realm='Default Realm'.
- Nach einem Anmeldeversuch wird der Anmeldedialog erneut angezeigt.
- AnzeigenError 401Meldung nach drei erfolglosen Wiederholungsversuchen.
- Berechtigungsfehler - Die Sicherheitskomponente hat festgestellt, dass die Person bzw. der Prozess, die bzw. der
die Anforderung abgesetzt hat, nicht berechtigt ist, auf die geschützte Ressource
zuzugreifen. Symptome von Berechtigungsfehlern:
Fehler 403: AuthorizationFailed
wird eine entsprechende Meldung angezeigt.- Nachricht
You are not authorized to view this page message
wird angezeigt. HTTP 403 Verboten
Fehler wird angezeigt.
- SSL-Fehler - WebSphere Application Server Die Sicherheit verwendet intern die Secure Sockets Layer (SSL)-Technologie, um die eigene Kommunikation zu sichern und zu verschlüsseln, und eine falsche Konfiguration der internen SSL-Einstellungen kann zu Problemen führen. Möglicherweise haben Sie auch die SSL-Verschlüsselung für den Datenverkehr Ihrer eigenen Webanwendung oder Ihres Enterprise Bean-Clients aktiviert. Bei falscher Konfiguration kann dies zu Problemen führen, unabhängig davon, ob WebSphere Application Server Sicherheit ist aktiviert.
- SSL-bezogene Probleme werden häufig durch Fehlermeldungen angezeigt, die eine Aussage wie die folgende enthalten: FEHLER: Der Ausgangskontext konnte nicht abgerufen werden oder der Ausgangskontext konnte nicht nachgeschlagen werden. context.Exiting. gefolgt von javax.net.ssl.SSLHandshakeException
Nach dem Aktivieren der Sicherheitskomponente kann der Client nicht auf eine Enterprise-Bean zugreifen
- Lesen Sie nach, mit welchen Schritten Sie die Ressourcen schützen und die Zugriffsberechtigung für die Ressourcen erteilen.
Durchsuchen Sie den Server JVM-Protokolle für Fehler im Zusammenhang mit Enterprise Bean-Zugriff und Sicherheit. Prüfen Sie alle Fehler in der Nachrichtentabelle.
Durchsuchen Sie die Serverprotokolle nach Fehlern, die sich auf den Enterprise-Bean-Zugriff und -Schutz beziehen. Prüfen Sie alle Fehler in der Nachrichtentabelle.
Fehler ähnlich wieAuthorization failed for /UNAUTHENTICATED while invoking resource securityName:/UNAUTHENTICATED;accessId:UNAUTHENTICATED not granted any of the required roles rolesweisen darauf hin, dass:- Ein ungeschütztes Servlet oder eine JSP hat auf eine geschützte Enterprise-Bean zugegriffen. Wenn auf ein ungeschütztes Servlet zugegriffen wird, wird der Benutzer nicht
aufgefordert, sich anzumelden, daher wird das Servlet mit der Benutzer-ID UNAUTHENTICATED
ausgeführt. Wenn das Servlet eine geschützte Enterprise-Bean aufruft, schlägt der Aufruf fehl.
Zur Behebung dieses Fehlers müssen Sie das Servlet, das auf die geschützte Enterprise-Bean zugreift, schützen. Vergewissern Sie sich, dass für die RunAs-Eigenschaft eine ID angegeben ist, die auf die Enterprise-Bean zugreifen kann.
- Ein nicht authentifiziertes Java-Clientprogramm greift auf eine geschützte Enterprise Bean-Ressource zu. Das kann der
Fall sein, wenn für die von der Eigenschaftendatei sas.client.props
gelesene und vom Clientprogramm verwendete Datei das Flag
securityEnabledauf true gesetzt wurde.Zur Lösung dieses Problems müssen Sie sicherstellen, dass für die Datei sas.client.props auf der Clientseite das Flag securityEnabled auf true gesetzt wurde.
Fehler wie "Authentifizierung für gültiger_Benutzer beim Aufrufen von Ressource securityName:/username fehlgeschlagen;accessId:xxxxxx wurden keine der erforderlichen Rollen erteilt." zeigen an, dass ein Client versucht hat, auf eine geschützte Enterprise-Bean-Ressource zuzugreifen und der bereitgestellten Benutzer-ID die erforderlichen Rollen für diese Enterprise-Bean nicht zugeordnet wurden.- Prüfen Sie, ob der Zugriff auf die erforderlichen Rollen für die Enterprise-Bean-Ressource erfolgt. Zeigen Sie die erforderlichen Rollen für die Enterprise-Bean-Ressource im Implementierungsdeskriptor der Webressource an.
- Prüfen Sie die Berechtigungstabelle, und vergewissern Sie sich, dass dem Benutzer bzw. der Gruppe, zu der der Benutzer gehört, eine der erforderlichen Rollen zugeordnet wurde. Sie können die Berechtigungstabelle für die Anwendung, die die Enterprise-Bean-Ressource enthält, auch in der Administrationskonsole anzeigen.
- Ein ungeschütztes Servlet oder eine JSP hat auf eine geschützte Enterprise-Bean zugegriffen. Wenn auf ein ungeschütztes Servlet zugegriffen wird, wird der Benutzer nicht
aufgefordert, sich anzumelden, daher wird das Servlet mit der Benutzer-ID UNAUTHENTICATED
ausgeführt. Wenn das Servlet eine geschützte Enterprise-Bean aufruft, schlägt der Aufruf fehl.
Wenn Sie LocalOS- und SAF-Berechtigung verwenden, überprüfen Sie die SAF-EJBROLEs-Konfiguration. Stellen Sie Folgendes sicher:
- Die Klasse EJBROLE wurde aktiviert.
- Die Rolle wurde in SAF definiert.
- Die Benutzer-ID wurde für den die Rolle payroll-department berechtigt.
- Die Klasse wurde nach der Berechtigungserteilung aktualisiert.
- Beginnen Sie damit, dass Sie den Text der Ausnahme hinter WSSecurityContext.acceptSecContext(), reason: anzeigen. Normalerweise wird der Fehler ohne weitere Analyse beschrieben.
- Ist diese Beschreibung nicht ausreichend, prüfen
Sie die CORBA-Minor-Codes. Die Codes sind im Artikel mit dem Titel aufgeführt Fehlerbehebung bei der Sicherheitskomponentenreferenz.In der folgenden Ausnahme ist z. B. der CORBA-Minor-Code 49424300 aufgeführt: Die Fehlerursache gemäß der Tabelle mit dem CORBA-Minor-Code lautet:
Mit anderen Worten, in diesem Fall ist die Benutzer-ID bzw. das Kennwort, die bzw. das vom Clientprogramm bereitgestellt wurde, wahrscheinlich ungültig:authentication failed errororg.omg.CORBA.NO_PERMISSION: Caught WSSecurityContextException in WSSecurityContext.acceptSecContext(), reason: Major Code[0] Minor Code[0] Message[ Exception caught invoking authenticateBasicAuthData from SecurityServer for user jdoe. Ursache: com.ibm.WebSphereSecurity.AuthenticationFailedException] minor code: 49424300 completed: No at com.ibm.ISecurityLocalObjectBaseL13Impl.PrincipalAuthFailReason.map_auth_fail_to_minor_code (PrincipalAuthFailReason.java:83)
ACORBA INITIALIZEAusnahme mitCWWSA1477W: SECURITY CLIENT/SERVER CONFIGURATION MISMATCHFehler eingebettet, wird vom Client-Programm vom Server empfangen.
Ausnahme empfangen: org.omg.CORBA.INITIALIZE:
CWWSA1477W: SECURITY CLIENT/SERVER CONFIG MISMATCH:
Die Client-Sicherheitskonfiguration (sas.client.props oder ausgehende Einstellungen in
Administrationskonsole) unterstützt nicht die Server-Sicherheitskonfiguration für
aus folgenden Gründen:
FEHLER 1: CWWSA0607E: Der Client erfordert SSL-Vertraulichkeit, der Server jedoch nicht
unterstütze es.
FEHLER 2: CWWSA0610E: Der Server erfordert SSL-Integrität, der Client jedoch nicht
unterstütze es.
FEHLER 3: CWWSA0612E: Der Client erfordert Client (z. B. Benutzer-ID/Passwort oder Token),
aber der Server unterstützt es nicht.
minor code: 0
completed: No at
com.ibm.ISecurityLocalObjectBaseL13Impl.SecurityConnectionInterceptor.getConnectionKey
(SecurityConnectionInterceptor.java:1770)
Im Allgemeinen ist zur Lösung des Problems eine Änderung der Sicherheitskonfiguration des Clients oder des Servers erforderlich. Um zu ermitteln, um welche Konfigurationseinstellung es sich handelt, sehen Sie sich den Text nach demCWWSAFehlernachricht. Ausführliche Erläuterungen und Anweisungen finden Sie in der Nachrichtenreferenz zur Fehlernachricht. Wählen Sie dazu die Ansicht Referenz des Information Centers aus und erweitern Sie in der Navigationsstruktur den Eintrag Nachrichten.
- Im Fall von Fehler 1 erfordert der Client SSL-Vertraulichkeit, der Server unterstützt die SSL-Vertraulichkeit jedoch nicht. Es gibt zwei Möglichkeiten, dieses Problem zu beheben. Ändern Sie die Einstellungen des Servers so, dass er die SSL-Vertraulichkeit unterstützt, oder ändern Sie die Einstellungen des Clients so, dass er die SSL-Vertraulichkeit nicht mehr erfordert.
- Im Fall von Fehler 2 erfordert der Server die SSL-Integrität, aber der Client unterstützt die SSL-Integrität nicht. Es gibt zwei Möglichkeiten, dieses Problem zu beheben. Ändern Sie die Einstellungen des Servers so, dass er die SSL-Vertraulichkeit unterstützt, oder ändern Sie die Einstellungen des Clients so, dass er die SSL-Vertraulichkeit nicht mehr erfordert.
- Im Fall von Fehler 3 schließlich erfordert der Client die Clientauthentifizierung über Benutzer-ID/Kennwort, aber der Server unterstützt diesen Typ der Clientauthentifizierung nicht. Auch in diesem Fall muss entweder die Clientkonfiguration oder die Serverkonfiguration geändert werden. Zum Ändern der Clientkonfiguration müssen Sie die Datei SAS.CLIENT.PROPS so konfigurieren, dass Sie einen reinen Client erhalten, oder die Ausgangskonfiguration des Servers in der Administrationskonsole für die Sicherheit ändern. Um die Konfiguration des Zielservers zu ändern, müssen Sie die Eingangskonfiguration in der Administrationskonsole für die Sicherheit ändern.
Ebenso eine Ausnahme wie org.omg.CORBA.INITIALIZE: JSAS0477W: NICHT ÜBEREINSTIMMENDE SICHERHEITSKONFIGURATION ZWISCHEN CLIENT UND SERVER: Wird auf dem Server beim Versuch, eine Client-Anforderung zu bedienen, angezeigt, weist dies auf eine Nichtübereinstimmung der Sicherheitskonfiguration zwischen Client und Server hin. Die Schritte, die zur Auflösung des Fehlers erforderlich sind, stimmen mit den oben
beschriebenen Schritten für die Ausnahmen vom Typ JSAS1477W überein.
Der Client wird nicht zur Eingabe von Daten aufgefordert, wenn er auf eine gesicherte Enterprise-Bean zugreift
Auch wenn die Sicherheitskomponente scheinbar aktiviert und eine bestimmte Enterprise-Bean geschützt ist, kann der Fall eintreten, dass der Client die ferne Methode ohne Systemanfragen ausführt. Wenn die ferne Methode geschützt wird, erhalten Sie einen Berechtigungsfehler. Ist dies nicht der Fall, führen Sie die Methode als nicht authentifizierter Benutzer aus.
- Für den Server, mit dem Sie kommunizieren, wurde die Sicherheitskomponente nicht aktiviert. Erkundigen Sie sich bei der WebSphere Application Server Administrator, um sicherzustellen, dass die Serversicherheit aktiviert ist. Der Zugriff auf die Sicherheitseinstellungen erfolgt über den Abschnitt Sicherheit der Administrationskonsole.
- Für den Client wurde die Sicherheitskomponente in der Datei sas.client.props nicht aktiviert. Editieren Sie die Datei sas.client.props, um sicherzustellen, dass die Eigenschaft "com.ibm.CORBA.securityEnabled" auf true gesetzt ist.
- Für den Client wurde kein ConfigURL angegeben. Überprüfen Sie, ob die Eigenschaft com.ibm.CORBA.ConfigURL wird in der Kommandozeile des Java-Clients angegeben, mit dem -D Parameter.
- Der angegebene ConfigURL hat eine ungültige URL-Syntax oder die Datei
sas.client.props, auf die er verweist, kann nicht ermittelt werden. Vergewissern Sie sich, dass die
Eigenschaft "com.ibm.CORBA.ConfigURL"
gültig ist. Eine Beschreibung der URL-Formatierungsregeln finden Sie in der Java-Dokumentation. Prüfen Sie auch,
ob die Datei unter dem angegebenen Pfad angegeben ist.
Ein Beispiel für eine gültige Eigenschaft istC:/WebSphere/AppServer/properties/sas.client.props .
Die Clientkonfiguration unterstützt keine Clientauthentifizierung auf Nachrichtenebene (Benutzer-ID und Kennwort). Vergewissern Sie sich, dass in der Datei sas.client.props eines der folgenden Eigenschaften auf true gesetzt ist:
- com.ibm.CSI.performClientAuthenticationSupported=true
- com.ibm.CSI.performClientAuthenticationRequired=true
Die Serverkonfiguration unterstützt keine Client-Authentifizierung auf Nachrichtenebene, die aus einer Benutzer-ID und einem Kennwort besteht. Erkundigen Sie sich bei der WebSphere Application Server Der Administrator muss überprüfen, ob die Benutzer-ID und die Kennwortauthentifizierung für die eingehende Konfiguration des Servers im Abschnitt „Systemadministration“ des Verwaltungstools der Verwaltungskonsole angegeben sind.
Nach dem Aktivieren der Sicherheitskomponente kann ein Anwendungsserver, Knotenmanager oder Knoten nicht gestoppt werden
Wenn Sie Befehlszeilenprogramme verwenden, um WebSphere Application Server Prozesse: Wenden Sie nach der Aktivierung der Sicherheit zusätzliche Parameter an, um Authentifizierungs- und Autorisierungsinformationen bereitzustellen.
Verwenden Sie die./stopServer
-help Befehl, um die zu verwendenden Parameter anzuzeigen.
- ./stopServer serverName -username name -password password
- ./stopNode -username name -password password
- ./stopManager -username name -password password
Wenn Sie das Windows-Dienstfenster oder den Befehl net stop verwenden, um den WebSphere Application Server Prozesse und der Dienst konnte nicht gestoppt werden. Aktualisieren Sie den vorhandenen Anwendungsserverdienst mit zusätzlichen Stoppargumenten. Möglicherweise müssen Sie den Serverprozess über den Task-Manager beenden, bevor Sie den Service aktualisieren. Verwenden Sie die
-stopArgs und das-encodeParams Parameter zum Aktualisieren des Dienstes wie im Abschnitt Aktualisieren eines vorhandenen Anwendungsserverdienstes
Beispiel in der WASService-Befehl Artikel.
Nach dem Aktivieren von SSO (Single Sign-On) kann die Anmeldung an der Administrationskonsole nicht mehr durchgeführt werden
Dieser Fehler tritt auf, wenn SSO (Single Sign-on) aktiviert ist und Sie versuchen, mit dem Kurznamen des Servers auf die Administrationskonsole zuzugreifen, z. B. http://myserver:Portnummer/ibm/console. Der Server akzeptiert Ihre Benutzer-ID und Ihr Kennwort, gibt jedoch die Anmeldeseite und nicht die Administrationskonsole zurück.
Möchten Sie diesen Fehler beheben, verwenden Sie den vollständig qualifizierten Hostnamen des Servers, z. B. http://meinserver.meinnetzwerk.meinefirma.com:9060/ibm/console.
SECJ0306E: Es wurde kein empfangener oder Aufrufberechtigungsnachweis im Thread gefunden.
Die folgende Nachricht wird angezeigt, wenn einer oder mehrere Knoten in der Zelle während der Konfiguration nicht synchronisiert wurden:SECJ0306E: No received or invocation credential exists on the thread. The Role based
authorization check will not have an accessId of the caller to check. The parameters
are: access check method getServerConfig on resource FileTransferServer and module
FileTransferServer. The stack trace is java.lang.Exception: Invocation and received
credentials are both null. Stellen Sie sicher, dass alle Knoten synchronisiert sind, und starten Sie anschließend den Deployment Manager erneut.
Ein NameNotFoundException-Fehler tritt auf, wenn zum ersten Mal eine Verbindung zu den eingebundenen Repositorys hergestellt wird
Wenn der Server eine indirekte Suche nach dem java:comp/env/ds/wimDS name und stellt die erste EJB-Verbindung zu den föderierten Repositorys her, wird die folgende Fehlermeldung imSystemOut.log Datei:
Wenn der Server versucht, eine indirekte Lookup-Operation für den Namen
java:comp/env/ds/wimDS auszuführen und zum ersten Mal eine EJB-Verbindung zu den eingebundenen Repositorys herstellt, wird die folgende Fehlernachricht
in der Ausgabe des entsprechenden Jobprotokolls angezeigt:
NMSV0612W: A NameNotFound ExceptionDer NameNotFoundException Der Fehler wird durch die Referenzbindungsdefinition für die jdbc/wimDS Java Naming and Directory Interface (JNDI)-Name imibm-ejb-jar-bnd.xmi Datei. Sie können diese Warnung ignorieren. Bei der Konfiguration des wimDS-Datenbankrepository wird diese Nachricht nicht mehr angezeigt.
Allerdings Java EE 5 oder höher kann in einer Anwendung vorhanden sein, die vorinstallierte Java EE 5 Dateien und verwendet die.xmi Dateinamenerweiterung.
Die Dateien ibm-webservices-ext.xmi, ibm-webservices-bnd.xmi, ibm-webservicesclient-bnd.xmi, ibm-webservicesclient-ext.xmi und ibm-portlet-ext.xmi können die Dateierweiterung .xmi weiterhin verwenden.