This tutorial is part of the Identity Manager track within the Identity Suite Essentials program.
Description
This tutorial covers:
- Loading users from an authoritative feed. The data is loaded via a flat file which represents the feed from a HR system.
- Delegated Administration in its simplest form is shown.
- Different event types are shown: create, update and delete user and its accounts.
- Demonstration of task results and simple Audit Log use
Top
Learning Objectives
After completing this tutorial, the following topics should be understood.
- The configuration of a flat file resource adapter
- Specifying a synchronization policy
- Extended the user attributes
- Defining a form to handle the loading of user data an performing the assignments of the attribute values
- Defining and the use of User Member Rules
- Defining and the use of proxy users
- The use of Capabilities
- The use of Roles
Top
Prerequisites
The following items must be completed before starting this tutorial.
Top
Setup
The following steps need to performed to enable the demonstration.
Section 1: Extending the user attributes
By default the IdM User object may contain the following attributes: name (q,s), firstname, fullname, lastname, idmManager, email. The following steps show how to extend the schema so that the IdM User contains additionally the attributes: organization, division, employeeId, telephone, jobTitle, startDate and endDate.
- Access the Admin Interface http://localhost:8080/idm and log in as: configurator / configurator
- Replace home/index.jsp in the URL with debug and hit enter
|
|
- Select Configuration in the drop down list just beside the List Objects button
- Press the List Objects button
|
|
- Scroll down to the IDM Schema Configuration
- Click the Edit link
|
|
- Scroll down in the text area to
- Enter the attribute configuration (see the end of the section for a copy paste selection)
|
|
- Scroll further down to
- Enter the object class attribute definition (see the end of the section for a copy paste selection)
|
|
| Attribute Configuration: |
<IDMAttributeConfiguration name='department' syntax='STRING'/>
<IDMAttributeConfiguration name='division' syntax='STRING'/>
<IDMAttributeConfiguration name='employeeId' syntax='STRING'/>
<IDMAttributeConfiguration name='telephone' syntax='STRING'/>
<IDMAttributeConfiguration name='jobTitle' syntax='STRING'/>
<IDMAttributeConfiguration name='startDate' syntax='STRING'/>
<IDMAttributeConfiguration name='endDate' syntax='STRING'/>
<IDMAttributeConfiguration name='userType' syntax='STRING'/> |
| Object Class Attribute Configuration: |
<IDMObjectClassAttributeConfiguration name='organization' queryable='true'/>
<IDMObjectClassAttributeConfiguration name='department' queryable='true'/>
<IDMObjectClassAttributeConfiguration name='employeeId' queryable='true'/>
<IDMObjectClassAttributeConfiguration name='telephone'/>
<IDMObjectClassAttributeConfiguration name='jobTitle'/>
<IDMObjectClassAttributeConfiguration name='startDate' queryable='true'/>
<IDMObjectClassAttributeConfiguration name='endDate' queryable='true'/>
<IDMObjectClassAttributeConfiguration name='userType' queryable='true'/> |
Top
Section 2: Creating additional "simulated" Contractor Role
- Access the Admin Interface http://localhost:8080/idm and log in as: configurator / configurator
- Go to the Roles tab and there to
- The List Roles sub-tab and
- Click New button
|
|
- In the Identity sub-tab enter Contractor as Name and
- Enter Just to show delegated administration as Description and
- Click Save
|
|
- On the result screen just click Ok
|
|
Top
Section 3: Creating new Organizations for managed identities
- Access the Admin Interface http://localhost:8080/idm and log in as: configurator / configurator
- Go to the Accounts tab and there to
- The List Accounts sub-tab and
|
|
- If the People is not already present (it is added automatically with the Netbeans project configuration from module1) Select New Organization in the New Actions drop down list
- On the edit screen just insert People in the name field
- Leave the other fields as they are
- The click Save and
- On the main List Accounts screen click Reset View
|
 |
