18 Managing External Applications

Register and manage external applications for WebCenter Portal deployments.

An external application is any application that implements its own authentication process. Specifically, it is an application that does not take part in the single sign-on process for WebCenter Portal.

Application administrators can register and manage external applications using Fusion Middleware Control or the WLST command-line tool, or at runtime through built-in administration pages or using external application task flows.

All external application changes that you make for WebCenter Portal post deployment, are stored in the MDS repository as customizations.

Note:

External application configuration is dynamic. Configuration changes are immediately reflected in WebCenter Portal; it is not necessary to restart the application or the managed server.

Permissions:

To perform the tasks in this chapter, you must be granted the WebLogic Server Admin role through the Oracle WebLogic Server Administration Console and the Administrator role granted through WebCenter Portal Administration.

For more information about roles and permissions, see Understanding Administrative Operations, Roles, and Tools.

About External Applications

If WebCenter Portal interacts with an application that handles its own authentication, you can associate that application with an external application definition to allow for credential provisioning. In doing so, you use an external application definition to provide a means of accessing content from these independently authenticated applications.

To replicate a single sign-on experience from the end user's perspective, the external application service captures the user name and password, and any other credentials for the external application, and supplies it to the WebCenter Portal tool or application requiring the credentials. The WebCenter Portal tool or other application then uses this information to log in on behalf of the end user. This username and password combination is securely stored in a credential store configured for the WebLogic domain where the application is deployed.

Note:

When logging in to an external application, if you clear the Remember My Login Information check box, then the credentials provisioned for that user session are lost in the event of a failover in a high availability (HA) environment. You are prompted to specify the credentials again if you try to access the external application content in the same user session.

Figure 18-1 Add External Application Connection

Description of Figure 18-1 follows
Description of "Figure 18-1 Add External Application Connection"

Registering External Applications

You can register external applications for WebCenter Portal through Fusion Middleware Control or using WLST commands.

Before registering an external application, access the application's login page and examine the HTML source for the application's login form. All the registration details you require are located in the <form tag>.

For example, the underlying code for the Yahoo! Mail login form looks something like this:

<form method=post action="https://login.yahoo.com/config/login?" autocomplete="off" name="login_form">
...
<td><input name="login" size="17"</td>
...
<td><input name="passwd" size="17"</td>
...

In this example, to provide WebCenter Portal users with a direct link to the Yahoo! Mail application, the following sample registration information is required:

Registration Information Sample Value HTML Source

Login URL

https://login.yahoo.com/config/login?

action

User Name / User ID Field

login

name="login"

Password Field Name:

passwd

name="passwd"

Authentication Method

post

method

Note:

External application configuration is dynamic. New external applications and updates to existing applications are immediately available; there is no need to restart WebCenter Portal.

This section includes the steps for:

For information about registering external applications through WebCenter Portal Administration, see Registering External Applications at Runtime.

Registering External Applications Using Fusion Middleware Control

