BEA Logo BEA WebLogic Portal Release 4.0

  BEA Home  |  Events  |  Solutions  |  Partners  |  Products  |  Services  |  Download  |  Developer Center  |  WebSUPPORT

 

   WebLogic Portal Documentation   |   Security Guide   |   Previous Topic   |   Next Topic   |   Contents   |   Index

Introduction

 

This Security Guide is designed to help you understand how the WebLogic Portal product suite leverages the security features of the JavaTM 2 Platform Enterprise Edition (J2EE) specification and the J2EE-compliant security features of the WebLogic Server platform. It provides information about additional security measures that may have been established for individual application components within the WebLogic Portal product suite, and describes ways that you can modify security settings.

As an introduction to WebLogic Portal security, this topic includes the following sections:

 


Determining Your Application Security Needs

Security is a critical component of developing e-commerce applications that no organization can afford to ignore. Malicious individuals who gain access to your computer systems can temporarily interrupt business, but those who gain access to your customers' personal data can cause long-term damage to your reputation. Even if you have not had any security mishaps, customers are often hesitant to provide personal information over the Web, which could affect your ability to tailor products and services to customer preferences. Therefore, your organization must develop e-commerce applications that protect customer data and communicate a sense of privacy and purpose through the interface. At the same time, however, the application must not be difficult to navigate or perform slowly because of technical security requirements.

As the previous paragraph suggests, determining your application security needs can be challenging. You must balance the need for securing data with the need to make your site easy to navigate and perform quickly. You may want to ask yourself the following questions when attempting to define your application security requirements:

As you read the rest of this Security Guide, keep your answers to these questions in mind. By thinking upfront about your security requirements, you will be more likely to design security-aware applications, and may be better prepared to execute deployment activities.

 


Reliance on J2EE Standards and WebLogic Server Security

WebLogic Portal security implementations are based on the security requirements defined in the Java 2 Enterprise Edition (J2EE) specification, as well as the security measures implemented the BEA WebLogic ServerTM product.

This dependency has two important implications. First, if implemented properly, you can be confident that the applications you build using WebLogic Portal conform to the latest in J2EE security standards. Second, like the WebLogic Portal applications, your applications will also leverage the centralized security mechanisms of the WebLogic Server container, instead of requiring you to embed security code within individual Enterprise JavaBean (EJB) routines or their clients. Reliance on this centralized security model may significantly reduce the amount of effort required to build and maintain secure applications.

For more information about J2EE security requirements, see the "Security" section in the Java 2 Platform Enterprise Edition Specification, v1.3. For more information about how WebLogic Server implements J2EE security, refer to the Programming WebLogic Security documentation.

 


Declarative Security in WebLogic Portal

Because WebLogic Portal relies upon J2EE security requirements and the WebLogic Server's implementation of these requirements, security in the WebLogic Portal applications is primarily declarative.

As stated in the J2EE specification, declarative security means specifying an application's security structure—including security roles, access control, and authentication requirements—in a form that is external to the application. This external form is called a deployment descriptor, which is a centralized XML document for (among other things) defining protections on application resources. At runtime, the WebLogic Server container uses the deployment descriptor to enforce the specified security restrictions. Access to a protected resource is granted only if a user's security role matches the role declared in the deployment descriptor for that resource. Security Roles and Deployment Descriptors, provides more information about deployment descriptors and security roles.

A declarative approach to security has several advantages. First, declarative security is fine-grained, meaning that access can be restricted down to a specific method on a JavaBean. This gives you the flexibility to restrict only those resources that need protection. Second, an Application Assembler/Deployer can map security roles used within an application to the users and groups that already exist for a particular production environment at deployment time. This eliminates the need for individual developers to concern themselves with the security details of particular environments, and allows them to focus on other, possibly more important aspects of application development. Third, because deployment descriptor information is centralized and external to its associated application, it can be changed without modifying any JavaServer Page (JSP) or Enterprise JavaBean (EJB) source code. This architecture may significantly reduce the time developers spend debugging and maintaining code, as well as the likelihood of security holes due to programming errors.

Note: More information about declarative security can be found in the Enterprise JavaBeans 1.1 Specification.

 


Programmatic Security in WebLogic Portal

Programmatic security is also supported by the WebLogic Server container, and WebLogic Portal does occasionally use programmatic security in addition to declarative security. For example, some programmatic security is used in the Portal Administration services because an administrator's association with a portal is determined dynamically, after deployment. The static nature of declarative security (and the fact that it is defined at deployment time) would not work in this case. For more information about Portal Administration, see Portal Administration and Security.

Note: For more information about the differences between declarative and programmatic security, see the "Container Based Security" section of the Java 2 Platform Enterprise Edition Specification, v1.3.

 


Security Behavior in a J2EE Environment

The following points provide a high-level overview of how security typically works in a J2EE environment. This information is included to provide some context for the WebLogic Server's security activities, as well as to provide a basic understanding of how an application's deployment descriptors and security roles fit into a security policy.

As you can see by this simplified description, the Web server acts as an authentication proxy by gathering authentication data from a client and using it to establish an authenticated connection to a protected resource.

Note: For more detailed information about this process, see the "Security" section in the Java 2 Platform Enterprise Edition Specification, v1.3. For more information about authentication and authorization, see Introduction to WebLogic Server Security in the Programming WebLogic Security documentation.

 


About Security Realms

As described in Security Behavior in a J2EE Environment, a Web server authenticates users and determines which resources within the server users can create, access, or modify. To do this, the Web server uses a security realm. When a user attempts to access a particular resource, the server tries to authenticate and authorize that user by checking the access control list (ACL) and permissions that are assigned to the user within the realm. You can set up multiple security realms, but each instance of a Web server can use only one realm. The server uses the same security realm for your Web site developers and for your customers.

Note: More information about security realms, ACLs, and permissions can be found in the Introduction to WebLogic Server Security section of the Programming WebLogic Security documentation.

The default security realm for the WebLogic Portal is the RDBMS realm. That is, by default the server stores user IDs and passwords, group definitions, and ACLs in the RDBMS data repository.

WebLogic Portal also provides the following alternate security realms:

 


Next Steps

This Security Guide is intended mainly for individuals in your organization who act as Application Assemblers/Deployers and System Administrators, and assumes a certain level of familiarity with standard J2EE security implementations and with the security mechanisms of the BEA WebLogic Server.

Note: See Development Roles in the Strategies for Developing E-Business Web Sites documentation for more information about these and other organizational roles.

If you have no prior or recent experience with J2EE or WebLogic Server, you may want to spend some time learning about these technologies before proceeding. The following documents contain additional information about WebLogic Portal and WebLogic Server product security, or provide supplemental information that may be helpful for understanding the contents of this Security Guide.

If you feel comfortable with J2EE and WebLogic Server security topics, proceed through this guide—either sequentially or nonsequentially—to answer your questions about WebLogic Portal security.

 

back to top previous page next page