Gateway Service Schnittstelle

Für die Integration von geschützten Diensten in eigenen Anwendungen kann es sinnvoll sein, temporäre Gateways über die Web Service-Schnittstelle des securityGateways zu erzeugen. Einzelne Anwendungen oder Portale, bei denen nicht die Möglichkeit besteht, Java-Funktionen einzubinden, können auf diese Weise einfach in die Lage versetzt werden, abgesicherte Dienste für in der Applikation angemeldete Nutzer einzuladen. Die Web Service-Schnittstelle des securityGateway kann mit einem einfachen HTTP(S) GET/POST-Aufruf ein temporäres Gateway erzeugen und liefert die URL des Gateways in einem XML-Dokument zurück.

Alle Anfrageparameter müssen URL-encoded werden.

Anfrageparameter Erforderlich/ Optional Beschreibung

wssURL=<url>

E

URL des WSS der von diesem Gateway verwendet werden soll

ticket=<samlTicket>

E

Das Base64 kodierte SAML Response Dokument so wie es vom WAS bezogen wurde

facadeName=<gatename>

O

Name des Gateway; Der Name wird an die generelle URL der securityGateway Web Applikation angehängt;
falls dieser Parameter nicht vorhanden ist, wird eine UUID vom securityGateway erzeugt

ipFilter=<IP-Adressen>

O

IP-Adresse des Rechners, der das zu erstellende Gateway benutzen darf; wird der Parameter weggelassen oder besitzt einen leeren Wert, ist der Zugang nicht beschränkt

Die Anfrage wird unter Anwendung des Media Types application/x-www-form-urlencoded entweder durch ein ? getrennt von der securityGateway URL per HTTP GET oder als Teil des HTTP Body per HTTP POST an das securityGateway geschickt. Das Service Interface ist unter http(s)://[HOST]/gateway/SSOLoginAction.do erreichbar.

Beispiel einer HTTP POST Anfrage mit verkürzt dargestelltem Ticket
POST /gateway/SSOLoginAction.do HTTP/1.1

User-Agent: Jakarta Commons-HttpClient/3.0-beta1
Host: localhost:8080
Content-Length: 5221
Content-Type: application/x-www-form-urlencoded
wssURL=http%3A%2F%2F212.124.44.170%3A9090%2Fwss%2FWSS&ticket=PFJlc3BvbnNlIHhtbG5...&facadeServerName=myGate&ipFilter=10.10.21.21

Die Antwort auf eine solche Anfrage ist ein XML-Dokument, das Statusinformationen über die Anfragebearbeitung und – falls erfolgreich – die URL des erstellten Gateways enthält.

Beispielantwort (Erfolg)
<SSOLoginResponse status="ok">http://localhost:8080/securityGateway/gateto/myGate</SSOLoginResponse>
Beispielantwort (Misserfolg)
<SSOLoginResponse status="failed">InvalidFormat</SSOLoginResponse>