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.
-
Risk - Information
flow, including passwords and account data, over the Internet is not secure
and may be stolen.
-
Policy - Ensure
there are secure communications between the end user and Charles Smith.
-
Standard implementation
- All network traffic between Charles Smith and their customers will be
protected using SSLv3 at a minimum.
-
Risk - Unscrupulous
people may attempt to access the Charles Smith system by trying user ID
and password combinations to impersonate an existing customer.
-
Policy - Ensure
that the system can determine that users are who they say they are.
-
Standard implementation
- Implement strong mutual authentication using PKI. Provide smart cards
with certificates and smart card readers to all customers who sign up for
the service and encourage their use. Provide X.509v3 certificates on a
browser key ring to end users as an alternative.
-
Risk - Hackers
may try to attack and penetrate the Charles Smith network, and infect the
system with a computer virus, etc.
-
Policy - Protect
the enterprise network and, where possible, the customer end user system
from intrusion and attack.
-
Standard implementation
- Provide antivirus software for end users who sign up for the service.
Install antivirus and intrusion detection software in the enterprise. Implement
a DMZ between the company intranet and the public Internet.
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
-
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.
-
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.
-
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.
-
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.)
-
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.
-
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.
-
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.
-
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.
-
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.
-
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).
-
WebSphere issues a call
to Policy Director to map the server principle to existing credentials
for DB2 using single sign on capability.
-
The EJB uses the credentials
obtained from Policy Director and generates an SQL query. DB2 authenticates
the credentials, authorizes access, and runs the query.
-
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.