SAML-Token auf Nachrichtenebene signieren

SAML-Token auf Nachrichtenebene schützen, indem das Signieren von Zusicherungen aktiviert wird.

Vorbereitende Schritte

Bevor Sie das Signieren von SAML-Token konfigurieren, müssen Sie SAML-Richtliniensätze und -Bindungen konfigurieren, um SAML-Token als Token für die Authentifizierungsunterstützung mit Integritätsschutz auf Nachrichtenebene zu erstellen. Lesen Sie hierzu die Informationen zum Schutz von Nachrichten mit SAML. Zusätzlich müssen die zugeordneten SAML-Bindungen anwendungsspezifische Bindungen sein und nicht allgemeine Bindungen. Der Umsetzungsalgorithmus, der für das Signieren von SAML-Zusicherungen verwendet wird, unterscheidet sich von allen anderen signierten Abschnitten, während für allgemeine Bindungen lediglich ein Umsetzungsalgorithmus verwendet wird.

Informationen zu diesem Vorgang

Diese Task beschäftigt sich speziell mit den Schritten für die digitale Signatur eines SAML-Tokens. Diese Task enthält keine Informationen zu den Anforderungen des OASIS-Standards SAML Token Profile für SAML-Sender-Vouches-Token oder SAML-Bearer-Token bezüglich der zu signierenden Nachrichtenabschnitte. Für das Signieren von SAML-Zusicherungen muss eine SOAP-Nachricht ein Element des Typs <wsse:SecurityTokenReference> im Headerblock <wsse:Security> enthalten. Die "SecurityTokenReference" (Sicherheitstokenreferenz, STR) wird mit einem Element des Typs <ds:Reference> von der Nachrichtensignatur referenziert. Die Sicherheitstokenreferenz muss ein Element des Typs <wsse:KeyIdentifier> mit dem "ValueType"-Wert http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLID, oder http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.0#SAMLAssertionID enthalten, der die referenzierte Zusicherungs-ID angibt. Das Element des Typs <ds:Reference> muss die URI des Algorithmus "STR-transform" enthalten: http://docs.oasis-open.org/wss/2004/01/oasis-200401-wsssoap-message-security-1.0#STR-Transform. Durch die Verwendung von "STR-transform" wird sichergestellt, dass die SAML-Zusicherung selbst und nicht nur das Element <wsse:SecurityTokenReference> signiert wird.

Befolgen Sie diese Konfigurationsschritte, um das Signieren von SAML-Token auf Nachrichtenebene zu aktivieren.

Fehler vermeiden Fehler vermeiden: Beim ersten Erstellen eines SAMLToken können diesem nur über einen SAML-Attribut-Callback-Handler angepasste Attribute hinzugefügt werden. Zwar können Sie Ihrem SAMLToken-Objekt mit der Methode SAMLToken.addAttribute Attribute hinzufügen können, aber dadurch wird die digitale Signatur des Tokens entfernt, falls vorhanden. Außerdem kann diese Methode nicht mit verschlüsselten SAML-Token oder verschlüsselten Attributen verwendet werden. gotcha

