IBM
Shop Support Downloads
Home Products Consulting Industries News About IBM Search
IBM : developerWorks : Web architecture overview : Library - papers
 

ebusinessIBM Application Framework for e-business: Security
 

Mike Schlosser
Senior Software Engineer, IBM
November 1999

Contents:
 Introduction
 Security requirements
 Framework environment
 Security services
   Authorization
     Authentication
     Access control
   Asset protection
   Accountability
   Administration
   Assurance
   Availability
 Consulting services
 Scenario
 About the author
This paper reviews the business requirements for e-business security, and then discusses how these requirements are addressed by the technologies and products that comprise the security services for the IBM Application Framework for e-business.

The Application Framework for e-business architecture provides a full range of services for developing, deploying, and managing e-business applications. This paper focuses on the security services, which are a key component of the Framework's Network Infrastructure. For information on the other aspects of the architecture, refer to the IBM Application Framework for e-business - Architecture Overview paper. 

Introduction
In today's marketplace, across all industry segments, businesses are realizing that transformation to e-business (the integration of traditional Information Technology (IT) with technology that supports the Internet) is required to remain competitive. As enterprises around the world undergo transformations, they are increasingly leveraging Internet technologies to:

Not only is the e-business transformation changing the competitive landscape, it is also changing the way companies must identify and deal with new threats and vulnerabilities to their business assets. Business procedures and IT policies need to be updated to account for these new business risks. The basic issues of security have not changed for IT groups, but the technologies available for IT groups to integrate security into e-business solutions have changed.

A wealth of data supports the point that security is the primary concern of IT managers when moving to e-business. But for e-business to take place successfully, the role that security plays must change from being solely a preventive measure to being an enabling force as well. Marlo Kosanovich, META Group's program director of Service Management Strategies and Global Network Strategies, asserts: "IT organizations can no longer view security as a burden. Rather, security must be viewed as an enabler, and security policies must become an integral part of IT as businesses continue to expose themselves and collaborate with key partners, customers, and employees." (Source: META Group press release, 15 March 1999: "META Group unveils enterprise security issues; research reveals that third-party access will drive increase in external security breaches.")

Security requirements
Security requirements really haven't changed -- security has always been about risk management. Managing risk is a business decision based on a cost/benefit analysis. How much security you implement is based on your assessment of the risks involved in not providing it as compared with the benefit you achieve when you do. Your decision to apply security to your e-business application will involve a series of decisions and policies, not a binary declaration to "do" security or not. Which, and how many, of the security mechanisms described in this paper you use will depend in part on the nature of the application you're working with and the business value of the transactions you're supporting. Usually the amount of money you spend on technology to protect your assets, coupled with the cost of managing and maintaining that technology, must be less than the values of your assets for you to stay in business. 

The security requirements for e-business include:

The services provided by the Application Framework for e-business allows you to deal effectively with these requirements. 

Framework environment 
The IBM Application Framework is not something you buy -- it's an approach you use to create and deploy e-business applications that are based on open systems standards, that provide support for multiplatform heterogeneous environments, that are server centric and scalable, and that use and extend existing systems. This section provides a general description of the Framework environment, or model, that you use to design and develop applications. 

The Framework is based on a Web-oriented style of network computing that has evolved from traditional client/server computing, and incorporates the 3-tier application elements of presentation services, Web-centered business logic, and data storage. A key element of the Framework is integrating a company's existing business systems, applications, and data to provide a complete e-business solution. 

The design principles for secure e-business are defined in the Framework's System Model. We will focus on two design principles here. We begin with the design principle that the business logic of a Web application runs on the server and not on the client. The Web application server is used to integrate access to resources (databases, etc.), which simplifies application design, improves scalability, and provides greater security of the resources. This design principle is implemented using the Framework's Model/View/Controller (MVC) based Web Application Programming Model.

