|Oracle® Communications Converged Application Server Administration Guide
Part Number E17647-03
This chapter describes the Oracle Communications Converged Application Server security features:
Converged Application Server users must be authenticated when they request access to a protected resource, such as a protected method within a deployed SIP Servlet. Converged Application Server enables you to implement user authentication for SIP Servlets using any of the following techniques:
DIGEST authentication uses a simple challenge-response mechanism to verify the identity of a user over SIP. This technique is described in "Configuring Digest Authentication". To authenticate over HTTP, application developers must provide their own implementations.
CLIENT-CERT authentication uses an X509 certificate chain passed to the SIP application to authenticate a user. The X509 certificate chain can be provided in a number of different ways. In the most common case, two-way SSL handshake is performed before transmitting the chain to ensure secure communication between the client and server. CLIENT-CERT authentication is described fully in "Configuring Client-Cert Authentication".
BASIC authentication uses the
Authorization SIP header to transmit the username and password to SIP Servlets. BASIC authentication is deprecated in RFC 3261 and is not recommended for production systems. This document does not provide configuration instructions for using BASIC authentication.
Different SIP Servlets deployed on Converged Application Server can use different authentication mechanisms as necessary. The required authentication mechanism is specified in the
auth-method element of the SIP Servlet's
sip.xml deployment descriptor. The deployment descriptor may also define which resources are to be protected, listing specific role names that are required for access. The SIP Servlet v1.1 specification introduces the ability to specify the realm name and identity assertion mechanism required or supported by an application.
See "Securing SIP Servlet Resources" in Converged Application Server SIP Application Development Guide for information about securing resources and mapping roles in the SIP Servlet deployment descriptor. See the SIP Servlet v1.1 specification for information about defining the Servlet authentication and identity assertion mechanism.
Converged Application Server authentication services are implemented using one or more authentication providers. An authentication provider performs the work of proving the identity of a user or system process, and then transmitting the identity information to other components of the system.
You can configure and use multiple authentication providers to use different authentication methods, or to work together to provide authentication. For example, when using Digest authentication you typically configure both a Digest Identity Asserter provider to assert the validity of a digest, and a second LDAP or RDBMS authentication provider that determines the group membership of a validated user.
When linking multiple authentication providers, you must specify the order in which providers are used to evaluate a given user, and also specify how much control each provider has over the authentication process. Each provider can contribute a "vote" that specifies whether or not the provider feels a given user is valid. The provider's control flag indicates how the provider's vote is used in the authentication process.
Converged Application Server also enables you to designate trusted hosts for your system. Trusted hosts are hosts for which Converged Application Server performs no authentication. If the server receives a SIP message having a destination address that matches a configured trusted host name, the message is delivered without Authentication. See Chapter 30, "Engine Tier Configuration Reference (sipserver.xml)" for more information.
Converged Application Server supports the
P-Asserted-Identity SIP header as described in RFC 3325. This functionality automatically logs in using credentials specified in the
P-Asserted-Identity header when they are received form a trusted host. When combined with the
P-Asserted-Identity also determines whether the message can be forwarded to trusted and non-trusted hosts.
Converged Application Server also supports identity assertion using the
Identity-Info headers as described in RFC 4474.
Both identity assertion mechanisms require that you configure an appropriate security provider with Converged Application Server. See "Overview of SIP Servlet Identity Assertion Mechanisms" for more information.
The SIP Servlet API specification defines a set of deployment descriptor elements that can be used for providing declarative and programmatic security for SIP Servlets. The primary method for declaring security constraints is to define one or more
security-constraint elements and role definitions in the
sip.xml deployment descriptor. Converged Application Server adds additional deployment descriptor elements to help developers easily map SIP Servlet roles to actual principals and/or roles configured in the SIP Servlet container. See "Securing SIP Servlet Resources" in Converged Application Server SIP Application Development Guide for more information.
Converged Application Server includes an auditing provider that you can configure to monitor authentication events in the security realm. See Securing Oracle WebLogic Server in the Oracle WebLogic Server 11g documentation for more information.
Table 25-1 lists Converged Application Server configuration tasks and provides links to additional information.
Understanding the Digest identity assertion providers
Configuring LDAP Digest authentication
Configuring Digest authentication with an RDBMS
Understanding client-cert authentication solutions
Delivering X509 certificates over 2-way SSL
Developing a Perimeter authentication solution
Using the Converged Application Server
Understand forwarding rules for SIP messages having the
"Securing SIP Servlet Resources" in Converged Application Server SIP Application Development Guide
Defining security constraints for a SIP Servlet
Mapping SIP Servlet roles to Converged Application Server roles and principals
Debugging SIP Servlet security constraints
Configuring trusted hosts