Service Endpoints

A service endpoint is a URL which serves as the access port for a web service. It may be a standard HTML-based web page, or it may be a *.jsp page.

As every service endpoint is a potential security issue, it may be appropriate to restrict access to some of those endpoints that you do not use. But be careful. Some endpoints, such as isAlive.jsp in the main /path/to/tomcat/webapps/openam directory, are essential and should not be blocked or changed.

Given the large number of available endpoints, this chapter has been organized primarily by subdirectory. Most of the directories were created when the OpenAM war archive was copied to the appropriate web application container, such as the webapps subdirectory.

OpenAM may expose several hundred service endpoints, listed in this chapter. Each endpoint shown is listed relative to the deployment URL. For example, if you have deployed OpenAM at https://openam.example.com:8443/openam/, the full URL to the isAlive.jsp endpoint is https://openam.example.com:8443/openam/isAlive.jsp.

OpenAM includes two types of endpoints. One is based on URL patterns, shown with the url-pattern tag. You can find these patterns in the web.xml file, in the /path/to/tomcat/webapps/openam/WEB-INF directory. The other type is based on *.jsp pages, starting in the main /path/to/tomcat/webapps/openam directory, and also in many associated subdirectories. If you copied or created a WAR archive to a name other than openam.war, as described in the installation guide, substitute for the second openam accordingly.

Some of these endpoints can be applied directly to a URL when you have connected to the OpenAM server; for example, if you have configured OpenAM on http://idp.example.com:8080/openam, you can log in and review debug options by navigating to http://idp.example.com:8080/openam/Debug.jsp.

Other endpoints can only be used when called by some option in the OpenAM console. For example, while the AgentAdd.jsp endpoint exists in the console/agentconfig subdirectory, you would get an error by navigating directly to a URL such as http://sp.example.com:8080/openam/console/agentconfig/AgentAdd.jsp. For that particular endpoint, you will have click through the options required to add an agent. (Realms > Realm Name > Agents > Agent > New)

In general, this chapter does not include dynamic endpoints, such as those that may include security tokens. The endpoints described in this chapter are based on files included in the installation of an OpenAM server. Several options are available for endpoints at risk. Recommendations from the noted security advisories include the following:

  • Filter requests to prevent or restrict access to vulnerable endpoints with a reverse proxy or equivalent hardware device. Such options can be configured to limit access by IP address or fully-qualified domain name.

  • Use a patch. If available, download links should be listed in the security advisory. The patch may be limited to one or more endpoint files.

  • Remove access from the configuration. If a problematic endpoint is configured in the web.xml file of the aforementioned WEB-INF subdirectory, you can remove the section that points to that endpoint.

  • Remove the endpoint file from the configuration. Some endpoint files, such as proxy.jsp or ssoadm.jsp, are not essential to the basic operation of OpenAM.

Of course, you can take additional steps to help secure your OpenAM deployment. For more information, see "Securing OpenAM" in the Administration Guide.

JSP Endpoints

The OpenAM WAR archive includes .jsp files in a number of different categories. Many are associated with the applicable subdirectory, such as console/realm. The following sections will examine each .jsp file, divided by subdirectories.

In some highlighted cases, the noted .jsp file appears in the code for one or more .java files. If you remove the noted .jsp file from the container, there is a risk that will break some functionality within OpenAM. In other cases, such as any files related to the GUI installation wizard, the applicable *.jsp file can be safely removed from a production system.

Main Directory JSP Endpoints

If you are working in Tomcat, you will find the endpoints in this subsection in the /path/to/tomcat/webapps/openam directory. For other web application containers, you may find the endpoints in a different openam subdirectory.

Debug.jsp

Supports debug logging by service. For more information, see "Debug Logging By Service" in the Administration Guide

encode.jsp

Enables access to a page that encodes text passwords. The algorithm is based on PBEWithMD5AndDES, password-based encryption (PBE) using the MD5 message-digest algorithm, configured with the data encryption standard (DES)

getServerInfo.jsp

Supports requests for server information. As getServerInfo.jsp is encoded in some .java files, you should retain getServerInfo.jsp in your deployment.

isAlive.jsp

Verifies the current status of the OpenAM service; the "Server is ALIVE:" message also verifies activity on OpenAM systems behind load balancers. This can be a useful tool in a production environment.

proxyidpfinder.jsp

Supports access to a remote identity provider, through the federation broker.

services.jsp

Lists active services within OpenAM. The details shown on this page can be used with the ssoadm command to create a second OpenAM server with matching services. Be aware, the amadmin administrative user is hard-coded into this file. If you change the identity of the administrative user to something other than amadmin, that user will not have access to services.jsp.

showServerConfig.jsp

Specifies configuration information for the system, including the URL, the OS, the Java VM, the configuration directory, and more.

ssoadm.jsp

Supports GUI-based access to the options associated with the ssoadm command. The ssoadm.jsp file is disabled by default. Instructions for enabling this feature are available in "OpenAM ssoadm.jsp" in the Administration Guide

validateWait.jsp

May be called by the validator.jsp or validatorMain.jsp files, to display progress in verifying the status of federation.

validator.jsp

Refers to the ValidateSAML2 function to identify the realm, IdP and SP for the federation.

validatorAuthFail.jsp

Starts an "Authentication Failed" message.

validatorFooter.jsp

Incorporates a "Back to Login" button in validatorMain.jsp.

validatorRpt.jsp

Opens a "Connectivity Test Results" window, specifying the status of a federation circle of trust. Tests relate to IdP authentication, SP authentication, account linking, single log out, single sign on, and account unlinking.

validatorStatus.jsp

Adds information to validator.jsp and validatorMain.jsp with federation status information as it relates to the currently configured circle of trust.

All of the validat*.jsp files near the end of this list relate to testing and verifying federation. It requires at least one identity provider (IDP) and one service provider (SP). At least one of these components must be configured remotely to set up a valid Circle of Trust (COT). If federation does not apply to your configuration, the validat*.jsp files are not essential to your configuration.

User Interface JSP Endpoints

The endpoints in this section can be found in several com_sun_web_ui/jsp/ subdirectories. These endpoints appear to relate to JavaHelp; per OPENAM-806, this functionality was removed from OpenAM, starting with version 9.5.3. Thus, the endpoints in this section, with one possible exception (Masthead.jsp in the com_sun_web_ui/jsp/version subdirectory) may no longer serve any purpose.

DateTimeWindow.jsp

The only endpoint in the com_sun_web_ui/jsp/datetime subdirectory. May be a legacy endpoint; it calls a DateTimeWindowViewBean class; the corresponding .java file does not exist in the current trunk.

Help.jsp

One of two endpoints in the com_sun_web_ui/jsp/help subdirectory. May be a legacy endpoint; it calls a HelpViewBean class; the corresponding .java file does not exist in the current trunk.

Masthead.jsp