Another design principle is structuring your e-business application to protect the Web application server by using network filters called "firewalls." A good design protects the Web server (providing presentation services) behind an outer firewall, and the remaining servers (supporting business logic) behind a second, inner firewall. This structure is known as a demilitarized zone, or DMZ.

While we will discuss the security services that are used to implement the protection in the DMZ later, the application design must first be structured to permit it to operate across a DMZ. In most cases, a Web server sits alone in the DMZ, handling requests from the Web and passing them along to the secure intranet network. The Web server contains the logic and data necessary to construct the user interface of the e-business application and the ability to convert protocols (IIOP, MQ, etc.), and little else. The Web application server and internal business systems behind the inner firewall contain all the remaining business logic and data of the application.

This separation of roles has implications for how you structure your applications and how the various parts communicate, especially when using objects. You must also consider trade-offs in your design between the performance of your application and risk. One important tradeoff to evaluate is the degree to which you will exploit the performance benefit you can attain by caching frequently requested data inside the DMZ rather than retrieving it from back-end systems each time it is requested. In any case, machines in the DMZ are known to be at higher risk and are managed accordingly. 

Up to now, we have focused on the aspects of security addressed by the basic Framework computing environment and structure. The next section will define the set of security services and mechanisms that are used to enable and deliver e-business applications built on the model and structure we have defined.

Security services 
The IBM Application Framework for e-business provides many services for developing, deploying, and managing e-business applications. This section lists the security services of the Framework. 

Authorization
Only authorized users should be able to gain access to systems, applications, data and services, no matter where they are located.  There are two essential and interrelated aspects to authorization--authentication and access control.  Authentication is the process of proving that a user or other entity is authorized to use a particular system privilege.  Access control is the act of checking whether an authenticated user’s privileges permit the execution of a particular operation on a particular protected resource.

Authentication
An important step in building secure e-business applications is to define who can run the application, and then ensure that users are who they claim to be. This was not a priority during the initial stages of Internet enablement, because the information posted on the Web was there for all to see and use, while intranets were available only to employees inside the enterprise boundary. But e-business is different. You need to authenticate the consumers who buy your products or services, employees who access internal systems from remote locations via the public Internet, or business partners who are tightly integrated into your supply chain and ERP systems. Non-repudiation is also required. Non-repudiation is the ability to provide proof of the origin or delivery of data to protect the sender against a false denial by the recipient that the data has been received -- or to protect the recipient against false denial by the sender that the data has been sent.

There are many types of authentication mechanisms. The extensible security architecture provided by the Framework can accommodate a range of mechanisms that match the authentication strength required for the application. These mechanisms include user ID and password, one-time passtokens, digital certificates, and biometrics. Because Public Key Infrastructures (PKIs) are emerging as one of the technologies for trusted e-business applications, it is IBM's direction to implement and increasingly rely on PKI for e-business solutions. Here's a look at the key authentication mechanisms supported by the Framework.

Access control
Once a user's identity has been authenticated by the supplied digital certificate or other credentials, his or her access privileges must be determined. An authenticated user does not necessarily have any permissions to access applications within an e-business domain or resources within an application. Permissions are granted by setting up access control lists (ACLs) on a resource such as a Web page and then evaluating the kind of access requested to determine if the requester has permission. Access is then granted or denied.

Java 2 provides a number of new security features to support its role of access and integration for server-based e-business applications. First, the Java 2 permission model can allow/disallow access to resources based on the "codesource", a combination of the code signature (who signed it) and a codebase URL (where it came from). In a multiplatform distributed IT environment where Java programs can be initiated from and have access to many systems, this may not provide enough information to determine authorization. Packaged as a Java 2 standard extension, the Java Authentication and Authorization Services (JAAS) is designed to authenticate users and assign privileges. When used with the function in Java 2, a Java program can provide code-centric access control (where the Java code came from), as well as user-centric access control (who is executing the code).