To register an external application:

  1. Log in to Fusion Middleware Control and navigate to the home page for your WebCenter Portal instance.
  2. From the WebCenter Portal menu, select Settings , then Service Configuration.
    Configuring External Applications
  3. From the list of services on the WebCenter Portal Service Configuration page, select External Applications.
  4. To register a new external application, click Add.
    Add External Application Connection
  5. Enter a unique name for the external application and a display name that application users working with this external application sees.

    Table 18-1 External Application Connection - Name

    Field Description

    Application Name

    Enter a name for the application. The name must be unique (across all connection types) within the application.

    For example: yahoo

    Note: Once registered, you cannot edit the Application Name.

    Display Name

    Enter a user friendly name for the application that WebCenter Portal users will recognize. Application end-users working with this external application will see the display name you specify here.

    For example: My Yahoo

    If you leave this field blank, the Application Name is used.

  6. Enter the login details for the external application.

    Table 18-2 External Application Connection - Login Details

    Field Description

    Enable Automatic Login

    Select to allow automatically log users in to this application. Choosing this option requires you to complete the Login URL, HTML User ID Field Name, and HTML User Password Field Name fields

    With automated single sign-on, the user directly links to the application and is authenticated automatically, as their credentials are retrieved from the credential store. Selecting this option provides the end user with a seamless single sign-on experience.

    Note: Automated login is not supported for:

    • External applications using BASIC authentication.

    • External applications configured for SSO.

    • External applications with a customized login form (built using ADF Faces) that does not implement the J2EE security container login method j_security_check for authentication.

    • External sites that do not support UTF8 encoding.

    • External applications that accept randomly generated hidden field values or cookies for successful login.

    Login URL

    Enter the login URL for the external application.

    To determine the URL, navigate to the application's login page and record the URL.

    For example: http://login.yahoo.com/config/login

    Note: A login URL is not required if the sole purpose of this external application is to store and supply user credentials on behalf of another service.

    HTML User ID Field Name

    Enter the name that identifies the "user name" or "user ID" field on the login form.

    Tip: To find this name, look at the HTML source for the login page.

    This property does not specify user credentials.

    Mandatory if the Authentication Method is GET or POST. Leave this field blank if the application uses BASIC authentication (see Authentication Method).

    HTML User Password Field Name

    Enter the name that identifies the "password" field on the login form.

    Tip: To find this name, look at the HTML source for the login page.

    Mandatory if the Authentication Method is GET or POST. Leave this field blank if the application uses BASIC authentication (see Authentication Method).

  7. Select the authentication method used by the external application.

    Table 18-3 External Application Connection - Authentication Details

    Field Description

    Authentication Method

    Select the form submission method used by the external application. Choose from one of the following:

    • GET: Presents a page request to a server, submitting the login credentials as part of the login URL. This authentication method may pose a security risk because the user name and password are exposed in the URL.

    • POST: Submits login credentials within the body of the form. This is the default.

    • BASIC: Submits login credentials to the server as an authentication header in the request. This authentication method may pose a security risk because the credentials can be intercepted easily and this scheme also provides no protection for the information passed back from the server. The assumption is that the connection between the client and server computers is secure and can be trusted.

    The Authentication Method specifies how message data is sent by the browser. You can find this value by viewing the HTML source for the external application's login form, for example, <form method="POST" action="https://login.yahoo.com/config/login?" AutoComplete="off">

  8. Specify additional login fields and details, if required.

    Table 18-4 External Application Connection - Additional Login Fields

    Field Description

    Additional Login Fields

    If your application requires additional login criteria, expand Additional Login Fields.

    For example, in addition to user name and password, the Lotus Notes application requires two additional fields - Host and MailFilename.

    Click Add to specify an additional field for the login form. For each new field, do the following:

    • Name – Enter the name that identifies the field on the HTML login form that may require user input to log in. This field is not applicable if the application uses basic authentication.

    • Value – Enter a default value for the field or leave blank for a user to specify. This field is not applicable if the application uses basic authentication.

    • Display to User – Select to display the field on the external application login screen. If the field is not displayed (unchecked), then a default Value must be specified.

    Click Delete to remove a login field.

  9. Optional: Specify shared and public user credentials, if required.

    Table 18-5 External Application Connection - Shared User and Public User Credentials

    Field Description

    Enable Shared Credentials

    Indicate whether this external application enables shared user credentials, and specify the credentials. Select Enable Shared Credentials, and then enter User Name and Password credentials for the shared user.

    When shared credentials are specified, every user accessing this external application through WebCenter Portal is authenticated using the user name and password defined here. WebCenter Portal users are not presented with a login form.

    Because WebCenter Portal users do not need to define personal credentials of their own, external applications with shared credentials are not listed in the external application's change password task flows such as My Accounts.

    Enable Public Credentials

    Indicate whether unauthenticated users (public users) may access this external application. Select Enable Public Credentials, and then enter User Name and Password credentials for the public user.

    When public credentials are specified, public users accessing this external application through WebCenter Portal’s public pages are logged in using the user name and password defined here. If public credentials are not specified, public users will see an authorization error indicating this external application is not accessible to public users.

  10. Click OK to register the application.

Registering External Applications Using WLST

Use the WLST command createExtAppConnection to create an external application connection. For command syntax and examples, see createExtAppConnection in WebCenter WLST Command Reference Reference.

Use the WLST command addExtAppCredential to add shared or public credentials for an existing external application connection. For more information, see addExtAppCredential in WebCenter WLST Command Reference Reference.

Use the WLST command addExtAppField to define additional login criteria for an existing external application connection. For more information, see addExtAppField in WebCenter WLST Command Reference Reference.

For information on how to run WLST commands, see Running Oracle WebLogic Scripting Tool (WLST) Commands.