| |
|
- If the All Users is not already present under People (it is added automatically with the Netbeans project configuration from module1) Add a new organization All Users below People. For this select the box to the left of the People organization
- Then select New Organization from the --- New Actions --- drop down list (refer to the right)
- Enter All in the name field, leave all others fields as they are and click Save
- Repeat this for Employee and Contractor
|
|
- Finally the main List Accounts screen looks as follows.
|
|
Top
Section 4: Creating new Organization and System User Account
- If the System Accounts is not already present under People (it is added automatically with the Netbeans project configuration from module1) Access the Admin Interface http://localhost:8080/idm and log in as: configurator / configurator
- Go to the Accounts tab and there to
- The List Accounts sub-tab and
- Select New Organization in the --- New Actions --- drop down list
|
|
- On the edit screen just insert System Accounts in the name field
- Leave the other fields as they are
- The click Save
- The org structures looks as follows now
|
|
- Now add a new user below System Accounts". For this select the box to the left of the *System Accounts organization
- Then select New User from the --- New Actions --- drop down list
|
|
- In the Identity tab enter HR Feed Proxy for Account ID
- HR Feed for First Name
- Proxy for Last Name
- password for Password and Confirm Password
|
|
- In the Security tab assign User Account Administrator for Capabilities
- Top for Controlled Organizations
- Empty Form for User Form and then
- Click Save
|
|
| |
|
- Now there appears a result screen (see right), click Ok
|
|
- Finally the List Accounts main screen should look as follows
|
|
Top
Section 5: Creating a FF Resource Adapter for HR feed
NOTE: This step was performed in module 2. Verify that the Flat File ActiveSync is configured as a Managed Resource.
- Access the Admin Interface http://localhost:8080/idm and log in as: configurator / configurator
- Go to the Resources tab and there to
- The Configure Types sub-tab
- Select Flat File ActiveSync and
- Click the Save button
|
|
- Next, change to the List Resources sub-tab and
- Select New Resource in the * Resource Type Actions*
|
|
- On the following screen select Flat File Active Sync
- Press *New" button (see image to the right)
- On the succeeding screen just press Next (nothing to select there)
|
|
- First screen: Fill in the value as shown in the image to the right
- Replace *<BASE> *with the location of your feed files. This is in the Netbeans project under custom/WEB-INF/config/ISE/module3/users/users-1.csv In the Virtual Box image the feed files are under /var/tmp
- You can test the connection by pressing Test Configuration. If every thing is ok a green text "Test connection succeeded for resource(s):
HR Feed" shows at the top
- If there is something wrong a message in red similar to the following one will show up: "Test connection failed for resource(s):
HR Feed: Parser (com.waveset.util.ConfigurableDelimitedFileParser) Error ==> java.io.FileNotFoundException: <BASE>\idmResources\HRfeed\users.csv (The filename, directory name, or volume label syntax is incorrect) "
- Then click Next
|
|
- Second screen: Select the tick box in front of the "accountId" line
- Click Remove Attribute
- Then there is no Schema map entry present (is not necessary if the left and right hand side of the map would be the same)
|
|
| |
|
- Third Screen: Nothing to enter
|
|
- Enter the name of the Resource Adapter HR Feed at the top
- Enter accountId in the second field
- Leave the remaining fields as they are
|
|
| |
|
- Press the Save button and the Resource overview screen looks like:
|
|
Top
Section 6: Define Synchronization Policy
- Access the Admin Interface http://localhost:8080/idm and log in as: configurator / configurator
- Go to the Resources tab and there to
- The List Resources sub-tab
- Open FlatFileActiveSync folder and
- Select the box to the left of HR Feed
- Select Edit Synchronization Policy
|
|
- For Repeat Every set "30 Seconds"
- For Unique Key for Diff set UNIQUE_ID
- For Proxy Administrator set HR Feed Proxy
- For Input Form set Custom HR Feed Form FF
- For Correlation Rule (optional) set Custom UNIQUE_ID Matches Name
- For Log File Path set <BASE>/ (Replace BASE with /var/tmp or preferred log file locaiton)
- For Maximum Log File Size set 4096
- For Log Level set 4
- Then press Save
|
|
| |
|
Top
Section 7: Extend Contractor and Employee organization with user member rule
- Access the Admin Interface http://localhost:8080/idm and log in as: configurator / configurator
- Go to the Accounts tab and there to
- The List Accounts sub-tab
- Click on Contractor folder/link
|
|
- On the Edit Form scroll down to User Members Rule and select Custom Contractor User Member Rule
- Select 1 Minutes for Cache Timeout
|
|
- Repeat this procedure for the *Employee" organization
- Select Custom Employee User Member Rule as the User Member Rule
|
Top
Demonstration
After completing the setup above, the following steps should be performed to complete this tutorial.
User Case 1: Loading of the first user
- Open a terminal and go to <Base>/idmResources/HRfeed
- take a look at the files user-1.csv vi user-1.csv (This file contains only one user)
- copy user-1.csv to user.csv cp user-1.csv user.csv
|
- Access the Admin Interface http://localhost:8080/idm and log in as: configurator / configurator
- Go to the Resources tab and there to
- The List Resources sub-tab
- Open the FlatFileActiveSync folder and select HR Feed
- Select Start for Identity Manager in the --- Resource Actions ---
|
|
- The List Resources page looks as follows
- The time of the next run/poll is shown
- Clicking on Resources tab refreshes the display of the time for the next run
|
|
- Go to the Server Tasks tab and there to
- The All Tasks sub-tab
- The activity ov creating the user jbaker can be found
- It is also shown that the task was executed as the user HR Feed Proxy and NOT configurator as which the ActiveSync process was started
|
|
- Now click on the Creating jbaker link
- The detailed overview appears with information about
- The task execution (Task Summary) and
- Detailed information date what was set
- The Audit Log (available under the Reports tab) contains similar information
|
|
- Go to the Accounts tab and there to
- The List Accounts sub-tab
- The user jbaker is shown
- In the organisation Top:People:All where it resides "physically
- In the organisation Top:People:Employee where it appears because of the user member rule for Employees and the user configurator controls this organization too.
|
|
- Click on the green jbaker and the edit user form appears
|
|
- Click on the Attributes tab and the attributes from the resources appear (in this case those from the Portal)
|
|
Top
Use Case 2: Load additional 18 users
- Open a terminal and go to <Base>/idmResources/HRfeed
- take a look at the files user-2.csv vi user-2.csv (This file contains 19 users)
- copy user-2.csv to user.csv cp user-2.csv user.csv
|
|
- Access the Admin Interface http://localhost:8080/idm and log in as: configurator / configurator
- Go to the Resources tab and there to
- The List Resources sub-tab
- Open the FlatFileActiveSync folder and select HR Feed
- Select Start for Identity Manager in the --- Resource Actions ---
- Or if the FFAS is still running wait until the next poll
- Go to the Reports tab and there to
- The Run Reports sub-tab
- Scroll down to Today's Activity and click Run
|
|
| |
|
- The the result page with all activities appears. This page may differ heavily but the last 36 entries should be similar
|
|
| |
|
- Now click the entry Create - Identity System Account - PLUSSO. This should be the 6th entry from the top. (marked in green on the result page)
- The following pages shows the create result/data similar to the task result seen in Case 1
|
|
- After clicking Ok on the above page the whole result page appears again
- This time click the entry *Execute - ProvisioningTask - CREATE USER *. This entry is just above the in the last step, the 5th from the top
- The page shows Audit Details
|
|
- Go to the Accounts tab and there to
- The List Accounts sub-tab
- Open all organization folders to get the view as to the right
- The user acooper appears in the organization All as well as Employee because the TYPE in the csv file is either 1, 2, 3 or 4 (which makes her a "normal" Employee)
- The user bobama appears in the organization All as well as Contractor because the TYPE in the csv file is 5
|
|
| |
|
- Click on the arrow in the black circle and remember the job title in the green area
|
|
Top
Use Case 3: Modify 5 users
- Open a terminal and go to <Base>/idmResources/HRfeed
- take a look at the files user-3.csv vi user-3.csv (This file contains 19 users of which 5 have modified job titles)
- copy user-3.csv to user.csv cp user-3.csv user.csv
|
- Access the Admin Interface http://localhost:8080/idm and log in as: configurator / configurator
- Go to the Resources tab and there to
- The List Resources sub-tab
- Open the FlatFileActiveSync folder and select HR Feed
- Select Start for Identity Manager in the --- Resource Actions ---
- Or if the FFAS is still running wait until the next poll
|
- Go to the Reports tab and there to
- The Run Reports sub-tab
- Scroll down to Today's Activity and click Run
- The green section on the result page contains all modification events
|
|
- Click on *Modify" event for pmoreno (marked in blue)
- On the appearing page the details of the changes (old and new value) are shown
|
|
- Click on *Execute" event for pmoreno (marked in violet)
- On the appearing page the audit details are shown
|
|
- Go to the Accounts tab and there to
- The Find Accounts sub-tab
- Click beside Name, use starts with and enter pmore in the text field
- Then hit Search
|
|
- The result page of the search just shows the entry for pmoreno
|
|
- Click on the link for pmoreno (do you remember the job title in the green area from the previous use case?)
|
|
Top
Use Case 4: Delete 6 users
- Open a terminal and go to <Base>/idmResources/HRfeed
- take a look at the files user-4.csv vi user-4.csv (This file contains 19 users of which 6 have a status of 3 which means to delete them)
- copy user-4.csv to user.csv cp user-4.csv user.csv
|
- Access the Admin Interface http://localhost:8080/idm and log in as: configurator / configurator
- Go to the Resources tab and there to
- The List Resources sub-tab
- Open the FlatFileActiveSync folder and select HR Feed
- Select Start for Identity Manager in the --- Resource Actions ---
- Or if the FFAS is still running wait until the next poll
|
- Go to the Reports tab and there to
- The Run Reports sub-tab
- Scroll down to Today's Activity and click Run
- The green section on the result page contains all delete events
|
|
- Click the Delete User event for user mkramer, marked in red
|
|
- Click the Delete Identity System Account event for user mkramer, marked in blue
|
|
- Click the Execute event for user mkramer, marked in violet
|
|
- Go to the Accounts tab and there to
- The List Accounts sub-tab
- Click on *Reset View"
- Open all organization folder
- Then no user are anymore in Contractor, for example
|
|
Top
Use Case 5: Reload all users again for the next modules
- Open a terminal and go to <Base>/idmResources/HRfeed
- copy user-2.csv to user.csv cp user-2.csv user.csv
|
- Access the Admin Interface http://localhost:8080/idm and log in as: configurator / configurator
- Go to the Resources tab and there to
- The List Resources sub-tab
- Open the FlatFileActiveSync folder and select HR Feed
- Select Start for Identity Manager in the --- Resource Actions ---
- Or if the FFAS is still running wait until the next poll
|
- Verify that the 6 users deleted in Use Case 4 are loaded again
- Especially verify that the 4 Contractors: bobama, jbiden, jmccain, spalin. These are used in later modules
|
Top
Resources
The following links provide more information:
Copyright (c) 2008-2009, Sun Microsystems, Inc.
All rights reserved