e-business applications may scale to dozens or hundreds of Web servers and potentially tens of millions of end users. The administration of ACLs can be very complex if they must be configured on each Web server system. Authorization to back-end data or subsystems must be handled as well, including systems that have existing authorization mechanisms. Existing enterprise-level authorization products such as IBM's Resource Access Control Facility (RACF) must be accommodated. In addition, authorization to other key e-business resources such as objects and message queues must be incorporated. 

The IBM Secureway Policy Director provides a centralized authorization service that is the point of integration for administering access controls for Web servers, Web applications servers such as WebSphere, firewalls, EJBs, e-business subsystems such as SAP, and end-user systems that implement IBM's Client Security Solutions. The Policy Director API, which implements The Open Group Authorization API standard, is used to manage access controls for back-end systems and third-party applications.

Asset protection
Access control protects data when authorization rules can be set in a secure system environment capable of enforcing access control policy. When data must travel outside of a secure system environment, it needs to be protected so that the policies governing its use cannot be violated. Asset protection includes:

Secure communications are implemented using a number of authentication and encryption technologies based on PKI. Private keys and shared secrets, once acquired, must be protected. End-to-end security must include consideration of the security of the end user device. Private keys stored on a personal computer disk file may be stolen via access to the file system or outright theft of the device. Security can be enhanced by the use of smart cards such as the IBM SmartCard Security Kit, an integrated hardware and software product including a smart card and smart card reader. Another approach is to use a security chip embedded in end user systems like the IBM PC300PL's and IntelliStation's Client Security Solution. In addition, server-side hardware devices can provide tamper resistant key storage as well as assistance for encrypting and decrypting messages and public/private key operations, etc. that require heavy computational load. IBM provides the 4758 Cryptographic Coprocessor for multiple IBM and non-IBM server platforms and the S/390 CMOS Cryptographic Coprocessor for 390 servers.

Accountability
A system needs to log all attempts to access corporate resources to ensure that the system is secure. This logging can also facilitate management decisions by allowing analysis of use patterns. Many of the IBM products included in e-business solutions provide extensive logging and audit capability including IBM Boundary Server, Lotus Domino, and IBM Payment Server. A comprehensive, distributed logging and audit facility for Internet-based applications is a future goal of the Framework and IBM will actively participate in the appropriate standards bodies to get this functionality standardized. 

Administration
Administration and systems management of the entire enterprise network, systems, applications and data is a traditional IT requirement and beyond the scope of this paper. The administration of e-business security products and the information it manages, on the other hand, is critical to your ability to conduct e-business in a secure fashion. The security services defined in the Framework provide centralized management of common information such as users and groups and an integrated service for managing permissions across a wide set of components and products. As a result of this comprehensive integration, the complexity of security administration is greatly reduced. Rather than a product by product, server by server, approach to add and delete users and modify ACLs, administration is done in one place, one time for your application and the systems involved. The security services can also work with, and be managed by enterprise system management architectures such as
Tivoli Global Enterprise Manager

A more detailed description of the administration and management services can be found in the IBM Application Framework for e-business Systems Management white paper.

Assurance
An e-business must provide assurance that the infrastructure and application resources, including systems, networks, and data, are protected with regard to confidentiality and integrity. This includes protecting the enterprise network and systems from various forms of attack, and also requires that the communications between the consumer or business partner and the application is secure and confidential. A solution architect can choose from this set of mechanisms based on the specific security requirements for the solution.

Availability
Availability is the ability to access data and resources whenever you need them. A robust system architecture is needed to enable you to adapt to just about any circumstance. Disasters do occur, and you must be able to quickly recover. This may mean distributing critical functions and data throughout different physical locations. Not only should your systems and networks have the technical capability to ensure availability, you must have a well defined and tested plan in place to allow your e-business to continue as "normal".

e-business applications based on the Framework can take advantage of multiple fault tolerance and high availability features and functions built into IBM platforms including support for RAID Storage and high availability cluster support. In addition, there are several mechanisms provided by the software technologies and products that make up the Framework, including:

