Konfiguration selbst ausgestellter SAML-Token mit wsadmin-Befehlen verwalten

Die Datei SAMLIssuerConfig.properties wird in WebSphere Application Server Version 8 nicht weiter unterstützt. Sie können die wsadmin-Befehle listSAMLIssuerConfig und updateSAMLIssuerConfig verwenden, um die Konfigurationsdateien SAMLIssuerConfig.properties auf Zellenebene und Serverebene anzuzeigen und zu ändern. Ab WebSphere Application Server Version 8 sollten Sie die Administrationskonsole oder den Befehl setSAMLIssuerConfigInBinding verwenden, um die Konfiguration eines selbst ausgestellten SAML-Tokens als angepasste Eigenschaften in den allgemeinen Bindungen oder in den anwendungsspezifischen Bindungen der Konfiguration abgehender Anforderungen des Anforderers festzulegen. Verwenden Sie nicht die Datei SAMLIssuerConfig.properties auf Serverebene oder Zellenebene.

Vorbereitende Schritte

Das Produkt bietet eine alternative Methode zum Festlegen der Konfiguration für selbst ausgestellte SAML-Token in den Richtliniensatzbindungen. Migrieren Sie die Konfigurationsdaten für selbst ausgestellte SAML-Token aus der Datei SAMLIssuerConfig.properties in die Bindungen. Wenn Sie die Konfigurationsdaten für das Erstellen selbst ausgestellter SAML-Token in den allgemeinen Bindungen oder in den anwendungsspezifischen Bindungen festlegen, ist eine flexiblere Verwaltung möglich, da die Konfiguration zusätzlich zur Zellenebene und Serverebene für einen differenzierteren Geltungsbereich angegeben werden kann. Beispielsweise können Sie einen SAML-spezifischen Tokenaussteller für eine bestimmte Web-Service-Anwendung, für eine beliebige Gruppe von Anwendungen oder für eine Web-Service-Anwendung in einer Sicherheitsdomäne konfigurieren.

Fehler vermeiden Fehler vermeiden: Die in den Bindungen definierten Konfigurationsdaten für selbst ausgestellte SAML-Token haben Priorität vor den Daten, die in der Datei SAMLIssuerConfig.properties auf Serverebene oder Zellenebene (in dieser Reihenfolge) definiert werden. Wenn die Konfigurationsdaten für ein selbst ausgestelltes SAML-Token in den zugehörigen Richtliniensatzbindungen definiert werden, ignoriert die Laufzeitumgebung der Web Services Security die Dateien SAMLIssuerConfig.properties auf der Serverebene und auf der Zellenebene. Daher ist es wichtig, dass bei einer Migration von der Datei SAMLIssuerConfig.properties auf die Bindungen alle erforderlichen Eigenschaften migriert werden.gotcha

Informationen zu diesem Vorgang

Zur Verwaltung der auf der Datei SAMLIssuerConfig.properties basierenden SAML-Ausstellerkonfiguration sind zwei Befehlstasks verfügbar. Diese Datei kann sich auf der Zellenebene oder auf der Serverebene befinden. Es handelt sich dabei um folgende Tasks:

  • listSAMLIssuerConfig
  • updateSAMLIssuerConfig

Vorgehensweise

  1. Führen Sie die wsadmin-Befehlstask im Dialogmodus aus. Das folgende Jython-Script zeigt, wie die wsadmin-Befehlstask im Dialogmodus ausgeführt wird.
    AdminTask.listSAMLIssuerConfig('[-interactive]')

    Für die Auswahl der SAML-Ausstellerkonfiguration auf Serverebene sind die Parameter serverName und nodeName erforderlich. Wenn diese Parameter fehlen, listet die Befehlstask die SAML-Ausstellerkonfiguration auf Zellenebene auf.

  2. Verwenden Sie die Befehlstask listSAMLIssuerConfig, um die SAML-Ausstellerkonfiguration auf Serverebene anzuzeigen.
    AdminTask.listSAMLIssuerConfig('[-nodeName Node01 -serverName server1]')

    Zum Ausführen des Befehls listSAMLIssuerConfig ist die Berechtigung für die Rolle "Überwachung" oder eine höhere Verwaltungsrolle erforderlich.

  3. Verwenden Sie die Befehlstask "updateSAMLIssuerConfig", um die SAML-Ausstellerkonfiguration auf Serverebene oder Zellenebene zu aktualisieren.
    AdminTask.updateSAMLIssuerConfig('[-IssuerURI My_Issuer 
                                       -TimeToLiveMilliseconds 3600000 
                                       -KeyStoreRef "name=myKeyStore managementScope=(cell):Node01Cell:(node):Node01" 
                                       -KeyAlias samlissuer 
                                       -KeyName "CN=SAMLIssuer, O=Acme, C=US" -KeyPassword ***** 
                                       -TrustStoreRef "name=myKeyStore managementScope=(cell):Node01Cell:(node):Node01 "]')

    Wenn die Parameter serverName und nodeName nicht angegeben werden, aktualisiert die Task die SAML-Ausstellerkonfiguration auf der Zellenebene.

    Zum Ausführen des Befehls updateSAMLIssuerConfig ist die Berechtigung für die Rolle "Administrator" oder eine höhere Verwaltungsrolle erforderlich.

