Skip navigation.

Configuring and Managing WebLogic SIP Server

  Previous Next vertical dots separating previous/next from contents/index/pdf Contents View as PDF   Get Adobe Reader

Configuring Client-Cert Authentication

The following sections describe how to configure WebLogic SIP Server to use Client-Cert authentication:

 


Overview of Client-Cert Authentication

Client-Cert authentication uses a certificate or other custom tokens in order to authenticate a user. The token is "mapped" to a user present in the WebLogic SIP Server security realm in which the Servlet is deployed. SIP Servlets that want to use Client-Cert authentication must set the auth-method element to CLIENT-CERT in their sip.xml deployment descriptor.

The token used for Client-Cert authentication can be obtained in several different ways:

SIP Servlets can also use the CLIENT-CERT auth-method to implement perimeter authentication. Perimeter authentication uses custom token names and values, along with a custom security provider, to authenticate clients. See Supporting Perimeter Authentication with a Custom IA Provider for a summary of steps required to implement perimeter authentication.

 


Configuring SSL and X509 for WebLogic SIP Server

WebLogic SIP Server includes two separate Identity Assertion providers that can be used with X509 certificates. The LDAP X509 Identity Asserter provider receives an X509 certificate, looks up the LDAP object for the user associated with that certificate in a separate LDAP store, ensures that the certificate in the LDAP object matches the presented certificate, and then retrieves the name of the user from the LDAP object. The Default Identity Asserter provider maps the user according to its configuration, but does not validate the certificate.

With either provider, WebLogic SIP Server uses two-way SSL to verify the digital certificate supplied by the client. You must ensure that a SIPS transport (SSL) has been configured in order to use Client-Cert authentication. See Managing WebLogic SIP Server Network Resources if you have not yet configured a secure transport.

See Configuring the Default Identity Asserter to configure the Default Identity Asserter provider. In most production installations you will have a separate LDAP store and will need to configure the LDAP X509 Identity Asserter provider to use client-cert authentication; see Configuring the LDAP X509 Identity Asserter.

Configuring the Default Identity Asserter

The Default Identity Asserter can be configured to verify an X509 certificate passed to it by a client over a secure (SSL) connection. The Default Identity Asserter requires a separate user name mapper to map the associated client "certificate" to a user configured in the default security realm. You can use the default user name mapper installed with WebLogic SIP Server, or you can create a custom user name mapper class as described in Configuring a User Name Mapper in the WebLogic Server 8.1 Documentation.

Follow these instructions to configure the Default Identity Asserter:

  1. Log in to the Administration Console for the WebLogic SIP Server domain you want to configure.
  2. In the left pane of the Console, expand the Security->Realms->myrealm->Providers->Authentication node.
  3. Select the Authentication node in the left pane.
  4. In the right pane of the Console, select DefaultIdentityAsserter from the table of configured providers.
  5. In the Types table, select X.509 and use the arrow to move this type to the Chosen column.
  6. Select Base64 Decoding Required if the client token is being passed via two-way SSL or a WL-Proxy-Client-Cert header.
  7. Click Apply to apply the change.
  8. You can use either a custom Java class to map names in the X509 certificate to usernames in the built-in LDAP store, or you can use the default user name mapper. To specify a custom Java class to perform user name mapping:
    1. Enter the name of the custom class in the User Name Mapper Class Name field.
    2. Click Apply.

    To use the default user name mapper:

    1. Click the Details tab.
    2. Select Use Default User Name Mapper
    3. In the Default User Name Mapper Attribute Type field, select either CN-Common Name or E-Email Address depending on the user name attribute you have stored in the security realm.
    4. In the Default User Name Mapper Attribute Delimiter field, accept the default delimiter of "@". This delimiter is used with the E-Email Address attribute type to extract the email portion from the client token. For example, a token of "joe@mycompany.com" would be mapped to a username "joe" configured in the default security realm.
    5. Click Apply.

Configuring the LDAP X509 Identity Asserter

Follow these steps to create and configure the X509 Authentication Provider.

  1. Log in to the Administration Console for the WebLogic SIP Server domain you want to configure.
  2. In the left pane of the Console, expand the Security->Realms->myrealm->Providers->Authentication node.
  3. Select the Authentication node in the left pane.
  4. In the right pane of the Console, select Configure a new LDAP Digest p Asserter...
  5. Enter a name for the new provider in the Name field, or accept the default, and click Create.
  6. In the Active Types Chooser area, select X.509 and use the arrow to move this type to the Chosen column.
  7. Click Apply to create the new provider.
  8. Select the Details tab in the right pane to further configure the new provider.
  9. In the Details tab, enter LDAP server information into the fields as follows:
  10. Click Apply to apply your changes.
  11. Reboot the server to realize the changed security configuration.

 


Configuring WebLogic SIP Server to Use WL-Proxy-Client-Cert

In order for WebLogic SIP Server to use the WL-Proxy-Client-Cert header, a proxy server or load balancer must first transmit the X509 certificate for a client request, encrypt it using base-64 encoding, and then add the resulting token WL-Proxy-Client-Cert header in the SIP message. If your system is configured in this way, you can enable the local WebLogic SIP Server instance (or individual SIP Servlet instances) to examine the WL-Proxy-Client-Cert header for client tokens.

To configure the server instance to use the WL-Proxy-Client-Cert header:

  1. Log in to the Administration Console for the WebLogic SIP Server domain you want to configure.
  2. In the left pane, expand the Servers node and select a server to configure. (Alternately, expand the Clusters node and select a cluster name to configure WL-Proxy-Client-Cert use for the entire cluster.)
  3. Select the Configuration->General tab in the right pane.
  4. Select Client Cert Proxy Enabled.
  5. Click Apply to apply your changes.
  6. Follow the instructions under Configuring SSL and X509 for WebLogic SIP Server to configure either the default identity asserter or the LDAP Identity Asserter provider to manage X509 certificates. Select the Base64 Decoding Required option to decode the token passed in the WL-Proxy-Client-Cert header.
  7. Reboot the server to realize the changed configuration.

To enable WL-Proxy-Client-Cert header for an individual Web Application, set the com.bea.wcp.clientCertProxyEnabled context parameter to true in the sip.xml deployment descriptor.

 


Supporting Perimeter Authentication with a Custom IA Provider

With perimeter authentication, a system outside of WebLogic Server establishes trust via tokens. The system is generally comprised of an authentication agent that creates an artifact or token that must be presented to determine information about the authenticated user at a later time. The actual format of the token varies from vendor to vendor (for example, SAML or SPNEGO).

WebLogic SIP Server supports perimeter authentication through the use of an Identity Assertion provider designed to recognize one or more token formats. When the authentication type of a SIP Servlet is set to CLIENT-CERT, the SIP container in WebLogic SIP Server performs identity assertion on values from the request headers. If the header name matches the active token type for a configured provider, the value is passed to the provider for identity assertion.

The provider can then use a user name mapper to resolve the certificate to a user available in the security realm. The user corresponding to the Subject's Distinguished Name (SubjectDN) attribute in the client's digital certificate must be defined in the server's security realm; otherwise the client will not be allowed to access a protected WebLogic resource.

If you want to use custom tokens to pass client certificates for perimeter authentication, you must create and configure a custom Identity Assertion provider in place of the LDAP X509 or Default Identity Asserter providers described above. See Identity Assertion Providers in Developing Security Providers for WebLogic Server (WebLogic Server 8.1 Documentation) for information about creating providers for handling tokens passed with perimeter authentication.

 

Skip navigation bar  Back to Top Previous Next