Vorgehensweise

  1. Konfigurieren Sie die Nachrichtenabschnitte.
    1. Bearbeiten Sie den SAML-Richtliniensatz über die Administrationskonsole und klicken Sie anschließend auf WS-Security > Hauptrichtlinie > Abschnitte in Anforderungsnachrichten schützen.
    2. Klicken Sie unter Integrität schützen auf Hinzufügen.
    3. Geben Sie für Name des zu signierenden Abschnitts den Namen eines Abschnitts ein, z. B. SAML-Abschnitt.
    4. Klicken Sie unter Elemente im Abschnitt auf Hinzufügen.
    5. Wählen Sie XPath-Ausdruck aus.
    6. Fügen Sie zwei XPath-Ausdrücke hinzu.
      /*[namespace-uri()='http://schemas.xmlsoap.org/soap/envelope/' 
      and local-name()='Envelope']/*[namespace-uri()='http://schemas.xmlsoap.org/soap/envelope/' 
      and local-name()='Header']/*[namespace-uri()='http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd' 
      and local-name()='Security']/*[namespace-uri()='http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd' 
      and local-name()='SecurityTokenReference']
      /*[namespace-uri()='http://www.w3.org/2003/05/soap-envelope' 
      and local-name()='Envelope']/*[namespace-uri()='http://www.w3.org/2003/05/soap-envelope' 
      and local-name()='Header']/*[namespace-uri()='http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd' 
      and local-name()='Security']/*[namespace-uri()='http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd' 
      and local-name()='SecurityTokenReference']
    7. Klicken Sie auf Anwenden und Speichern.
    8. Wenn eine Anwendung mit dieser Richtlinie noch nie gestartet wurde, ist keine weitere Aktion erforderlich. Andernfalls müssen Sie den Anwendungsserver erneut starten oder die Anweisungen im Artikel Richtliniensatzkonfigurationen mit wsadmin-Scripting aktualisieren ausführen, damit der Anwendungsserver den Richtliniensatz erneut lädt.
  2. Ändern Sie die Clientbindungen zum Signieren des SAML-Tokens.
    1. Klicken Sie in der Anzeige "Richtliniensätze und Bindungen für Service-Clients" auf WS-Security > Authentifizierung und Zugriffsschutz.
    2. Ändern Sie die derzeit konfigurierten Bindungen für signierte Nachrichtenabschnitte für abgehende Nachrichten in der Weise, dass sie den neuen SAML-Abschnitt enthalten, den Sie erstellt haben.

      Wählen Sie unter Zugriffsschutz durch Signatur und Verschlüsselung der Anforderungsnachricht die Referenz des Nachrichtenabschnitts mit dem Status Konfiguriert aus. Diese Komponentenreferenz ist wahrscheinlich request:app_signparts.

      1. Wählen Sie in der Liste Verfügbar unter "Referenz des Nachrichtenabschnitts" den Namen des zu signierenden Abschnitts aus, den Sie in Schritt 1 erstellt haben, z. B. SAML-Abschnitt.
      2. Klicken Sie auf Hinzufügen und anschließend auf Anwenden.
      3. Heben Sie in der Liste Zugewiesen unter "Referenz des Nachrichtenabschnitts" den Namen des Abschnitts hervor, den Sie hinzugefügt haben, z. B. SAML-Abschnitt.
      4. Klicken Sie auf Bearbeiten.
      5. Klicken Sie für die Einstellung Umsetzungsalgorithmen auf Neu.
      6. Wählen Sie http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#STR-Transform aus.
      7. Klicken Sie auf OK, OK und anschließend auf Anwenden.
    3. Aktualisieren Sie den SAML-Tokengeneratoren mit der angepassten Eigenschaft, um eine digitale Signatur mit einer Sicherheitstokenreferenz anzugeben.

      Wählen Sie unter "Authentifizierungstoken" das SAML-Token aus, das Sie signieren möchten, und bearbeiten Sie dieses.

      1. Klicken Sie unter "Angepasste Eigenschaften" auf Neu.
      2. Geben Sie als Namen der angepassten Eigenschaft com.ibm.ws.wssecurity.createSTR ein.
      3. Geben Sie als Wert für die angepasste Eigenschaft true an.
      4. Klicken Sie auf Anwenden und anschließend auf Speichern.
    4. Starten Sie die Anwendung erneut.
  3. Ändern die Providerbindungen zum Akzeptieren eines signierten SAML-Tokens.
    1. Klicken Sie in der Anzeige "Richtliniensätze und Bindungen für Service-Provider" auf WS-Security > Authentifizierung und Zugriffschutz.
    2. Ändern Sie die derzeit konfigurierten Bindungen für signierte Nachrichtenabschnitte für eingehende Nachrichten in der Weise, dass sie den neuen SAML-Abschnitt enthalten, den Sie erstellt haben.

      Wählen Sie unter Zugriffsschutz durch Signatur und Verschlüsselung der Anforderungsnachricht die Referenz des Nachrichtenabschnitts mit dem Status Konfiguriert aus. Diese Komponentenreferenz ist wahrscheinlich request:app_signparts.

      1. Wählen Sie in der Liste Verfügbar unter "Referenz des Nachrichtenabschnitts" den Namen des zu signierenden Abschnitts aus, den Sie in Schritt 1 erstellt haben, z. B. SAML-Abschnitt.
      2. Klicken Sie auf Hinzufügen und anschließend auf Anwenden.
      3. Heben Sie in der Liste Zugewiesen unter "Referenz des Nachrichtenabschnitts" den Namen des Abschnitts hervor, den Sie hinzugefügt haben, z. B. SAML-Abschnitt.
      4. Klicken Sie auf Bearbeiten.
      5. Klicken Sie für die Einstellung Umsetzungsalgorithmen auf Neu.
      6. Wählen Sie http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#STR-Transform aus.
      7. Klicken Sie auf OK, OK und anschließend auf Anwenden.
      8. Klicken Sie auf Speichern.
    3. Starten Sie die Anwendung erneut.

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_signsamltoken
Dateiname:twbs_signsamltoken.html