Sun Java logo     Previous      Contents      Index      Next     

Sun logo
Sun[TM] Identity Manager Service Provider Edition 8.0 Deployment 

Chapter 6
Identity Manager Service Provider User Interface

The bundled sample end-user pages demonstrate the features of Service Provider by providing examples for registration and self-service typical in extranet service provider environments. Since the samples have been developed with extensibility and customization in mind, typical tasks such as changing the look and feel, modifying navigation rules between pages, or displaying locale-specific messages are straightforward to perform.

In addition to auditing self-service and registration events, notification to the affected user can be sent using e-mail templates. Examples of using account ID and password policies as well as account lockout are also provided. Developers can also implement Identity Manager forms. The modular authentication service implemented as a servlet filter can be extended or replaced if necessary. This allows integration with access management systems like Sun Java System Access Manager.


Initial Configuration for the Sample User Pages

To demonstrate the features of the sample user pages, you need to execute the following configuration steps after the initial setup and configuration of Identity Manager has been completed:

  1. Setup the sample Service Provider resource.
  2. Setup Service Provider authentication policy.
  3. Configure mail notification settings.
  4. Review the sample users.

  5. Note

    Perform all initial configuration from the Identity Manager Administrator Interface. Refer to Identity Manager Administration for detailed information about configuring this product.


Sample Service Provider Resource

The Identity Manager installation process creates a sample LDAP resource named Service Provider End-User Directory. The schema map defines all the account attributes required for the user pages.

However, you must update the Resource Parameters to specify the host name, user DN, password, and other parameters required to connect to an LDAP directory server. This resource can be used as both configuration and end-user resource for Service Provider.

The resource is defined in the $WSHOME/sample/speEndUserResource.xml file.

Sample Service Provider Policy

The installation process also creates a policy named Service Provider Policy This policy uses the default Identity Manager account and password policies but provides the following customized secondary authentication policy options:

The Service Provider Policy is defined in the $WSHOME/sample/spePolicy.xml file.

Mail Notification Settings

By default, most of the sample pages are configured to send an email upon completion of the task demonstrated on the page. If you want to turn notification off, then edit the notification section of the SPEUserPages configuration object. The configuration allows to enable/disable email notification for every page individually. See Configuring the Filter for more details.

Make sure that you configure the SMTP server. To do this, click Configure, then Servers and navigate to the Email Template tab for the SMTP server.

Sample Users

The SPE Sample Users configuration object provides several sample users. These users are required for the registration pages to function. The sample pages are set up so that a user registering must verify his or her relationship with the provider.

The sample registration pages work out of the box with the provided sample users. The validate page requires the email, firstName and lastName attributes to match before the user can advance to the validation page. Use the debug pages to view the attributes of these sample users.


Sample User Pages Overview

This section describes each sample user page provided with Service Provider. The features, such as page processor class and view handler, are discussed in Chapter 7, "Implementing Custom User Pages".

Login Page

The login page is the entry into the Service Provider User Interface. The password is validated against the password in the LDAP directory. An error is displayed if the user cannot be found in the directory or if the password is invalid.

Authentication occurs through the com.sun.idm.idmx.web.AuthFilter servlet filter. To change the filter or its initialization parameters, modify the $WSHOME/WEB-INF/web.xml file. See Configuring the Filter for more details.

If the Service Provider Account Policy has been configured to lock out an account when the user does not login successfully after a specified number of attempts, the user is redirected to another page that states the account is locked. In addition, Service Provider sends the user an email that states the account is locked.

The following table summarizes the structure of this page.

Feature

Name

Page Processor Class

LoginForm

View Handler

IDMXNoopViewer

Forms

Service Provider End-User Login

Email template

Service Provider End-User Profile Locked

Configuration object attributes

Not applicable

Audit event

Not applicable

Registration Page

The Login page provides a link to a registration page that allows prospective users to enroll for the service. The default registration pages implement the following logic

The following table summarizes the structure of this page.

Feature

Name

Page Processor Class

EnrollmentForm

View Handler

IDMXUser

Forms

  • Service Provider Enrollment Main Form
  • Service Provider Enrollment Validation Form
  • Service Provider Enrollment Form
  • Service Provider End-User Forms Library

Email template

Service Provider End-User Registration Template

Configuration object attributes

  • enrollment.validation.enabled
  • enrollment.privacypolicy
  • notification.registration

Audit event

Create

Forgot Username Page

A user accesses the Forgot Username page to retrieve his or her login ID. The user must supply the telephone number stored in the telephoneNumber attribute on the directory and a valid email address. The login ID will be sent to the specified email address.

The following table summarizes the structure of this page.

Feature

Name

Page Processor Class

ForgotUsernameForm

View Handler

IDMXLookupUsernameViewer

Forms

Service Provider End-User Forgot Username

Email template