Ergebnisse

Sie haben Befehlsscripts erstellt, um den Prozess zur Aktualisierung der Dateien SAMLIssuerConfig.properties auf Zellenebene oder Serverebene zu automatisieren, oder Sie haben Konfigurationsdaten für selbst ausgestellte SAML-Token als angepasste Eigenschaften in den allgemeinen Bindungen oder in den anwendungsspezifischen Bindungen der Konfiguration abgehender Anforderungen des Anforderers erstellt.

Beispiel

Im folgenden Beispiel wird gezeigt, wie Konfigurationsdaten für selbst ausgestellte SAML-Token in den anwendungsspezifischen Bindungen hinzugefügt oder geändert werden:
AdminTask.setSAMLIssuerConfigInBinding('[-bindingName SAMLTestAppClientBinding 
-bindingLocation [ [application JaxWSServicesSamples] [attachmentId 1904] ] 
-com.ibm.wsspi.wssecurity.saml.config.issuer.IssuerURI My_Issuer 
-com.ibm.wsspi.wssecurity.saml.config.issuer.TimeToLiveMilliseconds 3600000 
-com.ibm.wsspi.wssecurity.saml.config.issuer.KeyStoreRef "name=myKeyStore managementScope=(cell):Node01Cell:(node):Node01 " 
-com.ibm.wsspi.wssecurity.saml.config.issuer.KeyAlias samlissuer 
-com.ibm.wsspi.wssecurity.saml.config.issuer.KeyName "CN=SAMLIssuer, O=Acme,C=US" 
-com.ibm.wsspi.wssecurity.saml.config.issuer.KeyPassword ***** 
-com.ibm.wsspi.wssecurity.saml.config.issuer.TrustStoreRef "name=myKeyStore managementScope=(cell):Node01Cell:(node):Node01 "]')
Im folgenden Beispiel wird gezeigt, wie die allgemeinen Bindungen geändert werden:
AdminTask.setSAMLIssuerConfigInBinding('[-bindingName "Saml Bearer Client sample" 
-bindingScope domain -bindingLocation  -domainName global 
-com.ibm.wsspi.wssecurity.saml.config.issuer.IssuerURI My_Issuer 
-com.ibm.wsspi.wssecurity.saml.config.issuer.TimeToLiveMilliseconds 3600000 
-com.ibm.wsspi.wssecurity.saml.config.issuer.KeyStorePath "Profilstammverzeichnis/etc/ws-security/saml/saml-issuer.jceks
-com.ibm.wsspi.wssecurity.saml.config.issuer.KeyStoreType jceks 
-com.ibm.wsspi.wssecurity.saml.config.issuer.KeyStorePassword ***** 
-com.ibm.wsspi.wssecurity.saml.config.issuer.KeyAlias samlissuer 
-com.ibm.wsspi.wssecurity.saml.config.issuer.KeyName "CN=SAMLIssuer, O=Acme, C=US" 
-com.ibm.wsspi.wssecurity.saml.config.issuer.KeyPassword ***** 
-com.ibm.wsspi.wssecurity.saml.config.issuer.TrustStorePath "Profilstammverzeichnis/profiles/<server_name>/etc/ws-security/saml/saml-issuer.jceks
-com.ibm.wsspi.wssecurity.saml.config.issuer.TrustStoreType jceks 
-com.ibm.wsspi.wssecurity.saml.config.issuer.TrustStorePassword *****]')

Wenn Sie Anwendungsbindungen festlegen, ist bindingLocation ein erforderlicher Parameter, der nicht als Eigenschaftenobjekt angegeben werden kann. Die Eigenschaftsnamen sind application und attachmentId. Wenn Sie allgemeine Bindungen angeben, ist der Parameter bindingLocation erforderlich, der null sein oder leere Eigenschaften haben kann. Für einen nicht globalen Geltungsbereich ist außerdem ist der Parameter bindingScope erforderlich. Verwenden Sie den Parameter bindingName zum Festlegen der Bindungsposition. Weitere Informationen zu den Parametern bindingLocation, bindingScope und domainName finden Sie in der Dokumentation zur Befehlstask setBinding oder getBinding.

Wenn die angepassten Eigenschaften der SAML-Ausstellerkonfiguration aus den Bindungen entfernt werden sollen, verwenden Sie die Administrationskonsole oder die Befehlstask setBinding.


Symbol, das den Typ des Artikels anzeigt. Taskartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twbs_manage_saml_self_issuer
Dateiname:twbs_manage_saml_self_issuer.html