Service-Provider für die Freigabe seiner Richtlinienkonfiguration mit wsadmin-Scripting konfigurieren

Ein Service-Provider von WebSphere Application Server kann seine Richtlinienkonfiguration in einer veröffentlichten WSDL-Datei (Web Services Description Language) oder einer WSDL bereitstellen, die über eine HTTP-Get-Anforderung oder eine WS-MetadataExchange-GetMetadata-Anforderung abgerufen wird.

Vorbereitende Schritte

Sie haben einen Service-Provider für Web-Services entwickelt, der alle erforderlichen Artefakte enthält, und Ihre Web-Service-Anwendung in Ihrer Anwendungsserverinstanz implementiert. Sie haben die Richtliniensätze zugeordnet und die zugehörigen Bindungen verwaltet.

Eine Liste der unterstützten Spezifikationen für die WS-Policy-Zusicherung und der WS-Policy-Domänen finden Sie im Artikel zu WS-Policy.

Informationen zu diesem Vorgang

Die Richtlinienkonfiguration eines JAX-WS-Serviceendpunkts (Java™ API for XML-Based Web Services) kann auf die folgenden Arten für die gemeinsame Nutzung verfügbar gemacht werden:
  • Nehmen Sie die Richtlinienkonfiguration des Service-Providers in die WSDL auf. Die WSDL kann anschließend veröffentlicht oder über eine HTTP-Get-Anforderung abgerufen werden.
  • Aktivieren Sie das Protokoll "Web Services Metadata Exchange (WS-MetadataExchange)", sodass die Richtlinienkonfiguration des Service-Providers in die WSDL aufgenommen und für eine WS-MetadataExchange-GetMetadata-Anforderung verfügbar ist. Wenn Sie das Protokoll "WS-MetadataExchange" verwenden, hat dies den Vorteil, dass Sie für WS-MetadataExchange-GetMetadata-Anforderungen die Sicherheit auf Nachrichtenebene festlegen können, indem Sie einen geeigneten Systemrichtliniensatz verwenden.

Wenn die Service-Provider-Anwendung eine WSDL mit mehreren Teilen verwendet, müssen alle WSDL-Teile für die Web-Service-Anwendung lokal sein. Weitere Informationen zu WSDLs mit mehreren Teilen finden Sie im Artikel zu WSDL.

Sie müssen einen Service-Provider für die Freigabe seiner Richtlinienkonfiguration konfigurieren, weil die Richtlinienkonfiguration standardmäßig nicht in WSDL des Service-Providers verfügbar ist. Sie können den Service-Provider so konfigurieren, dass er die Richtlinienkonfiguration in seine WSDL einschließt, dass er WS-MetadataExchange für die Bereitstellung der Richtlinienkonfiguration verwendet oder beides. In diesem Artikel wird beschrieben, wie Sie mit wsadmin-Befehlen einen Service-Provider für die Freigabe seiner Richtlinienkonfiguration konfigurieren. Sie können für diese Konfiguration auch die Administrationskonsole oder Tools von Rational Application Developer verwenden.

Sie können einen Service-Provider definieren, der seine Richtlinienkonfiguration auf Anwendungs- oder Serviceebene freigibt. Die Richtlinienkonfiguration, die durch die Richtliniensätze dargestellt wird, die niedrigeren Ebenen zugeordnet sind, wird ebenfalls freigegeben. Richtliniensätze, die auf niedrigeren Ebenen zugeordnet sind, setzen die Konfiguration der Richtliniensätze, die auf einer höheren Ebene zugeordnet sind, außer Kraft.

Vorgehensweise

  1. Starten Sie den wsadmin-Scripting-Client, falls dieser noch nicht ausgeführt wird.
  2. Verwenden Sie den Befehl SetProviderPolicySharingInfo. Beispiel:
    AdminTask.setProviderPolicySharingInfo('[-applicationName WebServiceProviderApplication 
    -resource WebService:/WebServiceProvider.war:{http://example_path/}Service1 
    -sharePolicyMethods [httpGet ]]') 
  3. Speichern Sie Ihre Änderungen in der Masterkonfiguration.
    Geben Sie zum Speichern Ihrer Konfigurationsänderungen den folgenden Befehl ein:
    AdminConfig.save()

Ergebnisse

Die Richtlinienkonfiguration des Service-Providers ist jetzt für die Clients verfügbar. Die WSDL des Service-Providers enthält die aktuelle Richtlinienkonfiguration im WS-PolicyAttachments-Format, sodass sie für andere Clients, Service-Registrys und Services, die die Spezifikation "Web Services Policy (WS-Policy)" unterstützen, verfügbar ist.
Wenn die Richtlinienkonfiguration nicht gemeinsam genutzt werden kann, wird ein Fehler, der das Problem beschreibt, in das Fehlerprotokoll des Service-Providers geschrieben, und die folgende Richtlinie wird der WSDL des Service-Providers zugeordnet.
<wsp:Policy>
<wsp:ExactlyOne>
</wsp:ExactlyOne>
</wsp:Policy>
Diese Richtlinie benachrichtigt den Client darüber, dass keine akzeptable Richtlinienkonfiguration für den Service vorhanden ist. Andere Aspekte der WSDL bleiben davon unberührt.

Möglicherweise kann ein Service-Provider seine Richtlinienkonfiguration nicht zur gemeinsamen Nutzung bereitstellen, weil die Konfiguration nicht im WS-PolicyAttachments-Standardformat ausgedrückt werden kann. Ein möglicher Grund dafür ist der, dass für einen bestimmten Zuordnungspunkt mehrere inkompatible Richtlinien definiert sind. Ein weiterer Grund kann darin liegen, dass nicht genügend Bindungsinformationen vorhanden sind, um die Standardrichtlinie zu generieren. Die Richtlinienkonfiguration kann beispielsweise die Bootstraprichtlinie enthalten, das ist die Richtlinie für den Zugriff auf einen WS-Trust-Service, daher muss die Bootstraprichtlinie ebenfalls im WS-PolicyAttachments-Format ausgedrückt werden.

Nächste Schritte

Optional können Sie die WSDL-Dateien veröffentlichen.

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_wsp_server_sharew
Dateiname:twbs_wsp_server_sharew.html