1013 Admin Guide
1013 Admin Guide
Administrator’s Guide
10g (10.1.3.1.0)
Part No. B28982-03
January 2007
Oracle BPEL Process Manager Administrator’s Guide, 10g (10.1.3.1.0)
Contributor: Oracle BPEL Process Manager development, product management, and quality assurance
teams
The Programs (which include both the software and documentation) contain proprietary information; they
are provided under a license agreement containing restrictions on use and disclosure and are also protected
by copyright, patent, and other intellectual and industrial property laws. Reverse engineering, disassembly,
or decompilation of the Programs, except to the extent required to obtain interoperability with other
independently created software or as specified by law, is prohibited.
The information contained in this document is subject to change without notice. If you find any problems in
the documentation, please report them to us in writing. This document is not warranted to be error-free.
Except as may be expressly permitted in your license agreement for these Programs, no part of these
Programs may be reproduced or transmitted in any form or by any means, electronic or mechanical, for any
purpose.
If the Programs are delivered to the United States Government or anyone licensing or using the Programs on
behalf of the United States Government, the following notice is applicable:
U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data
delivered to U.S. Government customers are "commercial computer software" or "commercial technical data"
pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As
such, use, duplication, disclosure, modification, and adaptation of the Programs, including documentation
and technical data, shall be subject to the licensing restrictions set forth in the applicable Oracle license
agreement, and, to the extent applicable, the additional rights set forth in FAR 52.227-19, Commercial
Computer Software--Restricted Rights (June 1987). Oracle USA, Inc., 500 Oracle Parkway, Redwood City, CA
94065
The Programs are not intended for use in any nuclear, aviation, mass transit, medical, or other inherently
dangerous applications. It shall be the licensee's responsibility to take all appropriate fail-safe, backup,
redundancy and other measures to ensure the safe use of such applications if the Programs are used for such
purposes, and we disclaim liability for any damages caused by such use of the Programs.
Oracle, JD Edwards, PeopleSoft, and Siebel are registered trademarks of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective owners.
The Programs may provide links to Web sites and access to content, products, and services from third
parties. Oracle is not responsible for the availability of, or any content provided on, third-party Web sites.
You bear all risks associated with the use of such content. If you choose to purchase any products or services
from a third party, the relationship is directly between you and the third party. Oracle is not responsible for:
(a) the quality of third-party products or services; or (b) fulfilling any of the terms of the agreement with the
third party, including delivery of products or services and warranty obligations related to purchased
products or services. Oracle is not responsible for any loss or damage of any sort that you may incur from
dealing with any third party.
Contents
iii
HTTP/S with Partner Link Server Certificate Authentication Only......................... 1-17
HTTP/S with Partner Link Server and Oracle BPEL Server Client Certificate
Authentication.................................................................................................................. 1-18
WS-Security-Compliant Services .................................................................................................. 1-18
SOAP Binding........................................................................................................................... 1-19
Configuration .................................................................................................................... 1-19
Axis Services with Custom Authentication Handlers ............................................................... 1-20
J2EE Basic Authentication Protected Services (HTTP) .............................................................. 1-20
HTTP Basic Authentication (10.1.2.0.2) ................................................................................ 1-20
HTTP Binding (10.1.3) ............................................................................................................. 1-21
Java and EJB Binding (10.1.3) ........................................................................................................ 1-21
Oracle BPEL Control and Oracle BPEL Admin Console Users and Roles................................. 1-22
Example 1: Creating New Users and Groups to Access New BPEL Domains ...................... 1-23
Example 2: Creating a New User to Access the Default BPEL Domain.................................. 1-24
Example 3: Creating a New User to Access All BPEL Domains .............................................. 1-24
Default and Custom Validators .......................................................................................................... 1-25
Using the Default Validator........................................................................................................... 1-25
Creating a Custom Validator......................................................................................................... 1-26
Invoking a Partner Web Service through a Proxy Server .............................................................. 1-28
Using Oracle Web Services Manager for Authorization, Message Encryption, and Digital
Signatures ............................................................................................................................................... 1-28
Authorization................................................................................................................................... 1-29
Message Encryption and Decryption ........................................................................................... 1-29
Digital Signatures............................................................................................................................ 1-29
Summary ................................................................................................................................................. 1-29
2 Service Configuration
Configuring the Identity Service .......................................................................................................... 2-1
Structure of the Identity Service Configuration File ..................................................................... 2-1
provider Element ........................................................................................................................ 2-2
Multiple Service Providers ................................................................................................. 2-3
Optional Parameters............................................................................................................ 2-4
connection Element..................................................................................................................... 2-4
userControls and roleControls Elements ................................................................................ 2-5
Configuration for the XML-Based JAZN Provider ....................................................................... 2-6
Configuring Identity Service 10.1.3.1.0 with 10.1.2 Oracle Internet Directory.......................... 2-7
Task 1: Perform Preconfiguration Procedures........................................................................ 2-7
Oracle Internet Directory is Associated with an Oracle Application Server Instance
................................................................................................................................................ 2-8
Oracle Internet Directory is Not Associated with an Oracle Application Server
Instance.................................................................................................................................. 2-9
Task 2: Perform Configuration Procedures.......................................................................... 2-10
Step 3: Test the Oracle Internet Directory Configuration .................................................. 2-13
Task 4: Configure the Middle Tier to use the LDAP-based JAZN provider with Secure
Socket Layer (SSL) .................................................................................................................. 2-13
Troubleshooting ....................................................................................................................... 2-13
Reverting from Oracle Internet Directory to the XML-Based JAZN Provider ............... 2-14
iv
Configuration for a Third-Party LDAP Server ........................................................................... 2-15
Configuration for Custom Identity Repository Plug-ins .......................................................... 2-19
Setting Up Group Ownership ....................................................................................................... 2-19
Defining Group Ownership for JAZN XML-Based Providers .......................................... 2-19
Defining Group Ownership for JAZN Oracle Internet Directory-Based and
LDAP-Based Providers .......................................................................................................... 2-20
Configuring the Notification Services .............................................................................................. 2-20
Configuring the E-mail Server ...................................................................................................... 2-20
Example ns_emails.xml File ................................................................................................... 2-22
Configuring the Wireless Provider for Voice.............................................................................. 2-23
Example ns_iaswconfig.xml File ........................................................................................... 2-23
Configuring the Wireless Provider for SMS................................................................................ 2-24
Configuring the Wireless Provider for Fax ................................................................................. 2-24
Configuring the Fax Cover Page............................................................................................ 2-24
Configuring the Wireless Provider for Pager ............................................................................. 2-24
Configuring the Pluggable Notification Service......................................................................... 2-24
Pluggable Notification Service Implementation ................................................................. 2-24
Pluggable Notification Service Registration ........................................................................ 2-25
Configuring the Workflow Service.................................................................................................... 2-26
taskAutoReleaseConfigurations ................................................................................................... 2-27
worklistApplicationURL................................................................................................................ 2-27
actionableEmailAccountName...................................................................................................... 2-27
pushbackAssignee........................................................................................................................... 2-27
assigneeDelimiter ............................................................................................................................ 2-28
shortHistoryActions........................................................................................................................ 2-28
workflowServiceSessionTimeoutInMinutes ............................................................................... 2-29
user:ruleRepositoryInfo ................................................................................................................. 2-29
Integrating Oracle BPEL Process Manager with the Oracle Application Server Service
Registry................................................................................................................................................... 2-30
Task 1: Installing the Oracle Application Server SOA Suite and OracleAS Service
Registry ............................................................................................................................................ 2-31
Task 2: Deploying Web Services ................................................................................................... 2-34
Task 3: Publishing a Service and Adding Bindings ................................................................... 2-35
Task 4: Specifying the Registry Service Inquiry URL in Oracle BPEL Control...................... 2-36
Task 5: Creating a Connection to the UDDI Registry ................................................................ 2-37
Task 6: Configuring the RapidDistributors Partner Link.......................................................... 2-37
Task 7: Specifying the OracleAS Service Registry Service Key ................................................ 2-38
Task 8: Securing the Client with Basic Authentication (Optional) .......................................... 2-38
Troubleshooting .............................................................................................................................. 2-39
Summary ................................................................................................................................................. 2-39
v
Implementing the BPMProvider Interface .................................................................................... 3-5
Deploying the Identity Service Plug-in........................................................................................... 3-6
Registering and Configuring the Identity Service for the Custom Plug-in ............................... 3-6
Creating Users and Groups .............................................................................................................. 3-7
Summary .................................................................................................................................................... 3-7
Index
vi
Preface
Audience
This manual is intended for anyone who is interested in administering Oracle BPEL
Process Manager.
Documentation Accessibility
Our goal is to make Oracle products, services, and supporting documentation
accessible, with good usability, to the disabled community. To that end, our
documentation includes features that make information available to users of assistive
technology. This documentation is available in HTML format, and contains markup to
facilitate access by the disabled community. Accessibility standards will continue to
evolve over time, and Oracle is actively engaged with other market-leading
technology vendors to address technical obstacles so that our documentation can be
accessible to all of our customers. For more information, visit the Oracle Accessibility
Program Web site at
http://www.oracle.com/accessibility/
vii
Accessibility of Links to External Web Sites in Documentation
This documentation may contain links to Web sites of other companies or
organizations that Oracle does not own or control. Oracle neither evaluates nor makes
any representations regarding the accessibility of these Web sites.
Related Documents
For more information, see the following Oracle resources:
■ Oracle Application Server Performance Guide for Oracle BPEL Process Manager
tuning and performance information
■ Oracle BPEL Process Manager Quick Start Guide
■ Oracle BPEL Process Manager Order Booking Tutorial
■ Oracle BPEL Process Manager Developer’s Guide
■ Oracle Adapters for Files, FTP, Databases, and Enterprise Messaging User’s Guide
■ Oracle Application Server Adapter Concepts
■ Oracle Application Server Adapter for Oracle Applications User’s Guide
Printed documentation is available for sale in the Oracle Store at
http://oraclestore.oracle.com/
To download free release notes, installation documentation, white papers, or other
collateral, visit the Oracle Technology Network (OTN). You must register online before
using OTN; registration is free and can be done at
http://www.oracle.com/technology/membership/
To download Oracle BPEL Process Manager documentation, technical notes, or other
collateral, visit the Oracle BPEL Process Manager site at Oracle Technology Network
(OTN):
http://www.oracle.com/technology/bpel/
If you already have a username and password for OTN, then you can go directly to the
documentation section of the OTN Web site at
http://www.oracle.com/technology/documentation/
See the Business Process Execution Language for Web Services Specification, available at the
following URL:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us
/dnbizspec/html/bpel1-1.asp
See the XML Path Language (XPath) Specification, available at the following URL:
http://www.w3.org/TR/1999/REC-xpath-19991116
See the Web Services Description Language (WSDL) 1.1 Specification, available at the
following URL:
http://www.w3.org/TR/wsdl
viii
Conventions
The following text conventions are used in this document:
Convention Meaning
boldface Boldface type indicates graphical user interface elements associated
with an action, or terms defined in text or the glossary.
italic Italic type indicates book titles, emphasis, or placeholder variables for
which you supply particular values.
monospace Monospace type indicates commands within a paragraph, URLs, code
in examples, text that appears on the screen, or text that you enter.
ix
x
1
Oracle BPEL Process Manager Security
It is critical to control access to BPEL processes and to the Web services they use.
Preventing unauthorized users from breaking into your system is required to protect
both the integrity of your processes and the personal information of your customers.
This chapter describes the methods available for securing BPEL processes and
invoking secured Web services with Oracle BPEL Process Manager.
This chapter contains the following topics:
■ Security Overview
■ Securing BPEL Processes (Inbound)
■ Invoking Secured Services (Outbound)
■ Oracle BPEL Control and Oracle BPEL Admin Console Users and Roles
■ Default and Custom Validators
■ Invoking a Partner Web Service through a Proxy Server
■ Using Oracle Web Services Manager for Authorization, Message Encryption, and
Digital Signatures
■ Summary
Security Overview
Security in Oracle BPEL Process Manager is implemented as follows:
■ Securing a BPEL process in which interaction is initiated by an inbound client
service request sent to Oracle BPEL Server. The following transport security and
authentication methods are available:
– SSL (HTTP/S)
– J2EE basic authentication (HTTP)
– BPEL security extensions
■ Invoking secured services in which interaction is initiated by an outbound client
request sent from Oracle BPEL Server to the server on which the partner link Web
service is running. The following transport security and authentication methods
are available:
– SSL (HTTP/S)
– WS-Security-compliant services
– Axis services
Figure 1–1 Inbound and Outbound Transport Security and Authentication Methods
Securing BPEL
Inbound client service request Processes:
Transport Security
J2EE Basic BPEL and Authentication
SSL (HTTP/S)* Authentication Security Methods
(HTTP)* Extensions
Firewall
Oracle Application
Server
OC4J
WSIF Layer
Firewall
* With the Oracle BPEL Process Manager for OracleAS Middle Tier installation type, inbound
client service requests that use SSL transport security and J2EE basic authentication are
verified by Oracle Application Server. With the Oracle BPEL Process Manager for Developers
installation type, inbound client service requests that use SSL transport security and J2EE
basic authentication are verified by OC4J.
This section provides an overview of the following security features in the context of
Oracle BPEL Process Manager. References are also provided to sections that describe
these features in more detail:
■ WS-Security
■ Authentication
■ Authorization
■ Encryption and Decryption
■ Secure Socket Layer
■ Digital Signatures for Integrity and Nonrepudiation
■ BPEL Security Extensions
WS-Security
WS-Security provides a mechanism for adding three levels of security to simple object
access protocol (SOAP) messages. These security levels are as follows:
■ Authentication tokens – Used for passing user name and password information, as
well as X.509 certificates, within the SOAP message headers.
■ XML encryption – Used for message confidentiality.
■ XML digital signatures – Used for message integrity, source and origin validation,
and nonrepudiation.
See Also:
■ "WS-Security-Compliant Services" on page 1-18
■ Web Services Security (WS-Security) Specifications available at the
following URL:
http://www.oasis-open.org/committees/tc_home.php?wg_
abbrev=wss
Authentication
Authentication is the process of proving the identity of a user. Oracle BPEL Process
Manager supports basic authentication (HTTP), certificate-based authentication
(HTTP/S), and native BPEL security extension authentication.
Authorization
Authorization is the evaluation of security constraints to send a message or make a
request. Authorization uses specific criteria to determine whether to permit the
request. The criteria are authentication and restriction. Oracle BPEL Process Manager
has no current native support for inbound authorization. Oracle Web Services
Manager can instead be used to provide this capability.
See Also:
■ "Using SSL for Certificate-Based Authentication" on page 1-6 for
details about using SSL to secure BPEL processes
■ "Using SSL for Certificate-Based Authentication" on page 1-15 for
details about using SSL to invoke secured services
See Also:
■ "Using the Native BPEL Security Extensions" on page 1-10
■ "Domain and Process Level Security" on page 1-11
■ "Java API" on page 1-13
■ "HTTP Binding" on page 1-13
■ "SOAP over HTTP Binding" on page 1-13
■ "Java and EJB Binding (10.1.3)" on page 1-21
■ "Default and Custom Validators" on page 1-25
■ Oracle BPEL Process Manager Workflow Services API Reference,
which is also located in
SOA_Oracle_Home\bpel\docs\apidocs
Securing BPEL
Inbound client service request Processes:
Transport Security
J2EE Basic BPEL and Authentication
SSL (HTTP/S)* Authentication Security Methods
(HTTP)* Extensions
Firewall
Certificate-based Certificate-based
authentication with authentication with
Oracle Wallet keytool
Manager
Oracle Application
Server
OC4J
* With the Oracle BPEL Process Manager for OracleAS Middle Tier installation type, inbound
client service requests that use SSL transport security and J2EE basic authentication are
verified by Oracle Application Server. With the Oracle BPEL Process Manager for Developers
installation type, inbound client service requests that use SSL transport security and J2EE
basic authentication are verified by OC4J.
This section describes how to provide BPEL process security through the following
methods:
■ Using SSL for Certificate-Based Authentication
■ Using J2EE Basic Authentication
■ Using the Native BPEL Security Extensions
Note: Do not use the default certificate included with Oracle Wallet
(named test). The default certificate does not use the proper server
host name. Instead, obtain a certificate from a certificate authority.
This certificate must contain the proper server host name in the CN
entry.
Step 2: Configuring Oracle BPEL Server Oracle BPEL Server must be configured with the
SOAP server URL and SOAP callback URL.
1. Log in to Oracle BPEL Admin Console.
http://localhost:port/BPELAdmin
Notes:
■ Ensure that you shut down and restart OC4J after configuring
SSL. This is accomplished by shutting down and restarting Oracle
BPEL Server.
■ Instead of a self–signed certificate for production environments,
use a certificate from a trusted certificate authority like
Verisign/Thawte by submitting a certificate request generated by
keytool.
Step 2: Configuring Oracle BPEL Server The steps to configure Oracle BPEL Server for the
Oracle BPEL Process Manager for Developers installation type are the same as with
the Oracle BPEL Process Manager for OracleAS Middle Tier installation type.
See "Step 2: Configuring Oracle BPEL Server" on page 1-7 for instructions on
configuring Oracle BPEL Server.
The following sections describe the configuration method to use based on the Oracle
BPEL Process Manager installation type:
■ Oracle BPEL Process Manager for OracleAS Middle Tier
■ Oracle BPEL Process Manager for Developers
See Also: Oracle Containers for J2EE Security Guide for configuration
instructions
By default, domain and process security is not enabled. However, both security levels
can be easily enabled by modifying the SOA_Oracle_
Home\bpel\domains\domain_name\config\message-handlers.xml file.
1. If you want to enable domain level security, remove the comment markers shown
in bold from around the security attribute (for this example, the domain is
named default):
<inbound-flow>
<message-handler id="default" />
2. If you also want to enable security at the process level, remove the comment
markers shown in bold from around the SecuredProcesses attribute in the
same file. The section contains a value element that consists of a
comma-separated list of process names:
<!--
<property id="SecuredProcesses">
<value>CreditRatingService</value>
<comment>Processes can be secured explicitely without having
effect on the whole domain, put their names in here and comma
separate them</comment>
</property>
-->
</message-handler>
Any other processes in this domain that are not specified in the value element are
not secured.
4. Restart Oracle BPEL Server.
This enables the default validator bridge to be used for authentication and
authorization.
See Also: "Using the Default Validator" on page 1-25 for information
about the validator bridge
Java API
For invocation of a process, use the DeliveryService. However, the normalized
message (com.oracle.bpel.client.NormalizedMessage) needs the following
properties (through NormalizedMessage:setProperty(key, value)) added:
secured = username
username = password
where username equals the user name that is sent, and the second pair consists of the
username and the desired credential. For example:
secured = Clemens
Clemens = pwForClemens
Note: You can also send an empty password; in this case, add only
the first pair:
secured = Clemens
HTTP Binding
When you use direct HTTP binding to invoke a process, there are multiple ways of
specifying the credentials:
■ As HTTP request parameters:
<input type="hidden" name="bpelUser" value="clemens">
<input type="hidden" name="bpelCredential" value="clemens">
■ As normal name-value HTTP header pairs, where the key for the user is
bpelUser and the key for the password is bpelCredential
wss-wssecurity-utility-1.0.xsd"><wsse:Username>Clemens
</wsse:Username><wsse:Password Type=
"http://docs.oasis-open.org/wss/2004/01/oasis-200401-
wss-username-token-profile-1.0#PasswordText">pwForClemens
</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
When using Java to call a service endpoint through SOAP, the class
com.oracle.bpel.client.util.WSSecurityUtils can generate a header
element of the namespace. For example:
/**
* Create a WSSecurity compliant token from username and password -
UsernameToken!!
* @throws javax.xml.soap.SOAPException in case the element cannot be
constructed
* @return the headerElement needed for the header of the call
* @param pCredential the credential
* @param pUsername the username
*/
public static SOAPHeaderElement createWSSecurityHeader (String pUsername,
String pCredential)
Note that createWSSecurityHeader represents the older Java standard. Since the
change to the WS-Security standard in 2004, you must apply the new namespace or
else it defaults to the http://schemas.xmlsoap.org/ws/2002/07/secext
namespace. To create a WSSE header element with the new namespace, use this
method located in the WSSecurityUtils class:
public static SOAPHeaderElement createOASISWSSecurityHeader
(String pUsername,
String pCredential,
boolean pIsWSPolicyCompliant) throws SOAPException
{
Oracle Application
Server
OC4J
Oracle BPEL
Process
Manager
(Client)
WSIF Layer
Firewall
truststore used in the process must contain the appropriate certificate entries. If the
partner link server uses a self-signed certificate, this certificate must be placed as a
trusted entry in the truststore. If the partner link server presents a certificate chain,
then the root certificate of that chain must be part of the truststore.
■ Server and client certificate authentication
During the handshaking process, a partner link server can sometimes require that
the client (in this scenario, Oracle BPEL Process Manager) present its certificate for
verification. This is called client authentication mode. For these situations, you
must also set up a certificate for Oracle BPEL Process Manager. The certificate can
be self-signed or provided by a certificate authority. The keytool can be used to
save that certificate and keys in the keystore and truststore.
Note that it is not possible to know from the WSDL of the service if the partner
link service requires this. This requirement is not in wide practice.
It is beneficial to set up a truststore in which trusted certificate entries are placed. This
is different from the keystore, in which private and public key entries are present.
The default keystore and truststore files located in the jre\lib\security directory
for your JDK installation are used:
■ The cacerts file is the default keystore
■ The jssecacerts file (if present) is the truststore file. If jssecacerts is not
present, cacerts also serves as the truststore.
Keystore and truststore files are created and managed with JDK’s keytool. This tool
is useful for performing operations such as the following:
■ Creating new keystores and truststores
■ Reading and listing information present in the stores
■ Updating and deleting existing entries in keystores and truststore
Notes:
■ Do not use Oracle Wallet Manager to create a security certificate
for communication between the client Oracle BPEL Server and the
server on which the partner link Web service is running.
■ No Oracle BPEL Server configuration is required when invoking
secured services. This is because Oracle BPEL Server is the client
in this type of interaction.
See Also:
■ http://java.sun.com/j2se/1.4.2/docs/guide/security/
jsse/JSSERefGuide.html for details about SSL, such as
understanding how SSL works, creating keystores and truststores
to use with JSSE, and debugging and troubleshooting issues
■ http://java.sun.com/products/jsse/ for JSSE details
■ http://java.sun.com/j2se/1.4.2/docs/tooldocs/tools.
html#security for details about using keytool
■ Oracle Containers for J2EE Security Guide for details about using
keytool
HTTP/S with Partner Link Server Certificate Authentication Only Follow these steps to
configure Oracle BPEL Process Manager for this environment:
1. Ensure that the keystore is configured appropriately to invoke the
mutually-trusted certificate or the server certificate of the partner link.
a. Connect through the Web browser to the endpoint URL of the service to
invoke. After connecting to the server, a pop-up window displays the
following message (if you have not already updated your browser's store with
this certificate):
Security Alert: Do you trust this certificate or not?
g. If you do not want to store the server certificate of the partner link server, you
can ensure that a mutually-trusted root and certificate authority certificate is in
your truststore or keystore.
2. Ensure that the correct keystore is used by OC4J and Oracle BPEL Process
Manager:
If your keystore is the default cacerts file keystore located in SOA_Oracle_
Home\jdk\jre\lib\security directory, no changes are required. If not, then
edit obsetenv.bat (or obsetenv.sh for UNIX installations) to include the
following lines:
–Djavax.net.ssl.keyStore=path_to_your_certificate_store
-Djavax.net.ssl.keyStorePassword=your_keystore_password
Note: While you can also edit the startorabpel.bat file (or
startorabpel.sh file for UNIX installations) to include these lines,
Oracle recommends that you instead edit the obsetenv.* file for
your operating system.
3. If you are using a different truststore from the default, you should enter the
following:
-Djavax.net.ssl.trustStore=path_to_truststore
-Djavax.net.ssl.trustStorePassword=your_truststore_password
See Also:
http://java.sun.com/j2se/1.4.2/docs/tooldocs/tools.h
tml#security for details about using keytool
HTTP/S with Partner Link Server and Oracle BPEL Server Client Certificate Authentication This
section describes how to configure the Oracle BPEL Server client. The steps to
configure the client to invoke partner links that require client authentication are
similar to the steps to invoke partner links with only server side authentication
enabled. The difference is the keystore that BPEL uses for this environment has the
following certificates in the following locations:
■ Its own (that is, the host OC4J server certificate in the keystore)
■ The client certificate or a mutually-trusted CA certificate in the keystore and
truststore
The high level steps involved are as follows:
1. Set up OC4J to use SSL, as described in "Step 1: Configuring OC4J" on page 1-8.
2. Ensure that a mutually-trusted certification authority certificate is in the truststore
and keystore.
3. Ensure that the correct keystore and truststore are used by OC4J and BPEL, as
described in Step 2 of "HTTP/S with Partner Link Server Certificate
Authentication Only" on page 1-17.
WS-Security-Compliant Services
If a partner link expects WS-Security-compliant authentication tokens, BPEL can be
configured to invoke the partner link with these. (See Figure 1–3 on page 1-15.)
Table 1–3 shows the relevant properties. These properties are configurable at the
individual partner link level.
See Also:
■ Oracle BPEL Process Manager Developer’s Guide for additional
details about these deployment descriptor properties
■ Web Services Security (WS-Security) Specifications available at the
following URL:
http://www.oasis-open.org/committees/tc_home.php?wg_
abbrev=wss
SOAP Binding
When using SOAP binding, there are four possible cases:
■ Case 1
Propagation of the credentials over a partner link (if the process is invoked
securely over any API) for WS-Security headers
■ Case 2
Propagation of the credentials over a partner link (if the process is invoked
securely over any API) for basic authentication
■ Case 3
Static definition of a user name and password put into a WS-Security compliant
user name token, and sent out
■ Case 4
Static definition of a user name and password that is used for
http-basic-authentication, and sent out
Configuration By default, Oracle BPEL Server does not propagate any credentials, even
if the process is invoked securely. All partner links that are used within a BPEL process
are defined in bpel.xml (found in the BPEL suitcase).
<partnerLinkBindings>
<partnerLinkBinding name="client">
<property name="wsdlLocation">CreditRatingService.wsdl</property>
</partnerLinkBinding>
</partnerLinkBindings>
For case 1, add the following property (which causes BPEL to add the
process-credentials to the outgoing call):
<property name="wsseHeaders">propagate</property>
<property name="basicUsername">your_user</property>
<property name="basicPassword">your_password</property>
Note: All these properties are on a per partner link basis, so they do
not affect any other partner links as long as they are not specified on
this specific binding.
Since the change to the WS-Security standard in 2004, you need to apply the new
namespace or else it defaults to the
http://schemas.xmlsoap.org/ws/2002/07/secext namespace. To apply the
new namespace, add the following property:
<property name="wsseOASIS2004Compliant">true</property>
<property name="httpBasicUsername">your_username</property>
<property name="httpBasicPassword">your_password</property>
This method is called directly after the class or bean has been created, and the map
contains all partner link properties.
Oracle BPEL Control and Oracle BPEL Admin Console Users and Roles
The Oracle Application Server oc4jadmin administrator account enables you to log
into Oracle BPEL Control and Oracle BPEL Admin Console and manage BPEL
processes. Beginning with this release, both consoles are fully integrated with Oracle
Application Server J2EE and JAAS security features.
In addition, Oracle BPEL Process Manager automatically includes a set of users, roles,
and domains for performing BPEL process management from Oracle BPEL Control
and Oracle BPEL Admin Console. Table 1–6 describes these features:
Table 1–6 Oracle BPEL Process Manager Roles, Users, and Domains
Users Roles Domains
■ bpeladmin ■ BPMSystemAdmin default — Enables you to
partition and manage
User account with the Provides access to all
instances of your processes.
BPMSystemAdmin role domains accessible through
You can create additional
and a default password Oracle BPEL Control and
domains, as necessary.
of welcome1. Oracle BPEL Admin
Console.
■ default ■ BPMDefaultDomainAdmin
User account with the Provides access to only the
BPMDefaultDomainAd default domain accessible
min role and a default through Oracle BPEL
password of welcome1. Control. This role does not
provide access to Oracle
BPEL Admin Console.
The Oracle Application Server oc4jadmin administrator account also includes the
BPMSystemAdmin role.
Passwords for the oc4jadmin, bpeladmin, and default users can be changed
through Oracle Enterprise Manager 10g Application Server Control Console. Oracle
recommends that you change the passwords for the bpeladmin and default users
after installation.
Use the oc4jadmin user account when creating application server connections in the
Connection Navigator of Oracle JDeveloper. Other user accounts, such as
bpeladmin, default, or any new user accounts you created, do not have the RMI
permissions and cannot be used when creating application server connections in
Oracle JDeveloper.
You can create new users and groups and assign them to new domains or the default
domain automatically included with Oracle BPEL Process Manager.
This section provides the following examples:
■ Example 1: Creating New Users and Groups to Access New BPEL Domains
■ Example 2: Creating a New User to Access the Default BPEL Domain
■ Example 3: Creating a New User to Access All BPEL Domains
See Also:
■ Appendix A, "Demo User Community" for additional details
about the BPMSystemAdmin and BPMDefaultDomainAdmin
roles
■ Oracle BPEL Process Manager Developer’s Guide for additional
details about the BPMSystemAdmin and
BPMDefaultDomainAdmin roles and domain management
■ Oracle Application Server Administrator’s Guide for instructions on
changing the oc4jadmin, bpeladmin, and default passwords
■ Oracle Containers for J2EE Security Guide for information about Java
SSO (JSSO), OracleAS JAAS Provider Admintool examples, and
additional security management tools available for file-based
providers and Oracle identity management providers
Example 1: Creating New Users and Groups to Access New BPEL Domains
This section describes how to create a new user and group to access a new BPEL
domain. In this example, you use Oracle Internet Directory to create the user and
group and the OracleAS JAAS Provider Admintool of the XML-based JAZN provider
to grant the necessary domain permissions to the new user and group. The
management tool to use to create the user and group is based on the type of identity
service provider you are using.
1. Configure the 10.1.3.1.0 identity service with 10.1.2 Oracle Internet Directory as
described in "Configuring Identity Service 10.1.3.1.0 with 10.1.2 Oracle Internet
Directory" on page 2-7.
2. Create a new domain in the Oracle BPEL Admin Console named soaAdmin.
3. Create a new user named soaAdmin and group named
BPMsoaAdminDomainAdmin in Oracle Internet Directory.
4. Use the JAZN Admin tool to grant domain permissions to user soaAdmin or
group BPMsoaAdminDomainAdmin:
java -Xbootclasspath/a:/home/oc4j/bpel/lib/orabpel-boot.jar -jar jazn.jar
-shell -grantperm jazn.com -user soaAdmin com.collaxa.security.DomainPermission
soaAdmin all
or
java -Xbootclasspath/a:/home/oc4j/bpel/lib/orabpel-boot.jar -jar jazn.jar
-shell -grantperm jazn.com -role BPMsoaAdminDomainAdmin
com.collaxa.security.DomainPermission soaAdmin all
where:
– com.collaxa.security.DomainPermission — Is the name of the
permission class. This permission class does not provide access to Oracle BPEL
Admin Console.
– soaAdmin — Is a parameter to the permission class. This parameter indicates
the name of the domain to which the user has access.
– all — Is a parameter to the permission class. This parameter indicates the
level of actions the user or group can perform.
■ If a role is specified in the BPEL suitcase, the user specified in the request must
exist in the identity management store and must belong to that group.
<property name="role">administrators</property>
This method is useful when many processes are used and identity management
cannot be reconfigured with a new role for each process.
■ If neither of the security validators described above are found, BPEL concatenates
the process name and ExecutionRole and expects the supplied user to belong to
a role of that name. For example, if user Clemens invokes the
CreditRatingService process, he must belong to a group named
CreditRatingServiceExecutionRole as defined in your identity store (for
example, system-jazn-data.xml if you are using JAZN):
<role>
<name>CreditRatingServiceExecutionRole</name>
<members>
<member>
<type>user</type>
<name>Clemens</name>
</member>
</members>
</role>
See Also:
■ "Configuring the Identity Service" on page 2-1
■ Oracle BPEL Process Manager Developer’s Guide for additional
details about BPEL identity services
import com.oracle.bpel.client.ServerException;
import com.oracle.bpel.client.NormalizedMessage;
import com.oracle.bpel.client.BPELProcessId;
/**
* Public abstract class that has to be implemented
* for having a valid ACLManager that is used by the BPEL server
* for authentication & authorization
*
* @version 1.1
*/
public abstract class ACLManager extends BaseACLManager {
/**
* Public constructor that should use a cache for connections
* and care about other stuff.
* @throws com.oracle.bpel.client.ServerException
* @since 1.0
*/
public ACLManager() throws ServerException
{
}
/**
* Checks if a user is valid in the context of a secured Process
*
* @return valid or not
* @param pMessage the message will hold all information, including
* the domain information and headers
* @throws ServerException in case something breaks
*/
public abstract boolean validateUser
(BPELProcessId pProcessID, NormalizedMessage pMessage) throws
ServerException;
/**
* Checks if a user is allowed to execute (=invoke) a certain revision
* (if given) of a process.
*
* @return true if he is otherwise false
* @param pProcessId the name, domain and revision of the process
* @param pMessage the message will hold all information, including
* the domain information and headers
* @throws ServerException in case something breaks
*/
public abstract boolean isAllowedToExecuteProcess
(BPELProcessId pProcessID, NormalizedMessage pMessage)
throws ServerException;
/**
* Checks if a user is allowed to execute (=invoke) a certain activity
* of a process.
*
* @return true if he is otherwise false
* @param pProcessId the name, domain and revision of the process
* @param pActivityName the name of the Activity
* @param pMessage the message will hold all information, including
* the domain information and headers
* @throws ServerException in case something breaks
*/
public abstract boolean isAllowedToExecuteActivity
(BPELProcessId pProcessID, NormalizedMessage pMessage, String pActivityName)
throws ServerException;
/**
* Checks if a user is allowed to lookup a certain revision
* (if given) of a process.
*
* @return true if he is otherwise false
* @param pMessage the message will hold all information, including
* the domain information and headers
* @param pProcessId the name, domain and revision of the process
* @throws ServerException in case something breaks
*/
public abstract boolean isAllowedToLookupProcess
(BPELProcessId pProcessID, NormalizedMessage pMessage)
throws ServerException;
/**
* Checks if a user is allowed to lookup a certain activity of a process.
*
* @return true if he is otherwise false
* @param pActivityName the name of the Activity
* @param pProcessId the name, domain and revision of the process
* @throws ServerException in case something breaks
*/
public abstract boolean isAllowedToLookupActivity
(BPELProcessId pProcessID, NormalizedMessage pMessage, String pActivityName)
throws ServerException;
where value must point to the classname (including the package) of the implemented
validator class.
By setting http.proxySet to true, you activate the client proxy and redirect all
the outbound traffic through http.proxyHost and http.proxyPort. By
setting the http.nonProxyHosts to the server that hosts Oracle BPEL Server,
you prevent the local request from going through the proxy. You may want to
expand the nonProxyHosts list to include other servers inside your corporate
network or other logical names for the internal123 host by using | as a
delimiter.
See Also:
■ Oracle Web Services Manager Installation Guide
■ Oracle Web Services Manager Deployment Guide
■ Oracle Web Services Manager User and Administrator Guide
■ Oracle Web Services Manager Upgrade Guide
■ Oracle Web Services Manager Extensibility Guide
Authorization
Outbound authorization in the context of BPEL invoking a service is within the
responsibility of the service provider and its implementation of authorization. While
Oracle BPEL Process Manager has no current native support for inbound
authorization, Oracle Web Services Manager provides the following capabilities to let
authorized users access BPEL processes:
■ Supports authorization based on the information contained in any part of the XML
message or body
■ Provides the following fine-grained access control:
– Access control at the service level
– Access control at the SOAP method level
■ Supports WS-Security
Digital Signatures
While Oracle BPEL Process Manager has no current native support for digital
signatures, Oracle Web Services Manager provides digital signatures and signature
verification capabilities. When a client invokes a service, Oracle Web Services Manager
performs the following tasks:
■ Intercepts this request
■ Checks if the service has a digital signature verification policy to be honored
■ Verifies the signature
■ Passes this request to BPEL to be serviced
Similarly, when BPEL invokes a partner link, Oracle Web Services Manager attaches a
digital signature to the SOAP header of the message.
Summary
This chapter describes how to perform the following procedures:
■ Secure a BPEL process in which interaction is initiated by an inbound client service
request sent to Oracle BPEL Server. The following security methods are described:
SSL authentication, J2EE basic authentication, and native BPEL security extension
authentication.
■ Invoke secured services in which interaction is initiated by an outbound client
request sent from Oracle BPEL Server to the server on which the partner link Web
service is running. The following security methods are described: SSL
authentication, WS-Security-compliant services, HTTP basic authentication
protected services, Axis services with custom authentication handlers, and native
BPEL security extensions.
This chapter also provides details about the default and custom identity store
providers available with Oracle BPEL Process Manager. An overview of Oracle Web
Service Manager is also provided. Oracle Web Service Manager can be used to provide
authorization, message encryption and decryption, and digital signature support with
Oracle BPEL Process Manager.
This chapter describes configuration procedures for Oracle BPEL Process Manager
services.
This chapter contains the following topics:
■ Configuring the Identity Service
■ Configuring the Notification Services
■ Configuring the Workflow Service
■ Integrating Oracle BPEL Process Manager with the Oracle Application Server
Service Registry
■ Summary
See Also: Oracle BPEL Process Manager Developer’s Guide for details
about creating realms, users, and groups; supported identity service
providers; and user and group properties
Figure 2–1 shows the root element configuration, which can contain many
configurations.
provider Element
The provider element specifies the providerType, which can be JAZN, LDAP, or
CUSTOM, provider name (optional), and any provider-specific properties.
Figure 2–2 shows the provider element configuration.
For example, in the case of the JAZN XML provider, you must set the providerType
attribute to JAZN and specify the value of the userPropertiesFile attribute. See
"Configuration for the XML-Based JAZN Provider" on page 2-6 for more information
about userPropertiesFile.
Similarly, if you use a custom plug-in to the identity service, you must set the
providerType attribute to CUSTOM. You then specify the class name for custom
identity service plug-in implementation, as follows:
<?xml version = '1.0' encoding = 'UTF-8'?>
<ISConfiguration xmlns="http://www.oracle.com/pcbpel/identityservice/isconfig">
<configurations>
<configuration realmName="jazn.com">
<provider providerType="JAZN" name="xml" service="Identity">
<property name="userPropertiesFile" value="users-properties.xml"/>
</provider>
<provider providerType="CUSTOM"
name="CustomPlugIn" service="Authentication"
class="package.name.CustomAuthenticationService" />
</configuration>
</configurations>
</ISConfiguration>
Multiple Service Providers The identity service supports multiple service parameters. In
the code example above, one configuration is defined with two service providers. The
configuration has one JAZN provider associated with the default identity service and
another CUSTOM provider used for the authentication service. Therefore, the custom
provider is used for user authentication calls while the JAZN XML provider is used for
all authorization and identity service inquires.
Optional Parameters The provider can also define the following optional parameters in
the configuration file. Most of these parameters apply to JAZN-based or LDAP-based
providers, but can also be used by custom providers.
The provider element enables you to specify additional property elements, which
can be used by custom plug-ins. An example follows:
<?xml version = '1.0' encoding = 'UTF-8'?>
<ISConfiguration xmlns="http://www.oracle.com/pcbpel/identityservice/isconfig">
<configurations>
<configuration realmName="jazn.com">
<provider providerType="CUSTOM"
name="CustomPlugIn" service="Identity"
class="package.name.CustomIdentityService">
<property name="customProperty" value="customValue" />
</configuration>
</configurations>
</ISConfiguration>
In addition, the property element can be defined as part of any other elements
(userControls, searchControls, search, and so on) in the configuration file.
connection Element
The connection element is used to specify the URL, the admin username (binddn-
bind as this Distinguished name), the credential (password) for the LDAP
or RDBMS connection used by the identity service, and a Boolean flag (encrypted) to
specify that the password is either in plain text or is encrypted. The identity service
overwrites the is_config.xml file after reading the configuration and encrypts the
user password if it finds it in plain text. Figure 2–3 shows the structure of the
connection configuration.
The connection can specify connection pool properties by setting the following
attributes on the pool element:
■ initsize—initial size of the connection pool
The roleControls element is used to define role controls and restrict the LDAP role
search. Figure 2–5 shows the structure of the roleControls element.
Both userControls and roleControls can have a search element that has the
following optional attributes:
Note that the users-properties.xml file stores all extended user's properties. This
is not required for JAZN authorization or authentication. However, the BPEL identity
service requires this file to get contact details and the organizational hierarchy for
users. If this file is not created, the following can occur:
■ Certain workflow functionality such as notifications, manager views, or task
escalation may not work.
■ Workflow rule creation is disabled for all users who do not have the
BPMWorkflowAdmin role.
■ Workflow rule definitions for groups may not work.
By default, the identity service looks for users-properties.xml in the Oracle
BPEL Process Manager classpath. Oracle Universal Installer stores the default
users-properties.xml in
SOA_Oracle_Home\bpel\system\services\config
Note: JAZN realms, users, and roles and groups can be created with
the JAZN Admintool. To add a user to a specified realm, issue the
following command:
java -jar jazn.jar -user adminUser -password
adminPassword -adduser realmName newUser
newUserPassword
See Also:
■ JAZN documentation for information on how to configure the
middle tier to use the XML-based JAZN provider and how to use
the JAZN Admintool
■ The "Oracle BPEL Process Manager Workflow Services" chapter of
the Oracle BPEL Process Manager Developer’s Guide for additional
information on creating identity service users and roles
Perform the following procedures to ensure that the Oracle Application Server
instance is associated with Oracle Internet Directory.
1. Log in to the Oracle Enterprise Manager 10g Application Server Control Console:
http://hostname:port/em
where hostname is name of the host on which Oracle BPEL Process Manager is
installed and port is the Oracle HTTP Server port.
Oracle Internet Directory is Not Associated with an Oracle Application Server Instance
1. Click Configure to create a new association or Change to associate a different
Oracle Internet Directory with the Oracle Application Server instance.
2. Provide appropriate responses to the questions that appear. If you want to use
SSL, provide the specific SSL port number of your Oracle Internet Directory
instance. If not, specify the non-SSL port of your Oracle Internet Directory
instance.
3. Click Next.
4. If you want to associate Oracle Enterprise Manager 10g Application Server Control
Console with Oracle Internet Directory, provide appropriate details on this page.
5. Click Next.
6. Click orabpel and hw_services to use Oracle Internet Directory as the security
provider.
7. Click Configure.
Note: The path name delimiter used in this example, /, is for UNIX.
If you are using Windows, assume that the path name delimiter is \.
1. Ensure that the ORACLE_HOME environment variable is set to the root directory of
the Oracle Application Server instance being configured.
2. Open an operating system command prompt and go to the following directory,
which includes the configuration scripts:
SOA_Oracle_Home/bpel/system/services/install/ant-tasks
For example:
sh ./configure_oid.sh orcladmin welcome 389 false us seedAllUsers oc4jadmin
welcome1 oc4j_soa
For example:
ant -f oid-config.xml -Doid.admin.user=orcladmmin
-Doid.admin.pwd=welcome1
-Doid.nonssl.port=389 -Dssl.enabled=false
-Doid.realm=us -Doid.seed=seedAllUsers
-Doc4j.admin.user=oc4jadmin -Doc4j.admin.pwd=welcome1
–Doc4j.container=oc4j_soa
Parameter Value
oid.admin.user A user with administrative privileges over your Oracle Internet
Directory instance. This is typically orcladmin.
oid.admin.pwd The password of the user specified for the administrative user of
Oracle Internet Directory.
oid.nonssl.port The non-SSL port of the Oracle Internet Directory instance. The
Oracle Internet Directory instance must be running on both the SSL
and non-SSL ports.
ssl.enabled Set to either of the following values:
■ true — Runs the identity service with SSL enabled. Note that
JAZN must also be configured with SSL enabled.
■ false — Does not run the identity service with SSL enabled.
oid.realm The realm under which you want to operate in Oracle Internet
Directory.
oid.seed Set either of the following values:
■ seedAllUsers — Seeds the demo users into Oracle Internet
Directory
■ seedRequiredUsers — Seeds only those users required for
proper functioning
oc4j.admin.user A user with administrative privileges over your Oracle Application
Server OC4J instance. This is typically oc4jadmin.
oc4j.admin.pwd The password of the user specified for the administrative user of
OC4J.
oc4j.container The container name where the hw_services (for human workflow)
and orabpel (for Oracle BPEL Process Manager) applications are
deployed. To locate these names, go to SOA_Oracle_Home/j2ee
and look for the following directories:
■ SOA_Oracle_Home/j2ee/oc4j_
home/application-deployments/orabpel
■ SOA_Oracle_Home/j2ee/oc4j_
home/application-deployments/hw_services
See Also:
■ "Reverting from Oracle Internet Directory to the XML-Based
JAZN Provider" on page 2-14
■ Appendix A, "Demo User Community"
Task 4: Configure the Middle Tier to use the LDAP-based JAZN provider with
Secure Socket Layer (SSL)
You must use NULL authentication when communicating with Oracle Internet
Directory. NULL authentication means that data is encrypted with the Anonymous
Diffie-Hellman cipher suite, but no certificates are used for authentication.
To use NULL authentication, add a <property> element to the <jazn> element in
jazn.xml and to the <connection> element in is_config.xml to specify a
protocol. You do not need to specify a wallet location or password, because NULL
authentication does not use certificates.
Add the following property element to jazn.xml (shown in bold):
<jazn provider="LDAP" location="ldap://example.com:636" default-realm="us">
<property name="ldap.user" value="cn=orcladmin"/>
<property name="ldap.password" value="!welcome1"/>
<property name="ldap.protocol" value="ssl"/>
</jazn>
See Also: Oracle Containers for J2EE Security Guide for additional
details about JAZN configuration
Troubleshooting
If you cannot log in to Oracle BPEL Worklist Application or Oracle BPEL Control,
ensure that the steps described above have been executed correctly. If the problem
persists, follow these steps:
1. If you think the scripts did not complete successfully, perform the configuration
steps again.
2. Go to SOA_Oracle_Home/j2ee/home/application-deployments/hw_
services.
3. Open orion-application.xml in a text editor.
4. Verify that the jaas-mode attribute for the JAZN provider configuration is set to
doAsPrivileged. For example:
<jazn provider="LDAP" jaas-mode="doAsPrivileged"/>
where hostname is the name of the host on which Oracle BPEL Process Manager
is installed and port is the Oracle HTTP Server port.
The Cluster Topology page appears.
2. Click the OC4J instance name in the Members section.
The OC4J: oc4j_name page appears.
3. Click the Administration tab.
4. Go to the Security section in the Task Name column.
5. Click the icon in the Go to Task column for Security Providers.
6. Go to the Application Name section.
The orabpel (for Oracle BPEL Process Manager) and hw_services (for human
workflow) applications appear.
7. Click the Edit column for orabpel.
The Security Provider page appears.
8. Click Change Security Provider.
The Change Security Provider page appears.
9. Select File Based Security Provider from the Security Provider Type list
10. Click OK.
12. Log out of Oracle Enterprise Manager 10g Application Server Control Console.
16. If you configured Oracle Internet Directory to use SSL in "Task 4: Configure the
Middle Tier to use the LDAP-based JAZN provider with Secure Socket Layer
(SSL)" on page 2-13, change the following line in the jazn.xml file.
<property name="ldap.protocol" value="ssl"/>
to
<property name="ldap.protocol" value="no-ssl"/>
17. Restart the Oracle Application Server instance for the changes to take affect.
SOA_Oracle_Home/opmn/bin> opmnctl stopall
SOA_Oracle_Home/opmn/bin> opmnctl startall
1. The third-party LDAP servers must be configured to use the following standard
objectClasses:
LDAP servers usually predefine the list of searchable attributes based on the cn,
firstname, lastname, and email attributes. You can customize the attributes
that can be searchable. The user manager attribute from inetOrgPerson
objectClass should be searchable to allow workflow escalation. See the
documentation for the third-party LDAP server you are using for how to set up
the searchable attribute.
The recommended searchable attribute list is cn, sn, givenName, uid, manager,
title, mail, and telephoneNumber.
2. When you seed Oracle BPEL Process Manager users and roles into the LDAP
server, the process assumes that the users’ and groups’ container is created in
LDAP. To create system and optionally demo ldif files, open the following
template files in:
SOA_Oracle_Home\bpel\system\services\config\ldap
Replace the substitution variables with the appropriate values, as shown in the
following examples. The actual values to enter depend upon your domain:
where:
■ %s_UserContainerDN% with a DN, value of the entry under which all users
are supposed to be added. The users container with:
* dn: cn=Users,dc=us,dc=oracle,dc=com is used in this example for
Active Directory
* dn: ou=People,dc=usldap,dc=acmeoracle,dc=com is used in this
example for other third-party LDAP servers
■ %s_GroupContainerDN% with a DN value of the entry under which all
public groups are supposed to be added. The groups’ container with:
* dn: cn=Users,dc=us,dc=oracle,dc=com is used in this example for
Active Directory
* dn: ou=Groups,dc=ldapus,dc=acmeoracle,dc=com is used in this
example for other third-party LDAP servers
■ %s_UserCommonNamingAttribute% with the value used to construct the
user's DN. In this example for other third-party LDAP servers, the cn value is
used. %s_UserCommonNamingAttribute% and value are not applicable to
Active Directory.
Perform the following steps based on your type of third party LDAP server:
■ For Active Directory:
Run the following commands at the DOS command prompt on Windows
2003:
ldifde.exe -i -k -f system-winServer2003-ActDir.ldif
ldifde.exe -i -k -f demo-winServer2003-ActDir.ldif
ldifde.exe -i -k -f demo-roleGrants-winServer2003-ActDir.ldif
See the following Microsoft Active Directory Documentation for details about
all bulk import options for Active Directory’s ldifde.exe:
http://www.microsoft.com/technet/prodtechnol/windowsserver2003/technologies
/directory/activedirectory/stepbystep/adbulk.mspx#ECAA
The Windows system administrator must set passwords for all seeded users;
otherwise, worklist application authentication does not work for those users.
■ For other third-party LDAP servers:
Store changes in the system-ldap.ldif and demo-ldap.ldif files. Then
load the system-ldap.ldif file to the LDAP server by using the ldapadd
utility. Optionally, load demo-ldap.ldif with the ldapmodify utility.
For example:
$ldapadd -c -h ldap.acme.com -p 389 -D "cn=admin" -w welcome -f
system-oid.ldif
$ldapmodify -c -h ldap.acme.com -p 389 -D "cn=admin" -w welcome -f
demo-oid.ldif
See the documentation for the third-party LDAP server you are using for
information about the ldapadd and ldapmodify commands.
3. The identity service third-party LDAP provider must specify connection,
userControls, and roleControls elements in the identity service
configuration file.
Identity service third-party LDAP provider implementation defines a set of user
search properties that must be configured:
■ nameattribute—the name of the LDAP attribute that uniquely identifies
the name of the user. In Sun Directory Server, it is uid; in Active Directory, it is
user.
■ objectClass—the LDAP schema object class used to represent a user. In Sun
Directory Server, it is inetOrgPerson.
And a set of role search properties:
■ nameattribute—the name of the LDAP attribute that uniquely identifies
the name of the role. In Sun Directory Server, it is uniqueMember; in Active
Directory, it is member.
■ objectclass—the LDAP schema object class that is used to represent a
group. In Sun Directory Server, it is groupOfUniqueNames. In Active
Directory, it is group.
■ membershipsearchscope—specifies how deep in the LDAP directory tree
to search for role membership. Supported values: onelevel or subtree.
■ memberattribute—The attribute of a static LDAP group object specifying
the distinguished names (DNs) of the members of the group. In Sun Directory
Server, it is uniqueMember; in Active Directory, it is member.
Both userControls and roleControl must define a search element with the
searchbase attribute.
The searchbase attribute of the userControls search element is a space-separated
list of DNs in the LDAP directory that contains users; for example,
cn=users,dc=us,dc=oracle.com,dc=com.
The searchbase attribute of the roleControls search element is a space-separated
list of DNs in the LDAP directory that contains roles; for example,
cn=Groups,dc=us,dc=oracle,dc=com.
Examples of two realm LDAP server configurations are shown below:
<?xml version = '1.0' encoding = 'UTF-8'?>
<ISConfiguration xmlns="http://www.oracle.com/pcbpel/identityservice/isconfig">
<configurations>
<configuration realmName="us" default="true">
<provider providerType="LDAP" name="iPlanet" service="Identity">
<connection url="ldap://host:port"
binddn="uid=admin,ou=administrators,ou=topologymanagement,o=netscaperoot"
password="welcome1" encrypted="false">
<pool initsize="2" maxsize="25" prefsize="10" timeout="60"/>
</connection>
<userControls>
<property name="nameattribute" value="uid"/>
<property name="objectclass" value="inetOrgPerson"/>
<name>LoanAgentGroup</name>
<email>user1@dlsun4254.us.oracle.com</email>
<owners>fkafka, jcooper, BPMAnalyst</owners>
</groupObject>
See Also: Oracle BPEL Process Manager Developer’s Guide for details
about configuring notification channels in Oracle JDeveloper
Table 2–1 XML Elements for the E-mail Notification Configuration File
Name Description
EmailAccount/Name Name of the account. This can be any name, but
must be unique within this server.
EmailAccount/GeneralSettings/FromNa Name of the From e-mail address
me
EmailAccount/GeneralSettings/FromAd E-mail address for the From e-mail address
dress
EmailAccount/OutgoingServerSettings Name of the outgoing SMTP server
/SMTPHost
EmailAccount/OutgoingServerSettings Port of the outgoing SMTP server
/SMTPPort
EmailAccount/OutgoingServerSet Optional element to specify that authentication is
tings/AuthenticationRequired required for the SMTP server
EmailAccount/OutgoingServerSet Optional element to specify the user name for the
tings/UserName SMTP account
EmailAccount/OutgoingServerSet Optional element to specify the password for the
tings/Password SMTP account
EmailAccount/OutgoingServerSet Encrypted attribute of the password. It is true if
tings/Password[encrypted] the password is encrypted and false if it is not.
You generally set this to false when you first enter
the password. The server automatically encrypts the
password the first time it reads the configuration
file and sets the attribute to true.
EmailAccount/IncomingServerSettings Name of the incoming e-mail server
/Server
EmailAccount/IncomingServerSettings Port of the incoming e-mail server
/Port
EmailAccount/IncomingServerSettings User ID of the e-mail address
/UserName
EmailAccount/IncomingServerSettings User password
/Password
EmailAccount/IncomingServerSettings Encrypted attribute of the password. It is true if
/Password[encrypted the password is encrypted and false if it is not.
Generally, you should set this to false when you
first enter the password. The server automatically
encrypts the password the first time it reads the
configuration file and sets the attribute to true.
EmailAccount/IncomingServerSettings Secure sockets layer (SSL) attribute. It is true if the
/UseSSL incoming server requires SSL and false if it does
not.
EmailAccount/IncomingServerSettings Name of the folder from which to read the incoming
/Folder messages
EmailAccount/IncomingServerSettings Polling interval for reading messages from the
/PollingFrequency incoming messages folder
Table 2–1 (Cont.) XML Elements for the E-mail Notification Configuration File
Name Description
NotificationMode The notification mode of the notification service. It
is expected that the notification mode is set to either
ALL or EMAIL after configuring the notification
service for e-mail and other channels. By default,
this value is set to NONE and therefore no
notifications are sent. The possible values for this
attribute are:
■ ALL – the e-mail, SMS, voice, fax, and pager
channels are configured and notification is sent
through any channel.
■ EMAIL – Only the e-mail channel is configured
for sending notification messages.
■ NONE – No channel is configured for sending
notification messages. This is the default
setting.
Table 2–2 describes the XML elements for the voice notification configuration stored in
ns_iaswconfig.xml on the SOA_Oracle_Home server.
Table 2–2 XML Elements for the Voice Notification Configuration File
Name Description
/IASWConfiguration/SoapURL URL of the wireless service provider
/IASWConfiguration/UserName Name of the user account with the wireless service
provider
/IASWConfiguration/Password User password
/IASWConfiguration/Password[encr Encrypted attribute of the password. It is true if the
ypted password is encrypted and false if it is not. Generally,
you should set this to false when you first enter the
password. The server automatically encrypts the
password the first time it reads the configuration file
and sets the attribute to true.
/IASWConfiguration/ProxyHost Name of the proxy server
/IASWConfiguration/ProxyPort Port number of the proxy server
<!-- UserName - this username should exist in iAS Wireless schema -->
<UserName>username</UserName>
<Password ns0:encrypted="false"
xmlns:ns0="http://xmlns.oracle.com/ias/pcbpel/NotificationService">password
</Password>
</IASWConfiguration>
See "Configuring the Wireless Provider for Voice" on page 2-23 to configure a wireless
service provider for SMS.
See "Configuring the Wireless Provider for Voice" on page 2-23 to configure a wireless
service provider for fax. Note that you cannot use the Oracle Enterprise Manager 10g
Application Server Control Console to configure a fax provider for this release.
See "Configuring the Wireless Provider for Voice" on page 2-23 to configure a wireless
service provider for pager. Note that you cannot use the Oracle Enterprise Manager
10g Application Server Control Console to configure a pager provider for this release.
■ E-mail
■ Voice
■ Fax
■ SMS
■ Instant messaging (IM)
■ Pager
The plugged-in notification service can override the default providers for one or more
channels. When the custom notification service is overriding the default
implementation for a subset of channels, the methods corresponding to the other
channels (channels that are not overridden) are not called by the notification service.
Those methods can just return null. Alternatively, the implementation can extend the
abstract class
oracle.tip.pc.services.notification.AbstractCustomNotificationSe
rviceImpl, which provides empty implementations for each of the channels. In that
case, the implementation can just extend the methods for the interested channels.
If you are overriding the default implementation for all channels, set the All element
with the complete class name of your implementation:
<CustomNotificationServices>
<All>com.xyz.test.NotificationService</All>
<Email/>
<Voice/>
<Fax/>
<Pager/>
<SMS/>
<IM/>
</CustomNotificationServices>
If you are overriding the default implementation for only the e-mail channel, set the
Email element with the complete class name of your implementation:
<CustomNotificationServices>
<All/>
<Email>com.xyz.test.NotificationService</Email>
<Voice/>
<Fax/>
<Pager/>
<SMS/>
<IM/>
</CustomNotificationServices>
The override for other channels is configured the same way as the e-mail channel.
Note that the implementation and its dependent classes must be available in the
classpath of Oracle BPEL Server.
■ workflowServiceSessionTimeoutInMinutes
■ user:ruleRepositoryInfo
taskAutoReleaseConfigurations
If a task is assigned to groups or multiple users, one of the users in the group or the list
of users must acquire the task before acting on it. After the task is acquired, none of the
initial assignees can see the task if the task was assigned to them. If the user does not
act within a given time, the task is automatically released so that all other users in the
group or list of users can see it. A particular business process can disable the
autorelease by making autorelease a restricted action. The release duration is
configurable in the wf_config.xml file.
The configurations for the autorelease durations are in the element
taskAutoReleaseConfigurations. The release durations can be configured for
tasks of each priority. For each priority, the autorelease duration can be specified as a
percentage of the expiration (the percentageOfExpiration attribute) duration or a
default value (the default attribute). The default values are used when the task does
not have an expiration duration. The datatype of default is xsd:duration, whose
format is defined by ISO 8601 under the form PnYnMnDTnHnMnS. The capital letters
are delimiters and can be omitted when the corresponding member is not used.
Examples include PT1004199059S, PT130S, PT2M10S, P1DT2S, -P1Y, or
P1Y2M3DT5H20M30.123S.
For example, if the task of priority 3 is acquired at 3/24/2005 10:00 AM and the
task expires at 3/31/2005 10:00 AM, then the time left for expiration is 7 days. If
the percentageOfExpiration for priority 3 tasks was 50, then the task is released
at 3/37/2005 10:00 PM (3 1/2 days from when it was acquired).
worklistApplicationURL
In the e-mails that are sent for tasks, the link to the Oracle BPEL Worklist Application
is read from the worklistApplicationURL XML element in the wf_config.xml
file.
The element worklistApplicationURL identifies the URL. Configuring this is
useful if the custom Oracle BPEL Worklist Application is built. The tag PC_HW_TASK_
ID_TAG in this URL is replaced with the task ID when constructing the URL for the
e-mail.
actionableEmailAccountName
Task actions can be performed through e-mail. The actionable e-mail account is the
account in which task action-related e-mails are received and processed. This e-mail
account name is identified by the XML element actionableEmailAccountName in
the wf_config.xml file.
pushbackAssignee
A task can be pushed back to the previous approver or previous original assignees.
The original assignees do not need to be the approver, as they may have reassigned the
task, escalated the task, and so. The XML element pushbackAssignee in the wf_
config.xml file controls whether the task is pushed back to the original assignees or
the approvers. The possible values for this element are as follows:
■ APPROVER
■ INITIAL_ASSIGNEES
assigneeDelimiter
Task assignees in the routing slip can be specified as a delimited string. For example,
the following two are equivalent.
■ Listing 1:
<participant name="Loan Agent">
<resource isGroup="false" type="STATIC">jcooper, jstein</resource>
</participant>
■ Listing 2:
<participant name="Loan Agent">
<resource isGroup="false" type="STATIC">jcooper </resource>
<resource isGroup="false" type="STATIC">jstein</resource>
</participant>
In the above example, a comma (,) was used as a delimiter. If a different delimiter is
used in a particular environment, then the delimiter can be specified in the XML
element assigneeDelimiter in the wf_config.xml file. Note that the dynamic
assignee names are also interpreted for delimited strings. In the example below, if the
XPath expression /task:task/task:payload/payload:assignee returns
jcooper, stein, then this participant is the same as listing 2 above.
<participant name="Loan Agent">
<resource isGroup="false"
type="XPATH">/task:task/task:payload/payload:assignee</resource>
</participant>
shortHistoryActions
The workflow service maintains two types of task history:
■ Detailed history
■ Short history
The detailed history contains all the changes made to the task. The short history
contains only versions created by certain actions. By default, task initiation, reinitation,
outcome update, complete, expiration, and withdrawn result in the version being in
the short history. You can add other actions to the short history list in the XML element
shortHistoryActions in the wf_config.xml file. The possible actions that can be
added to the short history actions are listed below.
workflowServiceSessionTimeoutInMinutes
This is the length of time a workflowContext remains valid. If the client does not
perform any activity for longer than the specified time, the workflowContext is
marked as invalid, and a new authenticated context must be created.
For the Oracle BPEL Worklist Application, this means that if a user remains logged
into the application, but does not perform any activity for a time greater than the value
specified in workflowServiceSessionTimeoutInMinutes, they are required to
log into the application again.
user:ruleRepositoryInfo
The user metadata service stores the workflow rules for users and groups in an Oracle
Business Rules repository file. The ruleRepositoryInfo section of the wf_
config.xml file configures how to look up this file. The repository file can be
accessed from the file system, or from a HTTP server through the WebDAV protocol.
Accessing the repository through WebDAV is useful if you have several instances of
the user metadata service on separate hosts that must access the same rule
information. The separate instances can all point to the same WebDAV URL.
By default, the rule repository is the file WFRepository, located in the same directory
as wf_config.xml.
When specifying a repository file on the file system, set the following properties for
ruleRepositoryInfo:
■ ruleEngine: ORACLE (only the Oracle Business Rules Rules Engine is currently
supported)
■ repositoryLocation: file path to the repository file, relative to the directory
SOA_Oracle_Home\bpel\system\services\config.
■ dictionaryName: WFDictionary
■ reposProperty
– name: reposType, value: jar
To host the workflow rules repository using WebDAV, set up a WebDAV Oracle
Business Rules repository. Use the import utility in the Oracle Business Rules Rule
Author to import the dictionary WFDictionary from the WFRepository file-based
repository into your WebDAV-based repository.
Set the following properties for ruleRepositoryInfo:
■ ruleEngine: ORACLE (only the Oracle Business Rules Rules Engine is currently
supported)
■ repositoryLocation: URL for the WebDAV repository
■ dictionaryName: WFDictionary
■ reposProperty
– name: reposType, value: webDAV
– name: proxyHost, value: Web proxy to use when accessing the WebDAV
repository (this property is optional)
See Also:
■ Oracle Business Rules User’s Guide for instructions on setting up a
WebDAV repository
■ Oracle BPEL Process Manager Developer’s Guide for details about
BPEL process integration with business rules
Task 1: Installing the Oracle Application Server SOA Suite and OracleAS Service
Registry
1. Install an Oracle Application Server SOA Advanced install type (recommended). If
you install the Oracle Application Server SOA Basic install type, you must
perform additional configuration steps described in Step 3.
2. Follow the instructions in Oracle Application Server Administrator’s Guide to create a
second OC4J instance through one of the following methods:
■ With the createinstance utility
■ With Oracle Enterprise Manager 10g Application Server Control Console
For the procedures in this section, the second OC4J container is named registry.
Notes:
■ Do not start the second OC4J instance.
■ The OracleAS Service Registry must not reside in the same OC4J
container as your Oracle Application Server SOA install type.
3. If you installed the Oracle Application Server SOA Basic install type, perform the
following procedure:
a. Open the SOA_Oracle_Home/opmn/config/opmn.xml file.
b. Locate the registry component.
c. Change default-web-site as follows:
<port id="default-web-site" range="8889" protocol="http"/>
9. Copy the following library files from the OracleAS Service Registry Registry_
Installation_Home\lib directory to the SOA_Oracle_
Home/bpel/registry/lib directory:
■ security2-ng.jar
■ security_providers_client.jar
10. Back up the SOA_Oracle_Home/j2ee/OC4J_Home/config/server.xml file.
12. Locate the shared library named orabpel.common in the server.xml file.
<options>
<option>
<name>debug</name>
<value>true</value>
</option>
</options>
</login-module>
</login-modules>
</application>
<application>
<name>NamePasswordAN</name>
<login-modules>
<login-module>
<class>
com.systinet.uddi.security.jaas.NamePasswordLoginModule</class>
<control-flag>required</control-flag>
<options>
<option>
<name>debug</name>
<value>true</value>
</option>
</options>
</login-module>
</login-modules>
</application>
<application>
<name>NamePasswordNoAN</name>
<login-modules>
<login-module>
<class>com.idoox.security.jaas.NamePasswordLoginModuleNoAuth</class>
<control-flag>required</control-flag>
<options>
<option>
<name>debug</name>
<value>true</value>
</option>
</options>
</login-module>
</login-modules>
</application>
<application>
<name>NamePasswordAN</name>
<login-modules>
<login-module>
<class>
com.systinet.uddi.security.jaas.NamePasswordLoginModule</class>
<control-flag>required</control-flag>
<options>
<option>
<name>debug</name>
<value>true</value>
</option>
</options>
</login-module>
</login-modules>
</application>
<application>
<name>IdentityAsserter</name>
<login-modules>
<login-module><class>
com.systinet.uddi.security.jaas.IdentityAsserterLoginModule</class>
<control-flag>required</control-flag>
<options>
<option>
<name>debug</name>
<value>true</value>
</option>
</options>
</login-module>
</login-modules>
</application>
■ other (This is an optional selection and refers to the abstract location of the
service.)
http://hostname:port/RapidDistributors?wsdl
Task 4: Specifying the Registry Service Inquiry URL in Oracle BPEL Control
1. Access Oracle BPEL Control through one of the following methods:
■ Select Start > All Programs > Oracle - Oracle_Home > Oracle BPEL Process
Manager > BPEL Control
■ Go to the following URL:
http://localhost:port/BPELConsole
This property must refer to the inquiry WSDL URL of the OracleAS Service
Registry. For example:
http://hostname.us.oracle.com:42461/registryrc7/uddi/inquiry?wsdl
Field Description
Connection Name Enter a name for connecting to the registry.
Inquiry Endpoint URL Enter the URL of the inquiry endpoint. For example:
http://hostname.us.oracle.com:42461/registryrc7/uddi/in
quiry?wsdl
Note: The value you enter here is the same as the value specified
in Oracle BPEL Control in Step 3 of "Task 4: Specifying the
Registry Service Inquiry URL in Oracle BPEL Control" on
page 2-36.
6. Click Next.
7. Test the connection by clicking Test Connection. If the connection was successful,
the following message appears:
Successfully contacted UDDI inquiry endpoint
8. Click Finish.
The required endpoint service can now be selected in the Service Explorer window
by browsing services under the UDDI Registry folder while a creating a partner
link.
4. Expand the navigation tree and select the RapidDistributors service under the
UDDI Registry.
where:
■ registry_username — the name of a registry user
■ registry_password — the password for this registry user
You can also set these properties at the domain level in Oracle BPEL Control under
Manage BPEL Domain > Configuration (as you set the uddiLocation property). If
they are also set in the bpel.xml file, the settings in that file overwrite the ones
set in Oracle BPEL Control.
Troubleshooting
This section describes troubleshooting procedures for OracleAS Service Registry and
Oracle BPEL Process Manager integration.
■ A one-time binding fault occurs when OracleAS Service Registry is deployed on a
remote Oracle Application Server SOA instance while the BPEL processes are
deployed on another SOA instance of a different host. The following error displays
the first time the calling BPEL process invokes the registry published service. All
subsequent invocations of the service are performed successfully without error
(after deployment).
<bindingFault xmlns="http://schemas.oracle.com/bpel/extension"><part
name="code"><code>GenericError</code>
</part><part name="summary"><summary>http_client transport doesn't support
nonProxyHosts with wildcards</summary>
</part></bindingFault>
■ If your WSDL URLs point to hosts using the DHCP communication protocol
instead of static IP addresses, ensure that you update the SOA_Oracle_
Home/opmn/conf/opmn.xml file to include this information. For example:
-Dhttp.proxyHost=www-proxy.us.oracle.com -Dhttp.proxyPort=80
-Dhttp.nonProxyHosts=122.39.159.106|*acmecorp.com|*.acme.com|localhost|
ser vices.xmethods.net|xmethods.net|*idc.acme.com|dhcp-idc-towers-122-
39-159-106.idc.acme.com"/>
Summary
This chapter describes how to configure the identity service, worklist service, and
notification service.
This chapter describes how to create a custom identity service plug-in to integrate into
specific third-party repositories.
This chapter contains the following topics:
■ Creating a Custom Identity Service Plug-in
■ Summary
See Also: The Javadoc for the different interfaces of the identity
service located in
SOA_Oracle_Home\bpel\docs\workflow
import java.util.*;
import javax.servlet.http.HttpServletRequest;
import org.w3c.dom.Element;
import oracle.tip.pc.infra.exception.*;
import oracle.tip.pc.services.common.*;
import oracle.tip.pc.services.identity.*;
/**
* Constructor
*/
private CustomIdentityService(ProviderCfg provCfg) throws ServiceException {
super(provCfg);
}
/**
* Factory Method
*/
public static Service getInstance(String realmName) throws ServiceException {
try {
BPMIdentityConfigService cfgSrv =
ServiceFactory.getIdentityConfigServiceInstance();
if ( realmName == null ) {
realmName = cfgSrv.getDefaultRealmName();
}
Configuration config = cfgSrv.getConfigurationInstance(realmName);
ProviderCfg providerCfg = config.getProviderCfg(
ProviderCfg.IDENTITY_SERVICE);
CustomIdentityService service = new CustomIdentityService(providerCfg);
return service;
} catch (Exception e) {
throw new ServiceException(e, DiagnosticService.SERVICESCOMPONENT);
}
}
…
/**
* @see oracle.tip.pc.services.identity. BPMAuthorizationService
#lookupUser(String)
*/
public BPMUser lookupUser(String userName) throws BPMIdentityException,
BPMIdentityNotFoundException {
Logger.debugLog("CustomIdentityService::lookupUser() begin");
if(userName == null)
throw new BPMIdentityException(
PCExceptionIndex.IDENTITYSERVICE_NAME_IS_NULL);
In the preceding example, only the authentication provider uses the custom
implementation while all other inquiries use the JAZN XML-based provider. The class
CustomAuthenticationService must implement the
BPMAuthenticationService interface.
If the SOA_Oracle_Home\bpel\system\services\config\is_config.xml file
specifies CUSTOM as the providerType for the identity service, then the
BPMIdentityService interface must be implemented:
<?xml version = '1.0' encoding = 'UTF-8'?>
<ISConfiguration xmlns="http://www.oracle.com/pcbpel/identityservice/isconfig">
<configurations>
<configuration realmName="jazn.com">
<provider providerType="CUSTOM"
name="CustomPlugIn" service="Identity"
class=”package.name.CustomIdentityService”>
<property name=”customProperty” value=”customValue” />
</configuration>
</configurations>
</ISConfiguration>
These methods are used by Java clients to receive the instances of the corresponding
services providers. The service factory methods create custom service instances at run
time if the CUSTOM provider type is specified for the service. These methods invoke the
custom service getInstance(String realmName) API.
If the service provider class extends the
oracle.tip.pc.services.BPMServiceBase class, the service factory method
must get an instance of the ProviderCfg class, which defines properties for a given
configuration. The service can then be created:
CustomIdentityService service = new CustomIdentityService(providerCfg);
The same deployment scheme can be used for any custom plug-in, with minor
changes such as the name of the provider JAR file.
Registering and Configuring the Identity Service for the Custom Plug-in
Identity service configuration in defined in the is_config.xml file. The file must be
located in a directory that is in the classpath of Oracle BPEL Process Manager. By
default, this file is stored in SOA_Oracle_Home\bpel\system\services\config.
The following configuration file sample describes the database plug-in implemented
as a custom provider for the identity service:
<?xml version = '1.0' encoding = 'UTF-8'?>
<ISConfiguration mlns="http://www.oracle.com/pcbpel/identityservice/isconfig">
<configurations>
<configuration realmName="realm">
<provider providerType="CUSTOM" service="Identity"
name="package.name.CustomerProvider"
class=”package.name.CustomIdentityService”>
<property name="dataSource" value="jdbc/BPELSamplesDataSource"/>
</provider>
</configuration>
</configurations>
</ISConfiguration>
The name attribute of the provider element can load the BPMProvider class. The
class attribute defines the implementation class for BPMIdentityService. The
custom property with the name dataSource gets the data source name for the JDBC
connection.
See Also: "Configuring the Identity Service" on page 2-1 for identity
service configuration procedures
Summary
This chapter describes how to create a custom identity service plug-in to integrate into
specific third-party repositories. Details are provided for assembling all classes into a
custom plug-in JAR file, deploying the JAR file, including the JAR file in the Oracle
BPEL Process Manager classpath, configuring the is_config.xml file, and creating
system users and groups.
This chapter describes how to configure Oracle BPEL Process Manager logging levels
and view logging results.
This chapter contains the following topics:
■ Logging Overview
■ Domain Level Logging
■ System Level Logging
■ System and Domain Level Logging Examples
■ Logging with Sensors
■ Logging with bpelx:exec in a Java Embedding Activity
■ Summary
Logging Overview
Oracle BPEL Process Manager uses the log4j tool to generate log files containing
messages that describe startup and shutdown information, errors, warning messages,
access information on HTTP requests, and additional information.
The log4j tool enables logging at runtime without modifying the application binary.
Instead, logging behavior is controlled by editing properties in Oracle BPEL Control
and Oracle BPEL Admin Console.
Two logging levels are supported in Oracle BPEL Process Manager:
■ Domain — Manages logging information within specific domains
■ System — Manages logging information on a system-wide level
The default format of log files created by log4j cannot be read by the log loader and
written to the log repository in Oracle Enterprise Manager 10g Application Server
Control Console. To do this, you must change the appender format of the messages
written to log files. Make this change in the log4j-config.xml file, which is located
in the following directories:
■ For domain level logging, change log4j-config.xml in the SOA_Oracle_
Home\bpel\domains\domain_name\config directory
■ For system level logging, change log4j-config.xml in the SOA_Oracle_
Home\bpel\system\config directory
See Also:
■ "Configuring Logging for Application Server Control" of Oracle
Application Server Administrator’s Guide for details about changing
the appender format for log files in Oracle Enterprise Manager 10g
Application Server Control Console
■ http://logging.apache.org/log4j/docs for details about
log4j
■ Oracle Process Manager and Notification Server Administrator’s Guide
for details about Oracle Process Manager and Notification Server
(OPMN) log files located in SOA_Oracle_Home\opmn\logs
The following logging levels are available and listed here from highest priority to
lowest priority. When a logging level is specified, all messages with a lower
priority level than the one selected are ignored.
The lower part of the Logging window displays the types of loggers you can set.
5. Review the levels and descriptions.
6. Select a level from the Logging Level list for a specific logger name or select a
single level for all logger names from the Change All list.
7. Click Apply.
8. Rerun the process to collect logging data.
9. Review the domain.log file located in SOA_Oracle_
Home\bpel\domains\domain_name\logs.
See Also: Oracle BPEL Process Manager Developer’s Guide for details
about sensors
Summary
This chapter describes how to configure and view BPEL process logs at the domain
and system levels. Examples of logger names to set in order to view troubleshooting
information are provided. Alternative methods for generating logging information
(with sensors and with bpelx:exec) are also described.
This appendix describes the demo user community for task assignments in Oracle
BPEL Process Manager.
This appendix contains the following topics:
■ Setting Up JAZN Demo Users
■ Summary
See Also:
■ Chapter 2, "Service Configuration"
■ Oracle BPEL Process Manager Developer’s Guide
■ Oracle Containers for J2EE Configuration and Administration Guide
■ Oracle Containers for J2EE Security Guide
■ Oracle Containers for J2EE Services Guide
The seventeen Oracle BPEL Process Manager demo users and demo role owners are
shown in Table A–1.
Notes:
■ The system users (oc4jadmin, bpeladmin, guest, and
default) are also part of the demo user community shown in
Table A–1.
■ All users have the languagePreference property defined as
en-US (U.S. English) and the notificationPreference
property set to Mail.
Table A–2 and Table A–3 list the Oracle BPEL Process Manager application roles and
enterprise groups for the users shown in Table A–1.
See Also:
■ "Oracle BPEL Control and Oracle BPEL Admin Console Users and
Roles" on page 1-22 for additional details about the
BPMDefaultDomainAdmin role
■ The "Oracle BPEL Process Manager Workflow Services" chapter of
Oracle BPEL Process Manager Developer’s Guide for additional
details about other roles listed in Table A–2
Oracle BPEL Process Manager declares the role PUBLIC, which is implicitly granted to
all registered Oracle BPEL Process Manager users.
The workflow rules for groups and roles can be created by users who are either the
group owner or have the BPMWorkflowAdmin role. The user can own the group
directly or indirectly. The user owns the group and role indirectly if they are a grantee
for another role and group that owns the role and group. Table A–4 shows the list of
roles and groups with owners. The bpeladmin system user owns the
BPMWorkflowAdmin role.
Table A–4 Oracle BPEL Process Manager Demo Role and Group Owners
Role/Group Direct Owners Owners
LoanAnalyticGroup jstein, BPMAnalyst bpeladmin, default, guest,
oc4jadmin, fkafka, jstein,
mmitch, sfitzger, szweig,
wshake
LoanAgentGroup fkafka, jcooper, BPMAnalyst bpeladmin, default, guest,
oc4jadmin, fkafka, jstein,
jcooper, mmitch, sfitzger,
szweig, wshake, wfaulk
Supervisor jstein jstein
California fkafka fkafka
WesternRegion jstein jstein
Table A–4 (Cont.) Oracle BPEL Process Manager Demo Role and Group Owners
Role/Group Direct Owners Owners
EasternRegion jstein jstein
BPMAnalyst jstein, jcooper, cdoyle, jstein, jcooper, szweig,
LoanAgentGroup istone, jlondon, fkafka, mmitch,
mtwain, sfitzger, wshake
BPMWorkflowAdmin bpeladmin bpeladmin
CEO
Charles Dickens
Cdickens
Vice President
William Faulkner
Wfaulk
Manager3
Robert Louis Stevenson
rsteven
Summary
This appendix describes the demo user community for task assignments in Oracle
BPEL Process Manager.
A definitions, 1-4
.bpel_TaskActionHandler_1.0.jar
actionableEmailAccountName
deleting, 1-7
configuration, 2-27
.bpel_TaskManager_1.0.jar
Active Directory
deleting, 1-7
configuration, 2-15
bpeladmin
Admintool
owner of BPMWorkflowAdmin role, A-4
for creating realms, users, and roles, 2-7
part of demo user community, A-2
application roles, A-3
system user in role, A-3
assigneeDelimiter
user account, 1-22, A-1, A-2
configuration, 2-28
with BPMSystemAdmin role, 1-22
authentication
bpelx:exec
BPMAuthenticationService, 3-2
logging, 4-7
definition, 1-3
bpel.xml file, 1-19
NULL authentication required with Oracle
BPMAnalyst
Internet Directory, 2-13
role, A-3
service provider, 2-3
role members directly own LoanAgentGroup and
through identity service, 2-1
LoanAnalyticGroup, A-5
authorization
BPMAppRole interface
BPMAuthorizationService, 3-2
description, 3-2
definition, 1-3
BPMAuthenticationService interface
Oracle Web Services Manager, 1-29
description, 3-2
through identity service, 2-1
BPMAuthorizationService interface
Axis services with custom authentication handlers
description, 3-2
basicHeaders, 1-20
BPMDefaultDomainAdmin
basicPassword, 1-20
definition, 1-22
basicUsername, 1-20
granting, 1-23
invoking secured services, 1-20
role, A-3
BPMGroup interface
B description, 3-2
BPMIdentity interface
basicHeaders
description, 3-2
Axis services with custom authentication
BPMIdentityService interface
handlers, 1-20
description, 3-2
basicPassword
BPMPrincipal interface
Axis services with custom authentication
description, 3-2
handlers, 1-20
BPMProvider interface
basicUsername
description, 3-2
Axis services with custom authentication
BPMRole interface
handlers, 1-20
description, 3-2
BPEL processes
BPMSystemAdmin
securing, 1-5
definition, 1-22
using J2EE basic authentication, 1-8
granting, 1-23
using native BPEL security extensions, 1-10
role, A-3
using SSL for certificate-based authentication, 1-6
BPMUser interface
BPEL security extensions
description, 3-2
Index-1
BPMWorkflowAdmin editing the log4j-config.xml file, 4-4
creating workflow rules for groups, A-4 examples, 4-6
owned by bpeladmin user account, A-4 logger names, 4-3
role, A-3 setting logging values, 4-3
BPMWorkflowReassign domain level security, 1-11
role, A-3 domain log files
BPMWorkflowSuspend location of, 4-1, 4-2, 4-4
role, A-3 domains
BPMWorkflowViewHistory default, 1-22
role, A-3
E
C EasternRegion
cacerts file, 1-16, 1-17 group, A-4
California, A-4 e-mail server
group, A-4 configuring, 2-20
CentralRegion e-mail service
group, A-4 ns_emails.xml file example, 2-22
configure_oid file encryption
configuring Oracle Internet Directory 10.1.2 with definition, 1-4
identity service 10.1.3.1.0, 2-10 Oracle Web Services Manager, 1-29
connection element enterprise groups, A-4
of identity service configuration file, 2-4 examples
connection pool of system and domain level logging, 4-6
identity service properties, 2-4
custom identity service plug-in
F
BPMAppRole interface, 3-2
BPMAuthenticationService interface, 3-2 fax
BPMAuthorizationService interface, 3-2 ns_faxcoverpages.xml file example, 2-24
BPMGroup interface, 3-2 fax wireless provider
BPMIdentity interface, 3-2 configuring fax cover pages, 2-24
BPMIdentityService interface, 3-2
BPMPrincipal interface, 3-2 G
BPMProvider interface, 3-2
BPMRole interface, 3-2 group ownership
BPMUser interface, 3-2 setting up, 2-19, 2-20
creating, 3-1 groups
description of interfaces, 3-1 California, A-4
implementing, 3-2 CentralRegion, A-4
repository example, 2-19 EasternRegion, A-4
enterprise groups, A-4
LoanAgentGroup, A-4
D LoanAnalyticGroup, A-4
default RegionalOffices, A-4
domain, 1-22 Supervisor, A-4
part of demo user community, A-2 WesternRegion, A-4
system user in role, A-3 guest
user account, 1-22, A-1, A-2 part of demo user community, A-2
with BPMDefaultDomainAdmin role, 1-22 system user in role, A-3
demo community user account, A-1, A-2
definition, A-1
example of use, A-6 H
for Oracle BPEL Process Manager, A-1
organizational hierarchy of members, A-5 HTTP basic authentication
roles, A-3 httpPassword, 1-21
users, A-2 httpUsername, 1-20
digital signatures invoking secured services, 1-20
definition, 1-4 HTTP binding
Oracle Web Services Manager, 1-29 invoking secured services, 1-21
domain level logs native BPEL security extensions, 1-13
HTTP proxy server
Index-2
invoking a partner link, 1-28 with, 1-22
httpPassword Java and EJB binding
HTTP basic authentication, 1-21 invoking secured services, 1-21
httpUsername Java API
HTTP basic authentication, 1-20 native BPEL security extensions, 1-13
Javadoc
location of identity service Javadoc, 3-2, 3-5
I
JAZN
identity service demo users, A-1
BPMAppRole interface, 3-2 LDAP-based provider configuration, 2-7
BPMAuthenticationService interface, 3-2 roles, A-1
BPMAuthorizationService interface, 3-2 setting up users, A-1
BPMGroup interface, 3-2 used with identity service, 2-1
BPMIdentity interface, 3-2 XML-based provider configuration, 2-6
BPMIdentityService interface, 3-2 JAZN Admintool
BPMPrincipal interface, 3-2 for creating realms, users, and roles, 2-7
BPMProvider interface, 3-2 jazn-data.xml file, 1-9
BPMRole interface, 3-2 defining the JAZN element, 2-6
BPMUser interface, 3-2 jssecacerts file, 1-16
configuring 10.1.3.1.0 with 10.1.2 Oracle Internet
Directory, 2-7
connection element, 2-4
K
connection pool properties, 2-4 keystore, 1-17
custom plug-in configuration, 2-19 keytool
definition, 2-1 running, 1-16
multiple service providers, 2-3
roles, 2-1
L
structure of identity service configuration file, 2-1
use with JAZN, 2-1 LDAP
userControls and roleControl elements, 2-5 Oracle Internet Directory provider type, A-1
users, 2-1 password for Oracle Internet Directory provider
inbound type, A-1
supported security methods, 1-1 LDAP server
inbound security third-party configuration, 2-15
definition, 1-1, 1-5 LDAP-based JAZN provider
interfaces configuration, 2-7
for custom identity service plug-ins, 3-1 LoanAgentGroup, A-4
is_config.xml file group, A-4
connection element, 2-4 LoanAnalyticGroup, A-4
identity service configuration file, 2-1 group, A-4
location of, 2-1 log files
location of XML schema file for, 2-1 format, 4-1
provider element, 2-2 location of OPMN log files, 4-2
roleControls element, 2-5 log4j
userControls element, 2-5 overview, 4-1
log4j-config.xml file
editing domain level log values, 4-4
J editing system level log values, 4-6
J2EE basic authentication logger names
for BPEL processes, 1-8 domain level logs, 4-3
Oracle BPEL Process Manager for system level logs, 4-5
Developers, 1-9 logging
Oracle BPEL Process Manager for OracleAS domain level, 4-1, 4-2
Middle Tier, 1-9 format of log files, 4-1
J2EE basic authentication protected services (HTTP) levels, 4-1, 4-3
HTTP basic authentication, 1-20 location of domain log files, 4-1
HTTP binding, 1-21 location of system log files, 4-1
invoking secured services, 1-20 log4j, 4-1
JAAS security features overview, 4-1
Oracle BPEL Process Manager integrated performance implications of logging with
Index-3
sensors, 4-7 XML elements for voice, 2-23
setting domain level values in Oracle BPEL ns_iaswconfig.xml file
Control, 4-3 example, 2-23
setting system level values in Oracle BPEL Admin
Console, 4-5
O
system level, 4-1, 4-5
with bpelx:exec, 4-7 OC4J instances
with sensors, 4-7 configuring, 2-31
logging levels creating a second instance, 2-31
all, 4-3 requirements, 2-31
debug, 4-3 oc4jadmin
description, 4-3 for creating application server connections in
error, 4-3 Oracle JDeveloper, 1-22
fatal, 4-3 includes BPMSystemAdmin role, 1-22
info, 4-3 part of demo user community, A-2
off, 4-3 system user in role, A-3
warn, 4-3 user account, A-1, A-2
logging performance implications, 4-7 OPMN log files
location of, 4-2
Oracle Application Server Service Registry
M configuring, 2-31
message-handlers.xml file, 1-12 configuring a partner link, 2-37
multiple service providers creating a connection to the UDDI registry, 2-37
identity service support, 2-3 creating a second OC4J instance, 2-31
deploying Web services, 2-34
installing, 2-31
N
integrating with Oracle BPEL Process
native BPEL security extensions Manager, 2-30
domain and process lever security, 1-11 OC4J instance requirements, 2-31
for BPEL processes, 1-10 publishing a service and adding bindings, 2-35
HTTP binding, 1-13 securing the client with basic authentication, 2-38
Java API, 1-13 specifying the registry service inquiry URL, 2-36
SOAP over HTTP binding, 1-13 specifying the registry service key, 2-38
notification mode Oracle BPEL Admin Console
configuring, 2-22 setting system level log values, 4-5
notification service user accounts, 1-22
configuring, 2-20 Oracle BPEL Control
configuring the e-mail server, 2-20 setting domain level log values, 4-3
configuring the fax wireless provider, 2-24 specifying the registry service inquiry URL, 2-36
configuring the notification mode, 2-22 user accounts, 1-22
configuring the pager wireless provider, 2-24 Oracle BPEL Process Manager
configuring the pluggable notification integrated with Oracle Applications Server J2EE
service, 2-24 and JAAS security features, 1-22
configuring the SMS wireless provider, 2-24 integrating with Oracle Application Server Service
configuring the voice wireless provider, 2-23 Registry, 2-30
implementing the pluggable notification Oracle BPEL Process Manager for OracleAS Middle
service, 2-24 Tier
registering the pluggable notification certificate-based authentication for Oracle BPEL
service, 2-25 Server, 1-7
XML elements, 2-20 certificate-based authentication with Oracle Wallet
notifications Manager, 1-7
configuring fax cover pages, 2-24 Oracle BPEL Server
ns_emails.xml file enabling certificate-based authentication for Oracle
configuring, 2-20 BPEL Process Manager for OracleAS Middle
example, 2-22 Tier, 1-7
XML elements, 2-20 Oracle Internet Directory
ns_faxcoverpages.xml file associating with an Oracle Application Server
configuring fax cover pages, 2-24 instance, 2-8
ns_iasconfig.xml file configuring 10.1.2 with identity service
configuring, 2-23, 2-24 10.1.3.1.0, 2-7
Index-4
configuring to use SSL, 2-13 specifying, 2-38
performing configuration tasks, 2-10 roleControls element
preconfiguration tasks, 2-7 of identity service configuration file, 2-5
reverting to the XML-based JAZN provider, 2-14 search attributes, 2-5
testing the configuration, 2-13 roleControls Element function
troubleshooting, 2-13 description, 2-5
Oracle Wallet Manager roles
cannot use the default certificate with Oracle BPEL BPMAnalyst, A-3
Process Manager for OracleAS Middle BPMDefaultDomainAdmin, A-3
Tier, 1-7 BPMSystemAdmin, A-3
enabling certificate-based authentication for Oracle BPMWorkflowAdmin, A-3
BPEL Process Manager for OracleAS Middle BPMWorkflowReassign, A-3
Tier, 1-7 BPMWorkflowSuspend, A-3
situations when not to use, 1-16 BPMWorkflowViewHistory, A-3
Oracle Web Services Manager demo community users in roles, A-3
authorization, 1-29 direct owners of, A-4
digital signatures, 1-29 granting, 1-23
encryption, 1-29 owners of, A-4
security features of, 1-28 predefined by identity service, 2-1
outbound system users in roles, A-3
supported security methods, 1-1 with Oracle BPEL Process Manager, 1-22
outbound security
definition, 1-1, 1-14
S
search attribute
P in userControls and roleControls elements, 2-5
pager wireless provider secure socket layer (SSL)
configuring, 2-24 certificate-based authentication for BPEL
partner links processes, 1-6
configuring a connection to the UDDI Oracle BPEL Process Manager for
registry, 2-37 Developers, 1-8
invoking a partner Web service through a proxy Oracle BPEL Process Manager for OracleAS
server, 1-28 Middle Tier, 1-6
passwords certificate-based authentication for invoking
LDAP-based (Oracle Internet Directory) provider secured services, 1-15
type, A-1 design time, 1-17
XML-based (JAZN) provider type, A-1 HTTP/S with partner link and Oracle BPEL
pluggable notification service Server client certificate
configuring, 2-24 authentication, 1-18
implementing, 2-24 HTTP/S with partner link server certificate
registering, 2-25 authentication, 1-17
privileges runtime, 1-17
granting, 1-23 definition, 1-4
process level security, 1-11 secured services
provider element Axis services with custom authentication
of identity service configuration file, 2-2 handlers, 1-20
proxy server invoking, 1-14
invoking a partner link, 1-28 J2EE basic authentication protected services
PUBLIC role (HTTP), 1-20
implicitly granted, A-4 Java and EJB binding, 1-21
pushbackAssignee using SSL for certificate-based
configuration, 2-27 authentication, 1-15
WS-Security-compliant services, 1-18
security
R
Axis services with custom authentication
RegionalOffices handlers, 1-20
group, A-4 custom validator, 1-26
registry service inquiry URL default validator, 1-25
specifying, 2-36 inbound methods supported, 1-1
registry service key invoking secured services, 1-14
Index-5
J2EE basic authentication, 1-8 with Oracle BPEL Process Manager, 1-22
J2EE basic authentication protected services userControls element, 2-5
(HTTP), 1-20 of identity service configuration file, 2-5
Java and EJB binding, 1-21 search attributes, 2-5
native BPEL security extensions, 1-10 user-properties.xml file
outbound methods supported, 1-1 stores user properties, 2-6
overview, 1-1 users
securing BPEL processes, 1-5 automatically created, 2-1
SSL for certificate-based authentication, 1-6, 1-15 bpeladmin, 2-1
validators, 1-25 default, 2-1
WS-Security-compliant services, 1-18 guest, 2-1
sensors in demo community, A-2
logging, 4-7 users accounts for accessing Oracle BPEL Admin
service key Control, 1-22
specifying, 2-38
shortHistoryActions
V
configuration, 2-28
SMS wireless provider validators
configuring, 2-24 creating a custom validator, 1-26
SOAP binding custom, 1-26
WS-Security-compliant services, 1-19 default, 1-25
SOAP over HTTP binding overview, 1-25
native BPEL security extensions, 1-13 voice service
soapCallbackURL property ns_iaswconfig.xml file example, 2-23
setting for certificate-based authentication, 1-7 voice wireless provider
soapServerUrl property configuring, 2-23
setting for certificate-based authentication, 1-7
Supervisor, A-4 W
group, A-4
system level logs web.xml file, 1-10
editing the log4j-config.xml file, 4-6 WesternRegion, A-4
examples, 4-6 group, A-4
logger names, 4-5 wf_config.xml file
setting logging values, 4-5 configuring, 2-26
system log files workflow rules for groups
location of, 4-1, 4-5, 4-6 BPMWorkflowAdmin role, A-4
system users setting up, 2-19
types, A-1, A-2 setting up for JAZN LDAP-based providers, 2-20
setting up for JAZN XML-based providers, 2-19
workflow service
T actionableEmailAccountName
taskAutoReleaseConfigurations configuration, 2-27
configuration, 2-27 assigneeDelimiter configuration, 2-28
third-party LDAP server configuring, 2-26
configuration, 2-15 pushbackAssignee configuration, 2-27
truststore, 1-18 shortHistoryActions configuration, 2-28
taskAutoReleaseConfigurations
configuration, 2-27
U user
UDDI registry ruleRepositoryInfo configuration, 2-29
creating a connection to, 2-37 workflowServiceSessionTimeoutInMinutes
integrating with Oracle BPEL Process configuration, 2-29
Manager, 2-30 worklistApplicationURL configuration, 2-27
user workflowServiceSessionTimeoutInMinutes
ruleRepositoryInfo configuration, 2-29
configuration, 2-29 worklistApplicationURL
user accounts configuration, 2-27
for accessing Oracle BPEL Control, 1-22 WS-Security
for creating application server connections in definition, 1-3
Oracle JDeveloper, 1-22 WS-Security-compliant services
Index-6
invoking secured services, 1-18
SOAP binding, 1-19
wsseHeaders, 1-18
wssePassword, 1-18
wsseUsername, 1-18
wsseHeaders
WS-Security-compliant services, 1-18
wssePassword
WS-Security-compliant services, 1-18
wsseUsername
WS-Security-compliant services, 1-18
X
XML-based JAZN provider
configuration, 2-6
password, A-1
reverting to, 2-14
Index-7
Index-8