One of two endpoints in the com_sun_web_ui/jsp/help, com_sun_web_ui/jsp/help2, and com_sun_web_ui/jsp/version subdirectories, in slightly different formats. May be a legacy endpoint; it calls a MastheadViewBean class; the Masthead.jsp file and the corresponding MastheadViewBean.java were last changed in 2004. (However, the Masthead.jsp file in the com_sun_web_ui/jsp/version subdirectory includes a VersionViewBean.java file that is used by the Version.jsp endpoint used in the console/base subdirectory.

ButtonNav.jsp

Specifies an endpoint in the com_sun_web_ui/jsp/help2 directory. Points to a ButtonNavViewBean class; the associated .java file no longer exists in the trunk.

Help2Ie.jsp

Specifies an endpoint in the com_sun_web_ui/jsp/help2 directory. Points to a Help2ViewBean class; the associated .java file no longer exists in the trunk.

Help2Nav4.jsp

Specifies an endpoint in the com_sun_web_ui/jsp/help2 directory. Points to a Help2ViewBean class; the associated .java file no longer exists in the trunk.

Help2Nav6up.jsp

Specifies an endpoint in the com_sun_web_ui/jsp/help2 directory. Points to a Help2ViewBean class; the associated .java file no longer exists in the trunk.

Navigator.jsp

Specifies an endpoint in the com_sun_web_ui/jsp/help2 directory. Points to a NavigatorViewBean class; the associated .java file no longer exists in the trunk.

AdvancedSort.jsp

Specifies an endpoint in the com_sun_web_ui/jsp/table directory.

Table.jsp

Specifies an endpoint in the com_sun_web_ui/jsp/table directory. Points to a TableViewBean class; the associated .java file no longer exists in the trunk.

WizardWindow.jsp

Points to an endpoint in the com_sun_web_ui/jsp/wizard subdirectory. Points to a WizardWindowViewBean class, which appears to be unused by any other .jsp file.

Default Authentication JSP Endpoints

Many of the .jsp files in this category can be modified to help you modify the messages that appear to users in the OpenAM console. Standard messages for most of these endpoints can be found in the amAuth.properties and amAuthUI.properties files. You will find the endpoints in this subsection in the config/auth/default subdirectory.

account_expired.jsp

Specifies an error page for account expiration. The message displayed to the user can be modified in the amAuthUI.properties file.

authException.jsp

Option to Exception.jsp; called if there is an existing resource bundle, as specified in AuthExceptionViewBean.java.

auth_error_template.jsp

Specifies an error page for authentication errors. The message displayed to the user can be modified in the amAuthUI.properties file.

disclaimer.jsp

Associated with the self-registration module, which can be configured in the OpenAM Console, under Realms > Realm Name > Authentication > Modules. The default disclaimer is associated with the disclaimer.notice parameter, defined in the amAuthUI.properties file.

disclaimerDeclined.jsp

Associated with the self-registration module, which can be configured in the OpenAM Console, under Realm > Realm Name > Authentication > Modules. The default disclaimer_denied message is associated with the disclaimer.declined parameter, defined in the amAuthUI.properties file.

Exception.jsp

Includes the following error message: "Authentication Service is not initialized." Cited by several other .java files in the code, so it should not be removed in a secure deployment..

invalidAuthlevel.jsp

Used to specify an issue with the authentication level. The default invalidauthlevel and contactadmin messages can be redefined in the amAuthUI.properties file.

invalid_domain.jsp

Displays a "No such Organization found" message when a domain is not defined in the OpenAM database. Refers to the nosuch.domain parameter in the amAuthUI.properties file.

login_denied.jsp

Defines the response of OpenAM to a user who enters an undefined profile. Uses the userhasnosuchprofile.org and contactadmin parameters in the amAuthUI.properties file.

login_failed_template.jsp

Provides a message in the event of a login failure. The message uses the auth.failed parameter in the amAuthUI.properties file.

Login.jsp

Specifies a regular authentication template. As noted in "Securing OpenAM Administration" in the Administration Guide, the Login.jsp file may be customized for different deployments.

Logout.jsp

The Logout.jsp file may also be customized for different deployments.

maxSessions.jsp

Specifies the message given to users when the number of sessions has hit the preconfigured limit. The default is 5000, defined in the OpenAM console under Configure > Server Defaults > Session. The message uses the session.max.limit parameter defined in the amAuthUI.properties file.

membership.jsp

Specifies information for the page associated with the self-registration module.

Message.jsp

Calls text messages related to the authentication process.

module_denied.jsp

Includes a message to a target user that he does not have access to a specified module. The message uses the authmodule.denied parameter defined in the amAuthUI.properties file.

module_template.jsp

Adds a page which can be used to help customize appropriate modules.

new_org.jsp

Includes a warning when a user is trying to access a different realm. The message uses the newOrg.agree parameter, as defined in the amAuthUI.properties file.

noConfig.jsp

Specifies the lack of a defined configuration module. The message uses the noconfig.found parameter, defined in the amAuthUI.properties file.

OAuthActivate.jsp

Shows a default template for entering an activation code. Used by OAuth.xml for password changes. As this file is not configured for OAuth2, the file is deprecated and may be removed from a future release.

OAuthPwd.jsp

Displays a password change screen, with an option for terms and conditions of service. As this file is not configured for OAuth2, it is deprecated and may be removed from a future release.

org_inactive.jsp

Transmits the message that the target organization is not active in the OpenAM database.

profileError.jsp

Specifies the message that is sent when there’s a failure in the use of the self-registration module. Associated with the profile.error parameter, defined in the amAuthUI.properties file.

Redirect.jsp

Notes a file used by other code to redirect users for events such as login failures.

register.jsp

Identifies the page with the self-registration template.

session_timeout.jsp

Adds a message to a user when a session has gone past its allocated login time. Uses the session.timeout parameter, defined in the amAuthUI.properties file.

userDenied.jsp

Associated with role-based authentication. Tells a user when the required role has not been configured for that user. The message is defined by the user.not.inrole parameter, which is defined in the amAuthUI.properties file.

user_inactive.jsp

Identifies a message sent to a user that is not currently active in the database. The message is defined by the usernot.active parameter, as shown in the amAuthUI.properties file.

Default Federation JSP Endpoints

Many of the files in this config/federation/default subdirectory use the com.sun.liberty.LibertyManager interface. In general, you will want to keep these files in a production deployment, to support adding to and deleting users from different Circles Of Trust (COT). Many of these files are customizable for different organizational interfaces. Interfaces in different languages may be configured in slightly different subdirectories, such as config/federation/default_fr.

cdclogin.jsp

Supports a non-blank page for cross-domain single sign-ons; associated with a Cross-Domain Controller (CDC) servlet.

CommonLogin.jsp

Supports links to login pages of trusted identity providers.

Error.jsp

Sets up an error message, using the com.sun.liberty.LibertyManager interface.

Federate.jsp

Supports a connection to providers that can be configured in a federation.

FederationDone.jsp

Specifies the status of a federation request; the default response is either "The user has cancelled account federation." or "Federation has been successfully completed with the remote provider."

Footer.jsp

Sets up code that you can use to include a custom footer on all pages.

Header.jsp

Sets up code that you can use to include a custom header on all pages; the default version is configured with the OpenAM logo.

ListOfCOTs.jsp

When a service provider (SP) belongs to more than one COT, this page prompts the user to select a preferred identity provider (IDP).

LogoutDone.jsp

Specifies success or failure during a logout operation. Where a user has an account on multiple providers, he may see the following message: "Unable to log the user out from one or more providers where the user may still have active sessions."

NameRegistration.jsp

Supports registration with a new remote provider. This endpoint is associated with NameRegistrationDone.jsp.

NameRegistrationDone.jsp

Displays different messages based on a registration attempt with a remote provider. The message varies depending on whether the request was successful, a failure, or cancelled.

Termination.jsp

Supports defederation from an existing remote provider; goes with TerminationDone.jsp.

TerminationDone.jsp

Displays different messages based on a defederation attempt with a remote provider. The message varies depending on whether the request was successful, a failure, or cancelled.

Console Agent Configuration JSP Endpoints

The JSP files in the console/agentconfig subdirectory relate to the configuration of Web Agents. To see what is done by each JSP file, log into the console as the administrator. Select Realms > Realm Name > Agents. Several of the options that appear corresponds to the JSP files in the target subdirectory.

Some of the endpoints include messages from relevant sections of the amConsole.properties file. The agents in this directory are part of the com.sun.identity.console.agentconfig package.

Several endpoints relate to Web Service Client (WSC) policy agents, which secure outgoing requests and validate incoming requests from Web Service Providers (WSP). For more information, see the chapter on "Configuring Policy Agent Profiles" in the Administration Guide. If you are not using agent functionality such as that related to the Security Token Service (STS), the related endpoints listed in this section may not be essential in a production deployment.

AgentAdd.jsp

Includes a newly created web agent for a specified realm. The AgentAdd page appears in the OpenAM console after an agent is added to a realm.

AgentConfigInherit.jsp

Allows an administrator to review default settings for the agent, as configured in the Inheritance Settings page. Inheritance assumes that agent is part of a previously configured group. To access Inheritance Settings, refer to the "Creating Agent Profiles" in the Administration Guide.

AgentDump.jsp

Displays information about the current configuration of an agent or an agent group, and how it might be exported.

AgentGroupAdd.jsp

Includes a newly created agent group for common web agents within a specified realm. The AgentGroupAdd page appears in the OpenAM console after an agent group is added to a realm.

AgentGroupMembers.jsp

Supports the display of agents that are members of a specified agent group.

Agents.jsp

Enables access to a form to specify a new agent to add. The same form is used for every category of new agents configured from the OpenAM console, when you navigate to Realms > Realm Name > Agents.

GenericAgentProfile.jsp

A template that the OpenAM console uses when it builds pages for editing agent properties.

Home.jsp

Per comments in the HomeViewBean, this file should forward requests for other agents.

Console Ajax JSP Endpoints

You can find console AJAX endpoints in the console/ajax subdirectory. The AJAX endpoints provide AJAX functionality triggered from other JSP endpoints.

AjaxProxy.jsp

Specifies an element used by endpoints triggered from the OpenAM console’s Common Tasks tab, including the ConfigureGoogleApps.jsp and ConfigureSalesForceApps.jsp endpoints.

FileUpload.jsp

Provides functionality used for file uploading. This JSP is used for uploading:

  • Federation metadata files

  • Scripts, such as those used with scripted authentication modules

    You can adjust the maximum file upload size for the uploader by setting the org.forgerock.openam.console.max.file.upload.size property. The property’s default value is 750K.

Console Authentication JSP Endpoints

You can find console authentication endpoints in the console/authentication subdirectory. The associated endpoints relate to authentication settings in a realm. To access these endpoints, navigate to Realms > Realm Name > Authentication.

AuthConfig.jsp

Part of the creation of a New Authentication Chain; associated with the Authentication Chaining section of the Authentication tab for a realm.

AuthProperties.jsp

Specifies properties that might be configured under the authentication tab for a specific or top-level realm.

CoreAttributes.jsp

Associated with the Core section of the Authentication tab of a specific or the top-level realm. Includes options for Realm Attributes, Account Lockout, and Post Authentication Processing.

EditAuthType.jsp

Supports changes to Module Instances, under the Authentication tab of a specific or the top-level realm.

NewAuthConfig.jsp

Associated with the creation of a New Authentication Chain, an option available from the Authentication Chaining section of the Authentication tab.

NewAuthInstance.jsp

Supports the implementation of a new authentication module, available from the Module Instances section of the Authentication tab.

ReorderAuthChains.jsp

Supports a change in sequence of authentication criteria; to access, select an existing Authentication Chaining service under the Authentication tab for a specified realm.

ScriptUploader.jsp

Supports uploading a script when configuring a scripted authentication module.

Base Console JSP Endpoints

The endpoints in this subdirectory (console/base) relate to options associated with the "home page" for the OpenAM GUI console; in essence, these are the options available when you log in as the administrative user (typically amadmin).

AMAdminFrame.jsp

Defaults to the opening page for the OpenAM console.

AMInvalidURL.jsp

Provides an "Invalid URL" error message.

AMLogin.jsp

Redirects users to the default login page; assumes no user is currently logged into OpenAM.

AMPost.jsp

Endpoint that either returns success of a post or an "Invalid or Missing Input" error.

AMUncaughtException.jsp

Default uncaught exception error message endpoint: "An error occurred while processing this request. Contact your administrator."

Authenticated.jsp

Displays a "You’re logged in" information message.

CloseWindow.jsp

Endpoint that closes existing windows.

Message.jsp

Specifies a template endpoint used for messages.

Version.jsp

Specifies current version information, copyright notice, and licensing.

Delegation Console JSP Endpoints

The two service endpoints under the console/delegation subdirectory relate to the privileges associated with configured realms.

Delegation.jsp

Associated with the privileges for a realm. The privileges can be assigned for different groups of users, as configured via Realms > Realm Name > Subjects > Group.

DelegationProperties.jsp

Supports changes in properties for group privileges, described in the Delegation.jsp endpoint. To get to these properties, select Realms > Realm Name > Privileges > Group Name.

Federation Console JSP Endpoints

The JSP files in this section relate to federation, specified in the console/federation subdirectory. Specifically, when you access the OpenAM GUI console and click the Federation tab, the variety of options that you select call the JSP files in this directory. References in each JSP file in that subdirectory are associated with the Federation tab.

Generally, the JSP files in this directory are essential if you want to add or modify federation partners in your Circles of Trust (COT), SAML v2.0 / ID-FF / WS-Federation entity providers, and SAML v1.x configured partners.

If you are not using the legacy elements of federation, such as Liberty ID-FF, WS-Federation, and SAML v1.x, you may be able to delete related service endpoints in a more secure deployment.

Many of the endpoints in this section are accessible from the OpenAM console, under the Federation tab. Some of the endpoints are accessible only after you have created an appropriate entity provider, such as SAML v2.0, ID-FF, or WS-Federation.

CreateCOT.jsp

When you create a Circle of Trust (COT) via Federation > New, you can access the COT Configuration window. You can then access all configured COTs.

CreateSAML2MetaData.jsp

Used when creating a new entity provider, configured with the SAML2 protocol.

FSAuthDomainsEditViewBean.jsp

Associated with an edit of a COT; to access, select a previously configured COT.

FSSAMLSelectTrustedPartnerType.jsp

Opened when you configure a new Trusted Partner under the SAML v1.x Configuration section.

FSSAMLService.jsp

Associated with FSSAMLServiceViewBean, which is used by a number of other JSP files in the console/federation subdirectory.

FSSAMLSetTrustedPartnerType.jsp

Associated with the FSSAMLSetTrustedPartnersEdit.jsp file; used when you select a configured SAML v1.x Configuration trusted partner.

FSSAMLSiteIDAdd.jsp

Supports the addition of a Site ID for a SAML-configured partner.

FSSAMLSiteIDEdit.jsp

Supports the modification of a Site ID for a SAML-configured partner.

FSSAMLTargetURLsAdd.jsp

Includes a new POST to a specified URL.

FSSAMLTargetURLsEdit.jsp

Supports editing of a POST to a specified URL.

FSSAMLTrustedPartnersAdd.jsp

Called when you create a new "trusted partner" in the SAML v1.x Configuration area of the Federation window.

FSSAMLTrustedPartnersEdit.jsp

Called when you edit an existing "trusted partner" in the SAML v1.x Configuration area of the Federation window.

Federation.jsp

Cited when you click New in the "Circle of Trust" section of the Federation window.

FileUploader.jsp

Called by the ImportEntity.jsp file, to support uploads of metadata files associated with a previously configured entity provider.

IDFFAffiliate.jsp

Specifies an IDFF affiliate in a COT.

IDFFGeneral.jsp

Includes general parameters associated with an IDFF affiliate in a COT. The corresponding IDFFGeneralViewBean parameter is cited only in this and the IDFFGeneralViewBean.java files.

IDFFIDP.jsp

Associated with the Identity Provider (IDP) for IDFF.

ISFFSP.jsp

Associated with the Service Provider (SP) for IDFF.

ImportEntity.jsp

Supports the import of pre-existing metadata files which define an entity provider. Allows you to import metadata from a URL to a desired Realm.

SAMLv2Affiliate.jsp

Enables a view of SAML version 2 affiliates.

SAMLv2AttrAuthority.jsp

Associated with an IDP acting as an attribute authority.

SAMLv2AttrQuery.jsp

Supports queries and saves of SAML2 attribute metadata.

SAMLv2AuthnAuthority.jsp

Enables communication with an IDP acting as an authentication authority.

SAMLv2General.jsp

Identifies general properties of a SAML version 2 affiliate.

SAMLv2IDPAdvanced.jsp

Supports the configuration of advanced properties for a SAML v2.0 IDP.

SAMLv2AssertionContent.jsp

Associated with the Assertion Content tab, accessible when you select Federation > Entity Providers > Provider Name.

SAMLv2AssertionProcessing.jsp

Associated with the Assertion Processing tab, accessible when you select Federation > Entity Providers > Provider Name.

SAMLv2IDPServices.jsp

Supports the configuration of IDP service properties for a SAML2 provider.

SAMLv2PDP.jsp

Enables the configuration of a SAML v2.0-based Policy Decision Point (PDP).

SAMLv2PEP.jsp

Enables the configuration of a SAML v2.0-based Policy Enforcement Point (PEP).

SAMLv2SPAdvanced.jsp

Supports the configuration of advanced properties for a SP. Accessible when you select Federation > Entity Providers > Provider Name > SP > Advanced.

SAMLv2SPAssertionContent.jsp

Associated with the Assertion Content tab; supports the configuration of such for SPs; It is accessible when you select Federation > Entity Providers > Provider Name > SP > Assertion Content.

SAMLv2SPAssertionProcessing.jsp

Associated with the Assertion Content tab; supports the configuration of assertion processing-related properties for SPs. It is accessible when you select Federation > Entity Providers > Provider Name > SP > Assertion Processing.

SAMLv2SPServices.jsp

Supports the configuration of services-related properties for an SP. It is accessible when you select Federation > Entity Providers > Provider Name > SP > Services.

WSFedGeneral.jsp

Associated with the configuration of a legacy WS-Federation entity provider.

WSFedIDP.jsp

Supports the configuration of an IDP under WS-Federation.

WSFedSP.jsp

Supports the configuration of an SP under WS-Federation.

IDM Console JSP Endpoints

This group of service endpoints are associated with an identity management (IDM) interface from OpenAM. You can find these endpoints in the console/idm subdirectory. You may not need all of the functionality provided by the endpoints in this section.

Some of the endpoints in this section include references to UM*.jsp endpoints, User Console JSP Endpoints located in the console/user subdirectory, and described later in this chapter.

EndUser.jsp

Accesses the information page for the currently logged in user.

Entities.jsp

Opens the list of currently configured users, available via Realms > Realm Name > Subjects.

EntityAdd.jsp

Used when adding a new user or group.

EntityDiscoveryDescriptionAdd.jsp

Associated with the Discovery Service. To access that service, select a non-administrative user and select the Services tab. The EntityDiscoveryDescriptionAdd.jsp file is used when selecting a new Security Mechanism ID as a Service Description as a new Discovery Resource Offering.

EntityDiscoveryDescriptionEdit.jsp

Associated with an edit of an existing Security Mechanism ID.

EntityEdit.jsp

Called when saving changes to an existing user.

EntityMembers.jsp

Lists the members of a configured group.

EntityMembersFilteredIdentity.jsp

Lists the members of a configured group based on some filter.

EntityMembership.jsp

Accessed when a regular user is made a member of a previously configured group.

EntityResourceOffering.jsp

Supports custom resource offering entries for a previously configured user. Also used when accessing the UMUserResourceOffering.jsp file.

EntityResourceOfferingAdd.jsp

Supports entries of new resource offerings for a previously configured user. Also used when accessing the UMUserResourceOfferingAdd.jsp file.

EntityResourceOfferingEdit.jsp

Supports edits of existing resource offerings for a previously configured user. Also used when accessing the UMUserResourceOfferingEdit.jsp file.

EntityServices.jsp

Supports a new service for a specific user. As of this writing, available services are: Dashboard, Discovery Service, Liberty Personal Profile Service, and Session.

Home.jsp

Opens a list of currently configured users.

ServicesAdd.jsp

Accessible after adding a new service for a currently configured user; associated with the EntityServices.jsp file.

ServicesEdit.jsp

Accessible for editing services associated with a currently configured user.

ServicesNoAttribute.jsp

Used if a configured organization has no available attributes.

ServicesSelect.jsp

Opened when adding a service for a specific user.

Console Realm JSP Endpoints

If you want to know how to configure services and data stores within a realm, you will want to understand the workings of these service endpoints. If you want to customize realms in production, you will want to keep these endpoints available on an OpenAM console. You can find these endpoints in the console/realm subdirectory.

HomePage.jsp

Associated with the main Access Control page in the legacy OpenAM console, which lists configured realms. If you call realm/HomePage.jsp directly, it cites messages associated with changes for a specific user, and functions more closely associated with JSP endpoints in the console/idm subdirectory.

IDRepo.jsp

Enables links with directory server data stores within a realm. To access, select Realms > Realm Name > Data Stores > New. You should see a variety of supported directory server data stores, such as Active Directory, OpenDJ, and Tivoli Directory Server.

IDRepoAdd.jsp

Appears when you add a data store; associated with the IDRepo.jsp service endpoint.

IDRepoEdit.jsp

Appears when you edit an existing data store; associated with the IDRepo.jsp service endpoint.

IDRepoSelectType.jsp

Includes a list of supported data stores, from Active Directory to OpenDJ; associated with the IDRepo.jsp service endpoint.

RMRealm.jsp

Supports the configuration of a new realm, or editing of an existing realm.

RMRealmAdd.jsp

Supports the addition of a new realm; associated with the `RMRealm.jsp`service endpoint.

RealmDiscoveryDescriptionAdd.jsp

Supports a new description for a realm; associated with the RealmResourceOffering.jsp service endpoint.

RealmDiscoveryDescriptionEdit.jsp

Supports an edited description; associated with the RealmResourceOffering.jsp service endpoint.

RealmProperties.jsp

Works with the pages that allow you to edit an existing realm.

RealmResourceOffering.jsp

Supports the configuration of a security mechanism to a new realm resource offering. Requires the configuration of the discovery service, and the configuration of a directory resource offering for the specified realm.

RealmResourceOfferingAdd.jsp

Supports the addition of a security mechanism to a new realm resource offering. Requires the configuration of the discovery service, and the configuration of a directory resource offering for the specified realm.

RealmResourceOfferingEdit.jsp

Supports the editing of a security mechanism for an existing realm resource offering. Requires the configuration of the discovery service, and the configuration of a directory resource offering for the specified realm.

Services.jsp

Supports the configuration of a service within a specified realm.

ServicesAdd.jsp

Supports the addition of a service to a specified realm; available services to add include Administration, Dashboard, Discovery, Globalization Settings, OAuth2 Provider, Password Reset, Session, and User.

ServicesCannotAssignService.jsp

If a desired service is not compatible with directory data available from an organization, it is rejected.

ServicesEdit.jsp

Supports the editing of an existing service; associated with the Services.jsp endpoint.

ServicesNoAttribute.jsp

Supports the editing of an existing service; called if the attribute cannot be found or changed.

ServicesSelect.jsp

Implements step 1 of the addition of a new service; associated with the Services.jsp endpoint.

Service Console JSP Endpoints

You can find the JSP files in this category in the console/service subdirectory. Most of the endpoints are accessible in the console, from various options associated with the Configuration menu. If you do not use some of the functionality described such as Liberty ID-FF or SOAP binding, you may be able to delete the associated endpoints.

G11NCharsetAliasAdd.jsp

Supports the configuration of a new character set alias. Accessible from the Configure > Global Services > Console > Globalization Settings > Charset Aliases submenu.

G11NCharsetAliasEdit.jsp

Supports the editing of an existing character set alias. Accessible from the Configure > Global Services > Console > Globalization Settings > Charset Aliases submenu.

G11NSupportedCharsetAdd.jsp

Supports the configuration of a new character set supported by a locale. Accessible from the Configure > Global Services > Console > Globalization Settings > Charsets Supported by Each Locale submenu.

G11NSupportedCharsetEdit.jsp

Supports the editing of an existing character set supported by a locale. Accessible from the Configure > Global Services > Console > Globalization Settings > Charsets Supported by Each Locale submenu.

MAPClientManager.jsp

Supports a list of client types. Associated with the Default Client Type option available via Configure > Global Services > System > Client Detection.

MAPCreateDevice.jsp

Supports creation of client devices.

MAPCreateDeviceTwo.jsp

Supports creation of client devices.

MAPDeviceProfile.jsp

Supports step 1 of creating a new client device.

MAPDuplicationDevice.jsp

Used with duplicate client devices.

SCConfig.jsp

Associated with basic Service Configuration data, and the other endpoints accessible from the Configuration menu.

SCConfigAuth.jsp

Supports the configuration of available authentication databases. You can get to this window by navigating to Configure > Authentication.

SCConfigConsole.jsp

Supports the configuration of administrative an globalization console properties. You can get to this window by navigating to Configure > Global Services > Console.

SCConfigGlobal.jsp

Supports the configuration of OpenAM global properties. You can get to this window by selecting Configure > Server Defaults.

SCConfigSystem.jsp

Supports the configuration of OpenAM system properties. You can get to this window by selecting Configure > Global Services > System.

SCPlatform30.jsp

Accesses current global attributes and cookie domain settings. To get to this window, select Configure > Global Services > System > Platform.

SCPolicy.jsp

Supports a view of the current policy configuration. To access this window, select Configure > Global Services > Policy Configuration.

SCPolicyResourceComparatorAdd.jsp

Supports the addition of a new resource comparator to the current policy configuration. To access the relevant window, select Configure > Global Services > Policy Configuration.

SCPolicyResourceComparatorEdit.jsp

Supports the editing of an existing resource comparator in the current policy configuration. To access the relevant window, select Configure > Global Services > Policy Configuration.

SCSAML2SOAPBinding.jsp

Enables a review of current SAML v2.0 SOAP binding request handlers. Associated with SOAP-based communications, using SAML v2.0 requests, between a client and a server. To access the relevant screen, select Configure > Global Services > SAMLv2 SOAP Binding.

SCSAML2SOAPBindingRequestHandlerListAdd.jsp

Allows you to add a new SAML v2.0 SOAP binding request handler. To access the relevant screen, select Configure > Global Services > SAMLv2 SOAP Binding.

SCSAML2SOAPBindingRequestHandlerListDup.jsp

Allows you to duplicate an existing SAML v2.0 SOAP binding request handler. To access the relevant screen, select Configure > Global Services > SAMLv2 SOAP Binding.

SCSAML2SOAPBindingRequestHandlerListEdit.jsp

Allows you to edit an existing SAML v2.0 SOAP binding request handler. To access the relevant screen, select Configure > Global Services > SAMLv2 SOAP Binding.

SCSOAPBinding.jsp

Enables a review of current SOAP binding request handlers. Associated with the Liberty Alliance Project Identity Federation Framework (Liberty ID-FF).

SCSOAPBindingRequestHandlerListAdd.jsp

Allows you to add a new SOAP binding request handler. Associated with the Liberty Alliance Project Identity Federation Framework (Liberty ID-FF).

SCSOAPBindingRequestHandlerListDup.jsp

Allows you to duplicate an existing SOAP binding request handler. Associated with the Liberty Alliance Project Identity Federation Framework (Liberty ID-FF).

SCSOAPBindingRequestHandlerListEdit.jsp

Allows you to edit an existing SOAP binding request handler. Associated with the Liberty Alliance Project Identity Federation Framework (Liberty ID-FF).

SecurityTokenService.jsp

Supports the configuration of tokens associated with the Security Token Service (STS). To access the associated screen, select Configure > Global Services > Security Token Service.

ServerAdd.jsp

Supports the addition of an OpenAM server to work behind a load balancer in support of Session Failover (SFO). Available from Deployment > Servers.

ServerClone.jsp

Supports the cloning of an existing OpenAM server to work behind a load balancer in support of session failover. Available from Deployment > Servers.

ServerConfigInherit.jsp

Supports the inheritance of the default configuration for servers, as it relates to SFO.

ServerConfigXMLAddServer.jsp

Enables the configuration fo a new server; relates to SFO.

ServerConfigXML.jsp

Supports the review of the XML settings of an existing server, as it relates to SFO.

ServerEditAdvanced.jsp

Supports the editing of advanced properties for default servers, in the configuration of servers for SFO. To access, navigate to Configure > Server Defaults > Advanced.

ServerEditCTS.jsp

Supports the editing of properties for the Core Token Service. To access, navigate to Configure > Server Defaults > CTS.

ServerEditGeneral.jsp

Supports the editing of general properties for default servers, such as the base directory, default locale, debug level, mail server for notifications, and more. Relates to the configuration of servers for SFO. To access, select Configure > Server Defaults.

ServerEditSDK.jsp

Supports the editing of SDK-related properties for default servers, associated with SFO. Supports editing of settings such as datastore notifications, event service connection retries, LDAP connections, Time To Live (TTL) for user entries, and more. To access, navigate to Configure > Server Defaults > SDK.

ServerEditSecurity.jsp

Supports the editing of security properties for default servers; associated with SFO. Includes default security settings such as encryption keys, cookie encoding, keystores, and certificate management. To access, navigate to Configure > Server Defaults > Security.

ServerEditSession.jsp

Supports the editing of session properties for default servers; associated with SFO. Note the Session Limit default specifies a maximum of 5000, well short of the 100,000 sessions that can be handled by a standard 3GB dual-core production system. To access, navigate to Configure > Server Defaults > Session.

ServerEditUMA.jsp

Supports the editing of UMA properties for default servers. To access, select Configure > Server Defaults > UMA.

ServerSite.jsp

Associated with the addition or editing of a load balancer that distributes requests to other OpenAM servers. To access, select Deployment > Servers.

SiteAdd.jsp

Enables the configuration of a load balancer to distribute requests to other existing OpenAM servers. To access, select Configure > Sites.

SiteEdit.jsp

Enables changes to a configured load balancer in how it distributes requests to other existing OpenAM servers. To access, select Configure > Sites.

SMDiscoveryBootstrapRefOffAdd.jsp

Includes new resource offerings for the discovery service, bootstrapped using a standard such as SAML2.

SMDiscoveryBootstrapRefOffEdit.jsp

Supports the editing of existing resource offerings for the discovery service, bootstrapped with a standard such as SAML2.

SMDiscoveryDescriptionAdd.jsp

Includes the addition of of new options for the discovery service.

SMDiscoveryDescriptionEdit.jsp

Supports the editing of existing options for the discovery service.

SMDiscoveryProviderResourceIdMapperAdd.jsp

Supports the mapping of a new resource ID for the discovery service.

SMDiscoveryProviderResourceIdMapperEdit.jsp

Supports the editing of an existing resource ID for the discovery service.

SMDiscoveryService.jsp

Supports a review and configuration of the Discovery Server, for global attributes, the ResourceID Mapper plug-in, and bootstrapping.

SMG11N.jsp

Allows you to configure globalization settings for OpenAM; accessible via Configure > Global Services > Console > Globalization Settings.

SubConfigAdd.jsp

Allows you to configure a secondary configuration instance; accessible via Configure > Global Services > Session.

SubConfigEdit.jsp

Allows you to edit an existing secondary configuration instance; accessible via Configure > Global Services > Session.

SubSchemaTypeSelect.jsp

Allows you to configure a schema associated with breadcrumbs.

Session Console JSP Endpoints

There are currently two service endpoints configured in the console/session subdirectory, related to login sessions.

SMProfile.jsp

Provides statistics on current stateful login sessions. Available from the Sessions tab from the main console.

SessionHAStatistics.jsp

Supports session high availability statistics collection.

Task Console JSP Endpoints

The service endpoints in the console/task subdirectory relate to the options available from the default start page when an administrator logs into the OpenAM console. If you do not use Google Apps or Salesforce, you may not need some of the functionality in the associated endpoints.

CompleteCreateHostedIDP.jsp

Provides information on what the administrator can do after configuring an Identity Provider (IDP). Options listed include registering a remote Service Provider (SP), creating a fedlet, configuring Google Apps, and configuring Salesforce CRM. Includes links to such functionality, which depend on the configuration of a Circle of Trust (CoT).

ConfigureGoogleApps.jsp

Supports the configuration of Google Apps for Single-sign on (SSO). Requires a CoT configured with an IDP.

ConfigureGoogleAppsComplete.jsp

Enables entries to configure the SP. Includes steps "To Enable Access to the Google Apps API."

ConfigureGoogleAppsWarning.jsp

Includes a default warning message related to the ConfigureGoogleApps.jsp endpoint. The message is: "Unable to configure because there are no circle of trust with Identity Provider."

ConfigureOAuth2.jsp

Supports the configuration of OAuth2 Authorization. For more information, see the the chapter on "Managing OAuth 2.0 Authorization" in the Administration Guide.

ConfigureSalesForceApps.jsp

Accessible when you select the Configure Salesforce CRM link shown in the main GUI console. Requires IDP and SP information for an appropriate CoT, where OpenAM is the IDP and Salesforce is configured as the SP.

ConfigureSalesForceAppsComplete.jsp

Supports the configuration of SSO with a Salesforce CRM account. Includes instructions on the settings to add to an applicable Salesforce account.

ConfigureSalesForceAppsFinishWarning.jsp

Includes a warning message related to the ConfigureSalesForceApps.jsp endpoint. The message is: "Unable to configure because there are no circle of trust with Identity Provider."

ConfigureSalesForceAppsWarning.jsp

Sets up a warning message related to a need for a circle of trust for the configuration.

ConfigureSocialAuthN.jsp

Accessible when you select one of the Configure Social Authentication options shown in the main GUI console.

CreateFedlet.jsp

A fedlet supports federation for a SP that does not already have its own federation solution. For more information, see "Building SAML v2.0 Service Providers With Fedlets" in the Developer’s Guide.

CreateFedletWarning.jsp

Sets up a warning message related to the prerequisite for a CoT with the IDP.

CreateHostedIDP.jsp

Supports the configuration of a SAML v2.0 IDP on the local instance of OpenAM.

CreateHostedSP.jsp

Supports the configuration of a SAML v2.0 SP on the local instance of OpenAM.

CreateRemoteIDP.jsp

Supports the configuration of a SAML v2.0 IDP on a remote system, within a configured CoT.

CreateRemoteSP.jsp

Supports the configuration of a SAML v2.0 SP on a remote system, within a configured CoT.

Home.jsp

Endpoint that redirects the client to the startup page for OpenAM.

ValidateSAML2Setup.jsp

Supports the test of a federation connection between an IDP and SP in a CoT.

User Console JSP Endpoints

Endpoints in the console/user subdirectory support account configuration tasks. Many of these endpoints are accessible by realm. From the home page screen, select Realms > Realm Name > Subjects > User Name. This should open up an Edit User screen

UMChangeUserPassword.jsp

This service endpoint is normally opened in a separate window to enable a user (or administrator) to change their login password. Accessible from the Edit User screen. All you need to do from the screen is click Edit next to the Password entry.

UMUserDiscoveryDescriptionAdd.jsp

Relates to the security mechanism identifier associated wih a user. To access from the screen for an individual user, select Services > Discovery Service > Add > scroll down to the Service Description box > New Description > select and Add a Security Mechanism ID. An example ID is urn:liberty:security:2003-08:ClientTLS:SAML, which relates to the former Liberty Alliance project. The ID also uses Transaction Layer Security (TLS) on the client with SAML assertions.

UMUserDiscoveryDescriptionEdit.jsp

Supports editing of the security mechanism identifier associated with a user. Closely related to the UMUserDiscoveryDescriptionAdd.jsp endpoint.

UMUserPasswordResetOptions.jsp

Allows you to "Force Change Password on Next Login". Accessible from the Edit User screen for a specific user, via the "Password Reset Options" entry near the bottom of the window.

UMUserResourceOffering.jsp

Accessible as an option to the Discovery Service for a specific user. To access from the Edit User screen for a specific user, select Services > Discovery Service > Add.

UMUserResourceOfferingAdd.jsp

Accessible as an option to the Discovery Service for a specific user. To access from the Edit User screen for a specific user, select Services > Discovery Service > Add.

UMUserResourceOfferingEdit.jsp

Accessible as an option to the Discovery Service for a specific user. To edit an existing resource offering, navigate to the Edit User screen for a specific user, select Services > Discovery Service > [some previously configured service].

Web Services Console JSP Endpoints

Web services include endpoints in the console/webservices subdirectory. You can use them to define legacy options for services, such as the Liberty Identity Federation Framework (ID-FF). As such, these endpoints may be less essential to your implementation of OpenAM. For more information, see the OpenAM Wiki on Web Services.

WSAuthNServices.jsp

Supports the configuration of various mechanism handlers for authentication, including CRAM-MD5, PLAIN, and SSOToken.

WSAuthNServicesHandlersAdd.jsp

Supports the addition of a new mechanism handler for authentication.

WSAuthNServicesHandlersEdit.jsp

Supports changes to an existing mechanism handler for authentication.

WSPPServiceDSAttributeMapListAdd.jsp

Enables the addition of a new LDAP attribute, with a name prefix.

WSPPServiceDSAttributeMapListEdit.jsp

Enables the editing of an existing LDAP attribute, with a name prefix.

WSPPServiceSupportedContainerAdd.jsp

Enables the creation of a new supported container for ID-FF.

WSPPServiceSupportedContainerEdit.jsp

Enables the editing of an existing container.

WSPersonalProfileService.jsp

Allows you to configure ID-FF for global attributes, supported containers, PPLDAP attributes and alternative security mechanisms.

OAuth and Related JSP Endpoints

Includes endpoints in the oauth2 and oauth2c subdirectories. Some of the service endpoints in the oauth subdirectory are based on OAuth 1.0, which is deprecated.

checkSession.jsp

Enables retrieval of session status change notifications for OpenID Connect 1.0. For more information, see the Session Status Change Notification section in the OpenID Connect Session Management 1.0 specification.

registerClient.jsp

Enables registration of an OAuth 2.0 client with the OpenAM OAuth 2.0 authorization service. For details, see "Registering OAuth 2.0 Clients With the Authorization Service" in the Administration Guide.

OAuthLogout.jsp

Used to log out the resource owner with the OAuth 2.0 provider. For more information, see "Registering OAuth 2.0 Clients With the Authorization Service" in the Administration Guide.

OAuthProxy.jsp

Endpoint used for redirection. For more information, see "Registering OAuth 2.0 Clients With the Authorization Service" in the Administration Guide.

Password JSP Endpoints

The endpoints in this section can be found in the password/ui subdirectory. Each of these endpoints use the PWResetViewBeanBase.java file, as a class to set up messages. You can view some of these endpoints by omitting the password. For example, to view the effect of the PWResetUserValidation.jsp endpoint on an OpenAM system using an URL of openam.example.org in a standard Tomcat container, navigate to http://openam.example.org/openam/ui/PWResetUserValidation.jsp. To set associated options, in the OpenAM console navigate to Configure > Global Services, and then click Password Reset, the legacy Password Reset Service.

PWResetBase.jsp

This simple endpoint includes a redirection of the ServiceURI, and specifies OpenAM as the ProductName. It is used by the other endpoints in the password/ui subdirectory.

PWResetInvalidURL.jsp

This endpoint is called with the PWResetInvalidURLViewBean class, when a module servlet gets an invalid URL.

PWResetQuestion.jsp

Starts the password reset process by prompting for the User ID. For more information on the process, see the method for the associated PWResetQuestionModel, available from the link:http://download.forgerock.org/downloads/openam/javadocs/internal/com/sun/identity/password/ui/model/PWResetQuestionModel.html [Interface PWResetQuestionModel specification page, window=\_blank].

PWResetSuccess.jsp

Specifies the endpoint that is called when an account password is successfully reset.

PWResetUncaughtException.jsp

Specifies a "Contact your administrator" message when there is an error in a related endpoint.

PWResetUserValidation.jsp

Opens a screen that prompts for a user ID (UID). If that UID is found in the database, configured with an accessible email address, on a system connected to a mail server, a reset link is sent to that address.

SAML2 JSP Endpoints

You can find the endpoints described in this section in the saml2/jsp subdirectory. As of this writing, some of these endpoints are not used in the current implementation of OpenAM. Active endpoints in this category are discussed in "Managing SAML v2.0 Federation" in the Administration Guide.

autologout.jsp

May be dispatched to perform a single logout.

autologoutwml.jsp

May be dispatched to perform a single logout in a WML environment.

autosubmitaccessrights.jsp

Auto-submitting form used to post an error message and relay state. Used by the Fedlet.

autosubmittingerror.jsp

Auto-submitting form used to post error messages.

default.jsp

May be used by other files to return a success or failure message. While the default.jsp name is common in the trunk, the jsp/default.jsp filename is used only by SPSingleLogout.java, which is not commonly used.

exportmetadata.jsp

Supports the export of XML-based metadata with other providers within a circle of trust (CoT). Currently used. For more information, see the chapter on "Managing SAML v2.0 Federation" in the Administration Guide.

idpMNIPOST.jsp

The MNI in several JSP files relate to ManageNameID, which sets up corresponding accounts on IDPs and SPs. This particular JSP file processes a request from an IDP through an HTTP redirect.

idpMNIRedirect.jsp

The MNI in several JSP files relate to ManageNameID, which sets up corresponding accounts on IDPs and SPs. This particular JSP file processes a request from an IDP through an HTTP redirect. It uses a metadata-based alias, an entity ID for the service provider, and the type of MNI request; examples include NewID and terminate.

idpMNIRequestInit.jsp

The MNI in several JSP files relate to ManageNameID, which sets up corresponding accounts on IDPs and SPs. As described in "Changing Federation of Persistently Linked Accounts" in the Administration Guide, it allows you to change federation of persistently linked accounts. The chapter also includes an example of this endpoint at work.

idpSSOFederate.jsp

Specifies an endpoint that takes authentication requests from an SP, with a SAMLRequest data, a metaAlias and a RelayState with information from the target URL.

idpSSOInit.jsp

Specifies an endpoint that starts SSO, either from cache, or by verifying metaAlias and SP identifier data. For more information, see the chapter on "Managing SAML v2.0 Federation" in the Administration Guide.

idpSingleLogoutInit.jsp

Starts a LogoutRequest from the identity provider. For more information, see the chapter on "Managing SAML v2.0 Federation" in the Administration Guide.

idpSingleLogoutPOST.jsp

Specifies an endpoint that receives logout requests from IDPs and receives logout responses from SPs. Also sends logout responses to SPs.

idpSingleLogoutRedirect.jsp

Takes the SAMLRequest and SAMLResponse messages for logouts from the SP. May also handle the RelayState directive.

SA_IDP.jsp

Used for SAML authentication for communication with identity providers (IDPs).

SA_SP.jsp

Used for SAML authentication for communication with service providers (SPs).

saeerror.jsp

Returns an error message related to Secure Attribute Exchange (SAE). Currently used only by the SA_IDP.jsp and SA_SP.jsp endpoints.

saml2error.jsp

Endpoint that may return one of many error codes, specified in the comments of the file.

saml2AuthAssertionConsumer.jsp

Used on a SP, to interpret information from an IDP. The request to the IDP is an AuthnRequest; the response from the IDP is read by this endpoint. SAML v2.0 single sign-on implemented using integrated mode uses this endpoint.

spAssertionConsumer.jsp

Used on a SP, to interpret information from an IDP. The request to the IDP is an AuthnRequest; the response from the IDP is read by this endpoint. SAML v2.0 single sign-on implemented using standalone mode uses this endpoint.

spMNIPOST.jsp

The MNI in several JSP files relate to ManageNameID, which sets up corresponding accounts on IDPs and SPs. This particular endpoint takes the associated request, using an HTTP Redirect, from a SP. Less commonly used.

spMNIRedirect.jsp

This particular endpoint handles the ManageNameIDRequest and ManageNameIDResponse messages with the help of HTTP Redirect. Less commonly used.

spMNIRequestInit.jsp

This particular endpoint supports changes to federation of persistently linked accounts, in a fashion similar to idpMNIRequestInit.jsp. For an example of this endpoint in work, see the chapter on "Managing SAML v2.0 Federation" in the Administration Guide.

spSSOInit.jsp

Supports SSO messages from the SP. For more information and an example of how this endpoint is used, see the chapter on "Managing SAML v2.0 Federation" in the Administration Guide.

spSingleLogoutInit.jsp

Supports SSO messages from the SP. For more information, see the chapter on "Managing SAML v2.0 Federation" in the Administration Guide.

spSingleLogoutPOST.jsp

Specifies an endpoint that receives logout requests from SPs and receives logout responses from IDPs. Also sends logout responses to IDPs. Converse endpoint to idpSingleLogoutPOST.jsp.

spSingleLogoutRedirect.jsp

Takes the SAMLRequest and SAMLResponse messages for logouts from the IDP. May also handle the RelayState directive. Converse endpoint to idpSingleLogoutRedirect.jsp.

WS Federation JSP Endpoints

The endpoints described in this section, in the wsfederation/jsp subdirectory, relate to Kantara Initiative standards that originated with the Liberty Alliance Project Identity Federation Framework.

logout.jsp

Shows a page after a successful logout.

multi.jsp

Used for multi-federation protocol configurations.

post.jsp

Sets up a form for single sign-on (SSO) responses sent from the IDP to the SP.

realmSelection.jsp

Default display if no realms are defined.

WEB-INF Endpoints

The OpenAM WAR archive includes the deployment descriptor file, /path/to/webapps/openam/WEB-INF/web.xml, which contains references to different URL patterns that OpenAM accesses as endpoints. These endpoints are based on what could be added to an OpenAM URL. Many of the endpoints that appear in the web.xml file are not directly related to the .jsp files described in other parts of this chapter.

Endpoints in the web.xml file are tagged with the url-pattern label. Each of the url-pattern entries shown in the web.xml file is associated with a filter-name or a servlet-name element. The definitions that follow use those elements to help identify the function of each endpoint.

If you want to disable one or more of these endpoints, you may be able to delete them from the web.xml file.

The web.xml file changes from release to release of OpenAM. If you do choose to remove endpoints from this file in order to disable access to parts of the OpenAM configuration, be sure to review the web.xml file when you upgrade to a new release of OpenAM. You will need to remove the restricted endpoints after each upgrade, and you should review new endpoints to determine whether you want to disable them.

The endpoints in this section are in the order found in the list of url-pattern entries shown in the web.xml file at the time of this writing.

/service/, /federation/, /realm/, /agentconfig/, /sts/, /delegation/, /idm/*, /Debug.jsp, /ssoadm.jsp

Filters for various endpoints. Associated with the JatoAuditFilter, which implements the org.forgerock.openam.audit.servlet.AuditAccessServletFilter filter class.

/*

Implements the AuditContextFilter for all endpoints. This filter implements the org.forgerock.openam.audit.context.AuditContextFilter filter class.

/*

Implements the amSetupFilter for all endpoints. This filter implements the com.sun.identity.setup.AMSetupFilter filter class.

/UI/*, /idm/EndUser

Implements the XUIFilter. This filter implements the org.forgerock.openam.xui.XUIFilter filter class.

/*

Implements the ResponseValidationFilter for all endpoints. This filter implements the org.forgerock.openam.validation.ResponseValidationFilter filter class.

/XUI/index.html

Implements the CacheForFiveMinutes. This filter implements the org.forgerock.openam.headers.SetHeadersFilter filter class.

/XUI/*

Implements the CacheForAMonth. This filter implements the org.forgerock.openam.headers.SetHeadersFilter filter class.

/ws/*

Implements the AuthNFilter and AuthZFilter. These filters implement the com.sun.identity.rest.AuthNFilter and com.sun.identity.rest.AuthZFilter filter classes.

/login

With the help of the LoginLogoutMapping.java file, this would forward to the /UI/Login.jsp endpoint.

/logout

With the help of the LoginLogoutMapping.java file, this would forward to the /UI/Logout.jsp endpoint.

/UI/*

Uses the LoginServlet.

/config/configurator

Uses the AMSetupServlet, which is the first class to get loaded by the Servlet * container (as noted in the associated .java file)

/setup/setSetupProgress

Used by the installation wizard to display the progress.

/upgrade/setUpgradeProgress

Used by the upgrade wizard to display progress.

/ui/*

Associated with the servlet named PWResetServlet, associated with password resets.

/gateway

Used with the servlet named GatewayServlet. Associated with the Gateway.java file, which takes an authentication module and forwards it to a login URL.

/GetHttpSession

The associated .java file is associated with session failover.

/sessionservice, /profileservice, /policyservice, /namingservice, /loggingservice, /authservice, /notificationservice

All of these endpoints are associated with OpenAM Security Advisory #201203. As suggested in the advisory, if you are using OpenAM version 9.5.4 or 10.0.0, you should be sure to apply the updates required to upgrade your systems to versions 9.5.5 or 10.0.1 (or higher).

/jaxrpc/, /identityservices/

These endpoints provide information on configured web services, including the port name, status, URL, and implementation class. Both endpoints show the same data. The IdentityServices servlet name points to the following description: "Web Service Endpoint - Identity Services".

/SMSServlet

Includes system configuration information when available, as documented in the comments to the AMSystemConfig.java file.

/identity/*

Possibly a legacy endpoint. While the associated IdentityServicesHandler servlet is identified as "REST Endpoint - Identity Services", it is only cited in the IdentityServicesHandler.java file.

/notification/*

The associated servlet named notificationservlet appears to be commonly used. When the URL is entered, the default output is 200, which is associated with a URL success message.

/entitlementmonitor/*

Used by the NetworkMonitor.java file, which is useful for the monitoring of OpenAM services.

/resources/*

Linked to an oauth servlet. The associated com.sun.identity.oauth.service.RestService class is rarely used.

/SPMniSoap/*

Used by a servlet named SPMniSoap; associated with a com.sun.identity.saml2.servlet.SPManageNameIDServiceSOAP servlet class. The associated .java file works with Manage Name ID communications using SOAP binding from the SP. As the former spMNISOAP.jsp file no longer exists in the trunk, this may be a legacy endpoint.

/SPMniPOST/*

Used by a servlet named spMNIPOST.jsp; previously defined in the SAML2 JSP Endpoints section.

/SPMniRedirect/*

Used by a servlet named spMNIRedirect.jsp, which is defined in the SAML2 JSP Endpoints section.

/SPMniInit/*

Used by a servlet named spMNIRequestInit.jsp, which is defined in the SAML2 JSP Endpoints section.

/SPECP/*

The associated SPECPService class receives and processes single logout (SLO) requests, using SOAP bindings on the SP.

/SPSloSoap/*

The associated SPSingleLogoutServiceSOAP class receives and processes single logout (SLO) requests, using SOAP bindings on the SP.

/SPSloPOST/*

Used by a servlet named spSingleLogoutPOST.jsp, which is defined in the SAML2 JSP Endpoints section.

/SPSloRedirect/*

Used by a servlet named spSingleLogoutRedirect.jsp, which is defined in the SAML2 JSP Endpoints section.

/SPSloInit/*

Used by a servlet named spSingleLogoutInit.jsp, which is defined in the SAML2 JSP Endpoints section.

/Consumer/*

Used by a servlet named spAssertionConsumer.jsp, which is defined in the SAML2 JSP Endpoints section.

/AuthConsumer/*

Used by a servlet named AuthConsumer.jsp, which is defined in the SAML2 JSP Endpoints section. Used with SAML v2.0 integrated mode deployments.

/SSOPOST/, /SSORedirect/

Used by a servlet named idpSSOFederate.jsp, which is defined in the SAML2 JSP Endpoints section.

/NIMSoap/*

Used by a servlet named NameIDMappingServiceSOAP.

/AIDReqUri/*

Used by a servlet named AssertionIDRequestServiceSoap.

/AIDReqSoap/*

Used by a servlet named AssertionIDRequestServiceSoap.

/AuthnQueryServiceSoap/*

Used by a servlet named AuthnQueryServiceSoap.

/AttributeServiceSoap/*

Used by a servlet named AttributeServiceSoap.

/SSOSoap/*

Used by a servlet named SSOSoap.

/IDPMniSoap/*

Used by a servlet named IDPMniSoap.

/IDPMniPOST/*

Used by a servlet named idpMNIPOST.jsp, which is defined in the SAML2 JSP Endpoints section.

/IDPMniRedirect/*

Used by a servlet named idpMNIRedirect.jsp, which is defined in the SAML2 JSP Endpoints section.

/IDPMniInit/*

Used by a servlet named idpMNIRequestInit.jsp, which is defined in the SAML2 JSP Endpoints section.

/IDPSloSoap/*

Used by a servlet named IDPSloSoap.

/IDPSloPOST/*

Used by a servlet named idpSingleLogoutPOST.jsp, which is defined in the SAML2 JSP Endpoints section.

/IDPSloRedirect/*

Used by a servlet named idpSingleLogoutRedirect.jsp, which is defined in the SAML2 JSP Endpoints section.

/IDPSloInit/*

Used by a servlet named idpSingleLogoutInit.jsp, which is defined in the SAML2 JSP Endpoints section.

/ArtifactResolver/*

Used by a servlet named IDPArtifactResolver.

/spssoinit

Used by a servlet named spSSOInit.jsp, which is defined in the SAML2 JSP Endpoints section.

/idpssoinit

Used by a servlet named idpSSOInit.jsp, which is defined in the SAML2 JSP Endpoints section.

/idpSSOFederate

Used by a servlet named idpSSOFederate.jsp, which is defined in the SAML2 JSP Endpoints section.

/idpsaehandler/*

Used by a servlet named SA_IDP.jsp, which is defined in the SAML2 JSP Endpoints section.

/spsaehandler/*

Used by a servlet named IDP_SP.jsp, which is defined in the SAML2 JSP Endpoints section.

/idpfinder

Used by a servlet named IDPFinderService; the associated FSIDPFinderService.java file can be used to find a preferred IDP with a common domain cookie.

/cdcservlet

Used by a servlet named CDCServlet. It is associated with a Cross Domain Controller Servlet, as described in the the chapter on "Configuring Cross-Domain Single Sign-On" in the Administration Guide.

/SAMLAwareServlet

Used by a servlet named SAMLAwareServlet. It is associated with communications between a client, an SP, and an IDP. The transfer service on the IDP is the SAML Aware Servlet, and is part of the client web browser artifact profile. It validates a session token from a request run through the IDP.

/SAMLPOSTProfileServlet

Used by a servlet named SAMLPOSTProfileServlet. It is associated with communications between a client, an SP, and an IDP. The transfer service on the IDP is the SAML Aware Servlet, and is part of the client web browser POST profile, which supplies assertion IDs, and returns the response to the client browser.

/SAMLSOAPReceiver

Used by a servlet named SAMLSOAPReceiver. The servlet extracts a SAML request from a message sent in SOAP format. That message can be a query for authorization, attributes, or authentication. It supports POST messages only.

/AssertionManagerServlet/*

Used by a servlet named AssertionManagerServlet. It supports dynamic substitution, using the host name, port number, and the deployment location.

/FSAssertionManagerServlet/*

Used by a servlet named FSAssertionManagerServlet. It provides remote interfaces for the assertion manager class.

/SecurityTokenManagerServlet/*

Used by a servlet named SecurityTokenManagerServlet. It supports dynamic substitution, using session parameters.

/preLogin

Used by a servlet named preLoginHandler. As there is no associated .java or .jsp file, it may be a legacy endpoint.

/postLogin/*

Used by a servlet named postLoginHandler. As there is no associated .java or .jsp file, it may be a legacy endpoint.

/federation

Used by a servlet named FederationServlet. Associated with the com.sun.identity.federation.login.FSFederationHandler class. The matching FSFederationHandler.java file processes requests to initiate a federation.

/consentHandler

Used by a servlet named consentHandler. Associated with the com.sun.identity.federation.login.FSConsentHandler class. The matching FSConsentHandler.java file processes redirect requests in an existing federation.

/ProcessLogout/*

Used by a servlet named ProcessLogout. Associated with the FSProcessLogoutServlet class. It is designed to handle single logout requests related to Kantara/Liberty ID-FF processes.

/ReturnLogout/*

Used by a servlet named ReturnLogout. Associated with the FSReturnLogoutServlet class. It is designed to handle single logout responses related to Kantara/Liberty ID-FF processes. (Note the subtle difference with the ProcessLogout endpoint which handles logout requests.)

/liberty-logout

Used by a servlet named LogoutServlet. Associated with the FSSingleLogoutServlet class. It is designed to start single logout requests related to Kantara/Liberty ID-FF processes.

/SingleSignOnService/*

Used by a servlet named SingleSignOnService. Associated with the FSSSOAndFedService class. Configured for SSO on the IDP.

/IntersiteTransferService

Used by a servlet named IntersiteTransferService. Associated with the FSIntersiteTransferService class. It is designed to send a AuthnRequest to an IDP.

/AssertionConsumerService/*

Used by a servlet named AssertionConsumerService. Associated with the FSAssertionConsumerService class. For more information, see the chapter on "Managing SAML v2.0 Federation" in the Administration Guide.

/SOAPReceiver/*

Used by a servlet named SOAPReceiver. Associated with the FSSOAPReceiver class. SOAP endpoint that handles federation and specifies a URI to the SP.

/federation-terminate

Used by a servlet named FederationTerminationServlet. Associated with the FSTerminationInitiationServlet.java file, used to initiate termination of a federation connection. The IDP will send the termination request to the associated URL.

/ProcessTermination/*

Used by a servlet named ProcessTermination. Associated with the FSTerminationRequestServlet class. The associated .java file is used when a request is received by a remote SP.

/ReturnTermination/*

Used by a servlet named ReturnTermination. Associated with the FSTerminationReturnServlet class. The associated .java file is used to define a URL used by an IP to send termination responses.

/InitiateRegistration/*

Used by a servlet named InitiateRegistration. Associated with the FSRegistrationInitiationServlet class. The associated .java file is used to handle the registration request from a remote IDP.

/ProcessRegistration/*

Used by a servlet named ProcessRegistration. Associated with the FSRegistrationRequestServlet class. Processes registration requests from remote SPs.

/ReturnRegistration/*

Used by a servlet named ReturnRegistration. Associated with the SRegistrationReturnServlet class. Defines a URL for IDPs to send registration responses.

/Liberty/*

Used by a servlet named WSSOAPReceiver. Associated with the SOAPReceiver class. Defines an endpoint that handles SOAP requests.

/WSPRedirectHandler/*

Used by a servlet named WSPRedirectHandler. Associated with the WSPRedirectHandlerServlet class. Used by the SP for user redirects.

/idffwriter, /saml2writer

Used by a servlet with a matching name (idffwriter, saml2writer). Associated with the CookieWriterServlet class. Used by the IDP to help the web container find app-specific info, such as Java classes or Java Archives (JARs).

/idffreader, /saml2reader

Used by a servlet with a matching name (idffreader, saml2reader). Associated with the CookieReaderServlet class. Used by the SP to help find the preferred IDP.

/multiprotocolrelay

Used by a servlet named MultiProtocolRelayServlet. Associated with the MultiProtocolRelayServlet class. Also used in federation as a RelayState to continue to the next protocol.

/WSFederationServlet/, /FederationMetadata/

Used by a servlet named WSFederationServlet. Associated with the WSFederationServlet class. Used as a service endpoint for WS-Federation.

/RealmSelection/*

Used by an endpoint named realmSelection.jsp, which was defined in the WS-Federation JSP Endpoints section.

/saml2query/*

Used by a servlet named saml2query. Associated with the QueryHandlerServlet class. The corresponding .java file receives and processes SAML2 queries.

/federationws/*

Used by a servlet named federationrest. Associated with the ServletContainer class. Does not appear to be included in any current .java or .jsp file, so it may be a legacy endpoint.

/oauth2/registerClient.jsp

Used by a servlet named OAuth2RegisterClient. For more information, see "Managing OAuth 2.0 Authorization" in the Administration Guide.

/oauth2/connect/checkSession

Used by a servlet named OAuth2ConnectCheckSession.

/.well-known/*

OpenAM’s well-known endpoints. See "Well-Known Endpoints".

/json/*

Used by a servlet named ForgeRockRest. Associated with the HttpServlet class. For more information, see "Using the REST API" in the Developer’s Guide. In addition, you can read more about associated REST endpoints in "REST API Endpoints".

/frrest/oauth2/*

Used by a servlet named OAuth2Rest. Associated with the RestTokenDispatcher class. For more information, see "RESTful OAuth 2.0, OpenID Connect 1.0 and UMA 1.0 Services" in the Developer’s Guide.

/rest-sts, /sts-publish, /sts-tokengen

Endpoints that expose OpenAM’s RESTful STS and SOAP STS functionality.

/xacml/*

Endpoints that expose OpenAM’s XACML functionality.

/oauth2/*

Used by a servlet named OAuth2RestletAdapter. Associated with the RestTokenDispatcher class. For more information, see the chapter on the chapter on "RESTful OAuth 2.0, OpenID Connect 1.0 and UMA 1.0 Services" in the Developer’s Guide.

/uma/*

Endpoints that expose OpenAM’s RESTful UMA functionality.

/authentication/*

Associated with the servlet named AuthServlet. The associated AuthServer.java file is the controller servlet for realm authentication pages. When the URL is entered prior to login, it defaults to the standard login page.

/base/*

Associated with the servlet named AMBaseServlet. While the associated AMBaseServlet.java file is rarely used, any URL entered prior to login defaults to the standard login page.

/service/*

Associated with the servlet named SCServlet.

/session/*

Associated with the servlet named SMServlet. While the associated SMServlet.java file is rarely used, any URL entered prior to login defaults to the standard login page.

/realm/*

Associated with the servlet named RMServlet.

/policy/*

Associated with the servlet named PMServlet. While the associated PMServlet.java file is rarely used, any URL entered prior to login defaults to the standard login page.

/idm/*

Associated with the servlet named IDMServlet. While the associated IDMServlet.java file is rarely used, any URL entered prior to login defaults to the standard login page.

/user/*

Associated with the servlet named UMServlet. While the associated UMServlet.java file is rarely used, any URL entered prior to login defaults to the standard login page.

/delegation/*

Associated with the servlet named DelegationServlet. While the associated DelegationServlet.java file is rarely used, any URL entered prior to login defaults to the standard login page.

/task/*

Associated with the servlet named TaskServle`t. While the associated `TaskServlet.java file is rarely used, any URL entered prior to login defaults to the standard login page.

/agentconfig/*

Associated with the servlet named AgentConfigurationServlet. The associated AgentConfigurationServlet class is called by the amAccessControl.xml file, which suggests that it can be configured from the console from Realms > Realm Name > Agents. It is rarely used otherwise. any URL entered prior to login defaults to the standard login page.

/ccversion/*

Associated with the servlet named click-servlet. There is no associated click-servlet.java or ClickServlet.java file.

/federation/*

Associated with the servlet named FSServlet. While the associated FSServlet.java file is rarely used, the URL prior to login defaults to the standard login page.

/webservices/*

Used by the WSServlet.java and SecurityTokenService.java files. If you are using web services and/or the Security Token Service (STS), you may want to keep this in place.

/sts/*

Associated with the STS. Be aware, this endpoint exposes basic service and port information for STS, Metadata Exchange (MEX), Simple Object Access Protocol 1.1 (SOAP11), and Web Service Definition Language (WSDL) endpoints without requiring authentication.

/audit/*

Associated with the servlet named AuditServlet.

REST API Endpoints

The OpenAM Developer’s Guide describes the OpenAM REST API endpoints in detail. For more information, see the following:

"Using the REST API" in the Developer’s Guide

How to use the OpenAM REST APIs for direct integration between web client applications and OpenAM, including REST API versioning, token encoding, authentication, logout, and logging.

"RESTful Authorization and Policy Management Services" in the Developer’s Guide

How to use the OpenAM REST APIs for authorization and policy management.

"RESTful OAuth 2.0, OpenID Connect 1.0 and UMA 1.0 Services" in the Developer’s Guide

How to use the OpenAM REST APIs for OAuth 2.0 and OpenID Connect 1.0.

"RESTful User Self-Service" in the Developer’s Guide

How to use the OpenAM REST APIs for user self-registration and forgotten password reset.

"RESTful Identity and Realm Management Services" in the Developer’s Guide

How to use the OpenAM REST APIs for managing OpenAM identities and realms.

"RESTful Script Management" in the Developer’s Guide

How to use the OpenAM REST APIs to manage OpenAM scripts.

"RESTful Troubleshooting Information Recording" in the Developer’s Guide

How to use the OpenAM REST APIs to record information that can help you troubleshoot OpenAM.

"Working With the Security Token Service" in the Developer’s Guide

How to use the OpenAM REST APIs to manage OpenAM’s Security Token Service, which lets you bridge identities across web and enterprise identity access management (IAM) systems through its token transformation process.

Well-Known Endpoints

The endpoints described in this section are Well-Known URIs supported by OpenAM.

/.well-known/openid-configuration

Exposes OpenID Provider configuration by HTTP GET as specified by OpenID Connect Discovery 1.0. No query string parameters are required.

/uma/.well-known/uma-configuration

Exposes User-Managed Access (UMA) configuration by HTTP GET as specified by UMA Profile of OAuth 2.0. No query string parameters are required.

For an example, see Discovering User-Managed Access Configuration in the Developer’s Guide.

/.well-known/webfinger

Allows a client to retrieve the provider URL for an end user by HTTP GET as specified by OpenID Connect Discovery 1.0.

For an example, see "Configuring OpenAM For OpenID Connect Discovery" in the Administration Guide.