Service Provider End-User Username Recovery

Configuration object attributes

  • lookup-attributes.name
  • lookup-attributes.title
  • lookup-attributes.required
  • notification.recovery

Audit event

usernameRecovery

Failure occurs if an account cannot be found with the specified telephone number and email address, or if multiple accounts are found with the given information.

The form can also use the "auditEventType" form property to instruct the viewer about which type of audit event to log.

Forgot Password Page

A user selects the Forgot password? link on the login page to display a page similar to the Forgot Username page. The user must first supply the telephone number stored in the telephoneNumber attribute on the directory and a valid email address. Next, the user is prompted to provide answers to authentication questions.

If the user has not previously answered their authentication questions or if authentication questions are not configured, an error is displayed. If the correct answers are given to the authentication questions, either a password is generated and emailed to the user, or the user is redirected to a page allowing them to reset their password. The password attribute in the SPEUserPages configuration object determines which action the system takes.

If configured in the Service Provider Account Policy, the account can be locked after a specified number of failed attempts to answer challenge questions.

The following table summarizes the structure of this page.

Feature

Name

Page Processor Classes

  • ForgotPasswordForm
  • UserQuestionForm

View Handlers

  • IDMXLookupUsernameViewer
  • IDMXUserQuestionViewer

Forms

  • Service Provider End-User Forgot Password
  • Service Provider End-User Reset Password

Email template

Service Provider End-User Reset Password

Configuration object attributes

  • lookup-attributes.name
  • lookup-attributes.title
  • lookup-attributes.required
  • notification.passwordreset
  • password.reset-mode

Audit event

challengeResponse (for success and failure)

The form can also use the "auditEventType" form property to instruct the viewer about which type of audit event to log.

Change Password Page

Clicking the My Profile tab in the navigation bar takes the user to a form that allows the user to change his LDAP directory password. The user is prompted to enter his current password, the value of the new password, and a confirmation of the new password.

If the current password is valid, the new password matches its confirmation and also passes the password policy defined for the LDAP resource, then the user's password is modified to the new value. A notification email message is sent to the user's notification address, and an audit event indicating that the user has been updated is generated.

If any of the validations fail, error messages are displayed so the user can correct the form entry and resubmit.

The following table summarizes the structure of this page.

Feature

Name

Page Processor Class

ChangePasswordForm

View Handler

IDMXUser

Forms

Service Provider End-User Change Password

Email template

Service Provider End-User Change Password

Configuration object attributes

notification.passwordchange

Audit event

Update

Change Username Page

This page allows the user to change his or her user name in Service Provider. The provided form makes the following checks on the new user name:

The following table summarizes the structure of this page.

Feature

Name

Page Processor Class

ChangeUserIdForm

View Handler

IDMXUser

Forms

Service Provider End-User Change UserId

Email template

Service Provider End-User Change User Id

Configuration object attributes

notification.useridchange

Audit event

Update

Change Notifications Page

A user's notifications address is the email address defined in the LDAP directory. The form associated with this action allows the user to change the email address where she receives notifications.

The only way to truly validate an email address is to try to send a message to it and verify that it was correctly received. This is usually impractical in a form, so the best we can do is usually to verify that the suggested address has a valid format. In this case, the address is valid if it contains an “@” character. If the new address is not valid, an error is displayed in the form allowing the user to correct the address and resubmit.

If the new address is valid, the user's email address is changed and an update user audit event is generated. In addition, an email message is sent to the old address indicating it will no longer be used for notifications and another message is sent to the new address indicating it will be used for future notification messages.

The following table summarizes the structure of this page.

Feature

Name

Page Processor Class

ChangeUserIdForm

View Handler

IDMXUser

Forms

Service Provider End-User Change Notifications

Email templates

  • Service Provider End-User Change Notifications
  • Service Provider End-User Change Notifications Old Address

Configuration object attributes

notification.emailchange

Audit event

Update

Change Challenge Question Answers Page

The Change Challenge Question Answers page allows the user to edit the answers to challenge questions that were specified during enrollment.

An error message is returned if the answers do not meet requirements of the Answer Quality policy.

The following table summarizes the structure of this page.

Feature

Name

Page Processor Class

ChangeNotificationsForm

View Handler

IDMXUser

Form

Service Provider End-User Change Notifications

Email template

Service Provider End-User Update Authentication Answers

Configuration object attributes

notification.questionchange

Audit event

updateAuthenticationAnswers

Logout Page

Clicking the Logout button in the masthead sends the user to an action called /spe/user/LogoutSubmit.do. The class associated with this action is com.sun.idm.idmx.web.LogoutAction. This class invalidates the user's HttpSession. The “success” forward defined for this action takes the user to the login page.



Previous      Contents      Index      Next     


Part No: 820-2960-10.   Copyright 2008 Sun Microsystems, Inc. All rights reserved.