Core Security Patterns: Best Practices and Strategies for J2EE, Web Services, and Identity Management
J2EE-based applications can standardize the exchange of identities and access using SAML, which allows single sign-on across heterogeneous platforms within the enterprise (single domain) or across several security infrastructures (cross-domain). SAML becomes a common language or interface that allows users to sign on once to an application and to seamlessly access other applications to which they are entitled. The use of security patterns such as Assertion Builder (refer to the security patterns section later in this chapter) will be very handy. Architects and developers do not need to custom-build access control or authorization modules for each individual application or legacy system. SAML does not replace the authentication service in J2EE-based applications and Web services. Developers still require the use of an authentication infrastructure, which may be a JAAS authentication module or a home-grown authentication framework using a directory server. After the system authenticates a user, a SAML authentication assertion is created. SAML also does not substitute for a policy manager or policy engine. Developers still need a policy manager that stores the access control rules and enforces the security policy rules using a Policy Enforcement Point. The policy manager evaluates the user and then creates a SAML attribute assertion based on the policies and rules defined. There are two SAML usage scenarios in a J2EE-based application environment:
Without the use of SAML, J2EE-based applications are confined to proprietary mechanisms for passing authentication and authorization information between each other. This works well under an ideal, monolithic enterprise IT environment that has only J2EE-based applications. However, if there are custom-built applications, ERP, and legacy systems, architects and developers need to customize J2EE connectors and build session control for single sign-on. In such a case, the development effort is considerable, and the integration with these systems is fairly complex. |
Категории