Oracle® Communications Services Gatekeeper Application Developer's Guide Release 5.1 E37542-01 |
|
|
PDF · Mobi · ePub |
The Session Manager Web Service contains operations for establishing a session with Oracle Communications Services Gatekeeper, changing the application's password, querying the amount of time remaining in the session, refreshing the session, and terminating the session.
Note:
Not all installations of Services Gatekeeper require session management. The contents of this chapter apply only to those installations that do.When an operator requires it, an application must establish a session with Services Gatekeeper before the application can perform any operations on the Parlay X or Extended Web Services interfaces. When a session is established, a session ID is returned which must be used in each subsequent operation towards Services Gatekeeper.
The WSDL for the Session Manager can be found at
http://
host
:
port
/session_manager/SessionManager
where host and port depend on the Services Gatekeeper deployment.
Operations to establish a session, change a password, get the remaining lifetime of a session, refresh a session and destroy a session.
Establishes a session using Web Services Security. Authentication information must be provided according to WS-Security. See "Authentication".
Changes the password for an application.
Gets the remaining lifetime of an established session. The default lifetime is configured in Services Gatekeeper.
Refreshes the lifetime of an session. The session can be refreshed during a time interval after the a session has expired. This time interval is configured in Services Gatekeeper.
The code below illustrates how to get the Session Manager and how to prepare the generated stub with Web Service security information. The stub is generated from the Session Manager Web Service.
Example 3-1 Get hold of the Session Manager
protected ClientSessionManImpl(String sessionManagerURL, PolicyBase pbase) throws Exception { SessionManagerService accessservice = new SessionManagerService_Impl(sessionManagerURL+"?WSDL"); port = accessservice.getSessionManager(); pbase.prepareStub((Stub)port); }
Below illustrates how to prepare the Session Manager stub with Username Token information according to WS-Policy.
Example 3-2 Prepare the Session Manager with Username Token information
package com.bea.wlcp.wlng.client.access.wspolicy; import weblogic.wsee.security.unt.ClientUNTCredentialProvider; import weblogic.xml.crypto.wss.WSSecurityContext; import javax.xml.rpc.Stub; import java.util.ArrayList; import java.util.List; public class UsernameTokenPolicy implements PolicyBase { private String username; private String password; public UsernameTokenPolicy(String username, String password) { this.username = username; this.password = password; } public void prepareStub(Stub stub) throws Exception { List<ClientUNTCredentialProvider> credProviders = new ArrayList<ClientUNTCredentialProvider>(); credProviders.add(new ClientUNTCredentialProvider(username.getBytes(), password.getBytes())); System.out.println("setting standard wssec"); stub._setProperty(WSSecurityContext.CREDENTIAL_PROVIDER_LIST, credProviders); } }