Consulting services
As this paper has shown, as you enter the world of e-business, you can expose critical business information and applications to anyone on the Internet. As you begin to define requirements and build your e-business solution it is important to assess your current security polices, understand your current set of security threats and vulnerabilities and inventory the technical countermeasures you've already put in place. 

IBM's Security and Privacy services can help you assess, plan, design, implement, and run a secure environment for your e-business applications. IBM security consultants work with you to assess your current security strengths and vulnerabilities, to determine what assets need to be protected and how best to protect those assets. They work with you to develop a security architecture that fits your e-business needs and maps to your acceptable business risk. This security architecture will be the backplane for the e-business applications you deploy. 

Scenario
In this section we will define a simple customer scenario that brings together the elements of a successful secure e-business solution; defining the requirements or risks, the policy and implementation to address them, the resultant solution architecture, and deployment and administration considerations. We will then define an end-to-end flow of the application concentrating on security. 

A fictitious brokerage firm, Charles Smith, wishes to allow its customers to access and update their account information and use some of the firm's financial analysis tools via the Internet. The goal of this project is to reduce the cost of customer service. While there are many design areas at play in this scenario, we will focus on security and how it impacts the design, deployment and management of the solution. 

Even before the business/risk assessment is complete the customer knows that the cost of the proposed solution must be less than the projected savings in customer service. Further, the level of security afforded the customer must be maintained or enhanced – no degradation in security to the existing enterprise network will be tolerated.

Charles Smith has identified several risks and general security requirements, defined policies to address them, and set standards to implement the polices. 

In addition to assessing and then mitigating the general risks inherent in doing e-business over the Internet, the security requirements of the specific application must be addressed. Charles Smith designed their application using guidelines found in the IBM Application Framework for e-business. The design has the following characteristics:
  • It follows the logical 3-tier Web application model with a thin HTML-based client. 
  • It uses Java as the common cross-server platform computing environment. 
  • It uses EJBs for distributed function, including access to the existing customer account database. 
Based on this overall architecture, several security-related design decisions were made that apply to the application structure.
  • All information about users and groups is stored in a centralized directory service, deployed in the intranet, to decrease complexity and make the application easier to administer when users are added or deleted. 
  • A centralized authorization service is used to make it easier to define and manage the permission policy for access to programs, data, and other resources. It is deployed in the intranet.
  • A trust relationship among the systems used by the application is used rather than enrolling customer end users in(to) existing backend systems; i.e. end user principal delegation will not be used.
  • The end user is required to sign on (log in) to the system once and only once. All system interaction is transparent to the end user. Credential mapping is used, where necessary, to implement single sign on.
  • The system is designed to fit into the DMZ model. The application's presentation logic is deployed within the DMZ and the application's business logic is deployed within the intranet.
  • Charles Smith will not issue certificates. A 3rd party Certificate Authority that implements IBM Trust Authority or comparable software is used for this function.
The initial installation, configuration, and administration of the application and associated security services is a critical step in deploying a trusted e-business solution. Implementing a centralized service for directory and for permissions management across multiple systems requires that the principals and objects for each system, and their permissions, are defined and configured in a consistent fashion. The IBM Policy Director is configured as the central authorization service. The configuration steps include:
  • Define the set of Web pages and objects that Policy Director will manage 
  • Enroll end users / groups and server principals
  • Define the permission policy for Web pages and objects
  • Add the credential mappings required for single sign on support to existing systems
The firewall systems are configured on each side of the DMZ. The outer firewall (router) allows only HTTP / HTTPS protocol flows, and the inner firewall allows only IIOP, LDAP, and Policy Director protocol flows.

Now it's time to put it all together to show that the security architecture, when combined with the application architecture, results in a trusted e-business solution. This simplified end-to-end flow illustrates how the various security services and technologies work together to achieve that goal. First, assume that the systems have logged on during startup and are in a ready state. 

