Authentication protocol settings for a client configuration


Use settings in sas.client.props to configure SAS and CISv2 clients.

Use the following settings in the APP_ROOT/properties/sas.client.props file to configure SAS and CSIv2 clients.

SAS is supported only between V6.0.x and previous version servers that have been federated in a V6.1 cell.

The sas.client.props file for WAS V7.0 now contains some new properties that support BasicAuth and Kerberos, such as:

com.ibm.IPC.authenticationTarget=BasicAuth
com.ibm.IPC.loginUserid=
com.ibm.IPC.loginPassword=
com.ibm.IPC.loginSource=prompt
com.ibm.IPC.krb5Service=WAS
com.ibm.IPC.krb5CcacheFile=
com.ibm.IPC.krb5ConfigFile=

com.ibm.CORBA.securityEnabled

Use to determine if security is enabled for the client process.


Table 1. com.ibm.CORBA.securityEnabled

Setting Value
Data Type Boolean
Default True
Valid values True or false

com.ibm.CSI.protocol

Use to determine which authentication protocols are active.

The client can configure protocols of ibm, csiv2 or both as active. The only possible values for an authentication protocol are ibm, csiv2 and both. Do not use sas for the value of an authentication protocol. This restriction applies to both client and server configurations.

The following list provides information about using each of these protocol options:

ibm

Use this authentication protocol option when we are communicating with WAS V4.x or earlier servers.

csiv2

Use this authentication protocol option when we are communicating with WAS V5 or later servers because the SAS interceptors are not loaded and running for each method request.

both

Use this authentication protocol option for interoperability between WAS V4.x or earlier servers and WAS Version 5 or later servers. Typically, specifying both provides greater interoperability with other servers.


Table 2. com.ibm.CSI.protocol

Setting Value
Data type String
Default Both
Valid values ibm, csiv2, both

com.ibm.CORBA.authenticationTarget

Use to determine the type of authentication mechanism for sending security information from the client to the server.

If basic authentication is specified, the user ID and password are sent to the server. Using the SSL transport with this type of authentication is recommended; otherwise, the password is not encrypted. The target server must support the specified authentication target.

If we specify LTPA, then LTPA must be the mechanism configured at the server for a method request to proceed securely.


Table 3. com.ibm.CORBA.authenticationTarget

Setting Value
Data type String
Default BasicAuth
Valid values BasicAuth, LTPA

com.ibm.CORBA.validateBasicAuth

Use to determine if the user ID and password get validated immediately after the login data is entered when the authenticationTarget property is set to BasicAuth.

In previous releases, BasicAuth logins validated only with the initial method request. During the first request, the user ID and password are sent to the server. This request is the first time that the client can notice an error, if the user ID or password is incorrect. The validateBasicAuth method is specified and the validation of the user ID and password occurs immediately to the security server.

For performance reasons, we might want to disable this property if we do not want to verify the user ID and password immediately. If the client program can wait, it is better to have the initial method request flow to the user ID and password. However, program logic might not be this simple because of error handling considerations.


Table 4. com.ibm.CORBA.validateBasicAuth

Setting Value
Data type Boolean
Default True
Valid values True, False

com.ibm.CORBA.authenticationRetryEnabled

Use to specify that a failed login attempt is retried. This property determines if a retry occurs for other errors, such as stateful sessions that are not found on a server or validation failures at the server because of an expiring credential.

The minor code in the exception that is returned to a client determines which errors are retried. The number of retry attempts is dependent upon the com.ibm.CORBA.authenticationRetryCount property.


Table 5. com.ibm.CORBA.authenticationRetryEnabled

Setting Value
Data type Boolean
Default True
Valid values True, False

com.ibm.CORBA.authenticationRetryCount

Use to specify the number of retries that occur until either a successful authentication occurs or the maximum retry value is reached.

When the maximum retry value is reached, the authentication exception is returned to the client.


Table 6. com.ibm.CORBA.authenticationRetryCount

Setting Value
Data type Integer
Default 3
Range 1-10

com.ibm.CORBA.loginSource

Use to specify how the request interceptor attempts to log in if it does not find an invocation credential already set.

Is valid only if message layer authentication occurs.

If only transport layer authentication occurs, this property is ignored. When specifying properties, the following two additional properties must be defined:

When performing a programmatic login, it is not necessary to specify none as the login source. The request fails if a credential is set as the invocation credential during a method request.

For the distributed platform, we can choose to NOT edit the properties file, sas.client.props, but set the loginSource property as follows: com.ibm.CORBA.loginSource=none

When you set com.ibm.CORBA.loginSource=none for a remote method invocation (RMI) connection, whether using scripting with wsadmin or from other clients, we have to perform a programmatic logon because the logged-in user's credentials are not inherited. Specify user and/or password at the command line.


Table 7. com.ibm.CORBA.loginSource

Setting Value
Data type String
Default Prompt
Valid values Prompt, key file, stdin, none, properties

com.ibm.CORBA.loginUserid

Use to specify the user ID when a properties login is configured and message layer authentication occurs.

Is valid only when com.ibm.CORBA.loginSource=properties. Also set the com.ibm.CORBA.loginPassword property.


Table 8. com.ibm.CORBA.loginUserid

Setting Value
Data type String
Range Any string that is appropriate for a user ID in the configured user registry of the server.

com.ibm.CORBA.loginPassword

Use to specify the password when a properties login is configured and message layer authentication occurs.

Is valid only when com.ibm.CORBA.loginSource=properties. Also set the com.ibm.CORBA.loginUserid property.


Table 9. com.ibm.CORBA.loginPassword

Setting Value
Data type String
Range Any string that is appropriate for a password in the configured user registry of the server.

com.ibm.CORBA.keyFileName

Use to specify the key file used to log in.

A key file is a file that contains a list of realm, user ID, and password combinations that a client uses to log into multiple realms.

The realm used is the one found in the interoperable object reference (IOR) for the current method request. The value of this property is used when the com.ibm.CORBA.loginSource=key file is used.


Table 10. com.ibm.CORBA.keyFileName

Setting Value
Data type String
Default C;/WebSphere/AppServer/properties/wsserver.key
Range Any fully qualified path and file name of a WAS key file.

com.ibm.CORBA.loginTimeout

Use to specify the length of time that the login prompt stays available before it is considered a failed login.


Table 11. com.ibm.CORBA.loginTimeout

Setting Value
Data type Integer
Units Seconds
Default 300 (5 minute intervals)
Range 0 - 600 (10 minute intervals)

com.ibm.CORBA.securityEnabled

Use to determine if security is enabled for the client process.


Table 12. com.ibm.CORBA.securityEnabled

Setting Value
Data type Boolean
Default True
Range True, False





 

Related tasks


Set CSIV2 inbound and outbound communication settings

 

Related


CSIv2 and SAS client configuration