Modifying External Application Connection Details

This section shows you how to modify the external application connection details by:

Modifying External Application Connection Using Fusion Middleware Control

To update external application connection details:

  1. Log in to Fusion Middleware Control and navigate to the home page for your WebCenter Portal application.
  2. From the WebCenter Portal menu, select Settings > Service Configuration.
  3. From the list of services on the WebCenter Portal Service Configuration page, select External Applications.
  4. Select the name of the external application you want to modify, and click Edit.
  5. Edit the connection details, as required. For detailed parameter information, see Table 18-2. Note that you cannot edit the name of the external application.
  6. Click OK to save your changes.

Modifying External Application Connection Using WLST

Use the WLST command setExtAppConnection to edit existing external application connection details. For command syntax and examples, see setExtAppConnection in WebCenter WLST Command Reference Reference.

Note:

To edit details relating to an additional login field, use setExtAppField. To edit existing shared or public credentials, use setExtAppCredential.

To delete an additional login field, use removeExtAppField. To delete shared or public credentials, use removeExtAppField.

For information on how to run WLST commands, see Running Oracle WebLogic Scripting Tool (WLST) Commands.

For information about modifying external applications in WebCenter Portal, see Editing External Application Connection Details in Using Portals in Oracle WebCenter Portal.

Deleting External Application Connections

Take care when deleting an external application connection as users in WebCenter Portal will no longer have access to that external application, and any tools or services dependent on the external application may not function correctly.

This section includes the following topics:

Deleting External Application Connections Using Fusion Middleware Control

To delete an external application connection:

  1. Log in to Fusion Middleware Control and navigate to the home page for your WebCenter Portal application:
  2. From the WebCenter Portal menu, select Settings > Service Configuration.
  3. From the list of services on the WebCenter Portal Service Configuration page, select External Applications.
  4. Select the name of the external application you want to remove, and click Delete.

Deleting External Application Connections Using WLST

Use the WLST command deleteConnection to remove an external application connection. For command syntax and examples, see deleteConnection in WebCenter WLST Command Reference Reference.

Note:

To delete an additional login field, use removeExtAppField. To delete shared or public credentials, use removeExtAppCredential.

For information on how to run WLST commands, see Running Oracle WebLogic Scripting Tool (WLST) Commands.

Managing External Applications at Runtime

An external application is any application that implements its own authentication process. Specifically, it is an application that does not take part in the WebCenter Portal application's single sign-on process. If your WebCenter Portal application interacts with an application that handles its own authentication, you can register an external application to allow for credential provisioning.

By default, users with the Administrator role have the AppConnectionManager role; and therefore, can configure and manage external applications through the WebCenter Portal Administration Console at runtime. For more information about AppConnectionManager role, see Default Application Roles.

This section includes the following topics:

Registering External Applications at Runtime

To register an external application at runtime:

  1. On the Settings page (see Accessing the Settings Pages in WebCenter Portal Administration), click Tools and Services.

    You can also enter the following URL in your browser to navigate directly to the Tools and Services pages:

    http://host:port/webcenter/portal/admin/settings/tools

    See Also:

    WebCenter Portal Pretty URLs in Building Portals with Oracle WebCenter Portal.

  2. Click External Applications.

  3. Click Register.

    Figure 18-2 WebCenter Portal Administration Console - External Applications

    Description of Figure 18-2 follows
    Description of "Figure 18-2 WebCenter Portal Administration Console - External Applications"
  4. Enter connection details for the external application.

    If you need help with one or more fields, refer to:

  5. Click Test to verify your connection details.

  6. Click OK to register the application.

Editing and Deleting External Applications at Runtime

To modify or delete external applications at runtime:

  1. On the Settings page (see Accessing the Settings Pages in WebCenter Portal Administration), click Tools and Services.

    You can also enter the following URL in your browser to navigate directly to the Tools and Services pages:

    http://host:port/webcenter/portal/admin/settings/tools

    See Also:

    WebCenter Portal Pretty URLs in Building Portals with Oracle WebCenter Portal.

  2. Click External Applications.

  3. Select the external application to edit or delete, then click one of the following:

    • Click Edit to update connection details.

    • Click Deregister to remove the external application.

      Take care when deleting an external application connection as users will no longer have access to that application, and any services dependent on the external application may not function correctly.