End-to-end flow sequence

  1. Alice is a Charles Smith customer. She inserts her Smart Card in the Smart Card Reader attached to her PC and enters her PIN number to enable her system. Alice then dials into her ISP for connection to the Internet and starts her Web browser. 
  2. Alice clicks on the bookmark she's saved for the Charles Smith home page. The HTTP request flows through the Charles Smith outer firewall / router to the Policy Director proxy. 
  3. The Policy Director proxy inside the DMZ receives the HTTP request and determines that the Charles Smith home page is not protected, so the Web page is sent to Alice. 
  4. This home page includes a link to a protected page. By linking to this page, an SSL session is established between the browser and the Policy Director proxy. As part of SSL processing, and to identify Alice to the Policy Director proxy, the browser accesses Alice's certificate and private key from the smart card, which was activated in Step 1. (Note that in addition to certificates, user IDs and passwords and other third-party authentication mechanisms are also supported.)  
  5. The Policy Director proxy sends Alice's certificate to the Policy Director, to establish Alice's logon. The Policy Director proxy then uses its cached copy of the Policy Director access control list (ACL) to determine whether Alice has the permissions needed to access the protected Web page that lists customer applications.
  6. The "Welcome to Your Accounts" Web page is sent to Alice. It contains links to available applications. Alice clicks on the "Account Balance" application link which sends an HTTPS request to Charles Smith. 
  7. The Policy Director proxy ensures that Alice is authorized to obtain her account balance. Once authorized, Alice's user credentials to WebSphere are obtained and the HTTPS request is forwarded to WebSphere, including those credentials. This credential mapping capability provides single sign-on for Web applications. 
  8. WebSphere issues an LDAP call to SecureWay Directory running behind the inner firewall to authenticate Alice. The LDAP API flows through the inner firewall. This establishes Alice's logon to WebSphere.  
  9. WebSphere evaluates if Alice is authorized to execute the servlet method. Permission is granted and the servlet executes. The servlet calls a method on an EJB in the local system. WebSphere evaluates the permission to access the EJB and permission is granted. The EJB calls a method on a remote object via an IIOP call using the identity of the server principal (trust relationship). The IIOP flows through the inner firewall. 
  10. The WebSphere server running behind the firewall issues a call to Policy Director to authorize access to the method. Permission is granted and the EJB executes. The EJB runs a method that contains a request to access DB2 for that object's persistent data (the account balance database).
  11. WebSphere issues a call to Policy Director to map the server principle to existing credentials for DB2 using single sign on capability. 
  12. The EJB uses the credentials obtained from Policy Director and generates an SQL query. DB2 authenticates the credentials, authorizes access, and runs the query. 
  13. The results of the query are returned. The data is passed back through the systems to WebSphere running in the DMZ where the data is formatted into a Web page which is sent to Alice over the SSL session. 
This flow provides one example of how IBM products and technologies will work togther in the near future to build a trusted e-business application. We have also documented our test team's design and implementation of real world e-business applications. They are available on the e-business
End to End Solutions Integration Reports Web site. In addition, hints and tips on many of the individual products are available at the Technical Support Technical Information Site.

Summary
The security services in the Application Framework for e-business provide the complete set of integrated technologies required to deliver secure e-business solutions. By effectively decreasing risk, reducing complexity, and helping to lower the cost of secure computing, IBM removes many of the barriers that prevent companies from fully exploiting e-business. By providing the products, technology, architecture, and design guidelines to address key security requirements -- authorization, asset protection, accountability, administration, assurance, and availability -- IBM can offer companies a holistic approach to creating a trusted environment enabling successful e-business transformation.

About the author
Mike Schlosser is a Senior Software Engineer with IBM. He has a broad range of experience with cross platform software integration issues and is a frequent speaker on software architecture at industry conferences. He can be reached at schloss@us.ibm.com.


What do you think of this article?
 
 
Killer! Good stuff So-so; not bad Needs work Lame!

Comments?

Privacy Legal Contact