Modify Operation Authorization with Multiple Authorization Policies

11-58 Oracle Fusion Middleware Users Guide for Oracle Identity Manager

11.5.2 Configuring the Username Policy

Username Policy is a plugin implementation for username operations such as username generation and username validation. The policies follow Oracle Identity Manager plug-in framework. You can add your own policies by adding new plug-ins and changing the default policies from the System Configuration section in Oracle Identity Administration. In case of create user request, the plugins are invoked only if the user login is not provided. In such a case, the plugin to be invoked is picked up from the system property, Default policy for username generation. Table 11–8 lists the predefined username policies provided by Oracle Identity Manager. In this table, the dollar sign in the username generation indicates random alphabet: See Also: Developing Plug-ins in the Oracle Fusion Middleware Developers Guide for Oracle Identity Manager for information about the plug-in framework Table 11–8 Predefined Username Policies Policy Name Expected Information Username Generated oracle.iam.identity.usermgmt.impl.plugi ns.EmailUserNamePolicy E-mail If e-mail is provided, then e-mail is generated as username. oracle.iam.identity.usermgmt.impl.plugi ns.LastNameFirstInitialLocalePolicy First name, last name, and locale last name + first initial_locale, last name + middle initial + first initial_locale, last name + + first initial_locale all possibilities of single random alphabets, last name + + first initial_locale oracle.iam.identity.usermgmt.impl.plugi ns.FirstInitialLastNameLocalePolicy Firstname, Lastname, Locale first initial + lastname_locale, first initial + middle initial + first name_locale, first initial + + lastname_locale, first initial + + lastname_locale oracle.iam.identity.usermgmt.impl.plugi ns.LastNameFirstInitialPolicy Firstname, Lastname lastname+firstInitial, lastname+middleinitial+firstInitial, lastname++firstInitial all possibilities of single random alphabets , lastname++firstInitial oracle.iam.identity.usermgmt.impl.plugi ns.FirstInitialLastNamePolicy Firstname, Lastname firstInitial+lastname, firstInitial+middleInitial+firstname, firstInitial++lastname, firstInitial++lastname oracle.iam.identity.usermgmt.impl.plugi ns.LastNameFirstNamePolicy Firstname, Lastname lastname.firstname, lastname.middleinitial.firstname, lastname..firstname all possibilities of single random alphabets , lastname..firstname oracle.iam.identity.usermgmt.impl.plugi ns.FirstNameLastNamePolicy Firstname, Lastname firstname.lastname, firstname.middleinitial.lastname, firstname..lastname all possibilities of single random alphabets , firstname..lastname Managing Users 11-59 Values must be provided for all the parameters of the username generation format. If any of the parameters are not provided, then Oracle Identity Manager generates an error. For example, If the firstname.lastname policy is configured and the firstname is not provided, then the error would be An error occurred while generating the Username. Please provide firstname as expected by the firstname.lastname policy. The UserManager exposes APIs for username operations. The APIs take the user data as input and return a generated username. The APIs make a call to plug-ins that return the username. This allows you to replace the default policies with custom plug-ins with your implementation for username operations. You can plug-in your own username policies by implementing the plug-in interface, as shown: package oracle.iam.identity.usermgmt.api; public interface UsernamePolicy { public String getUserNameFromPolicyHashMapString, String reqData throws UserNameGenerationException; public boolean isUserNameValidString userName, HashMapString, String reqData; oracle.iam.identity.usermgmt.impl.plugi ns.DefaultComboPolicy E-mail If e-mail is provided, then username is generated based on the e-mail. If e-mail is not available, then it generates username based on firstname and lastname by appending a user domain to it. The user domain is configured as the Default user name domain system property, and the default value is oracle.com oracle.iam.identity.usermgmt.impl.plugi ns.LastNamePolicy, Lastname lastname, middle initial + lastname , + lastname, + lastname oracle.iam.identity.usermgmt.impl.plugi ns.LastNameLocalePolicy Lastname, Locale lastname_locale, middle initial + lastname_locale , + lastname_locale, + lastname_locale oracle.iam.identity.usermgmt.impl.plugi ns.FirstNameLastNamePolicyForAD Firstname, Lastname firstname+lastname, substring of firstname+lastname+, substring of firstname+ substring of lastname+ oracle.iam.identity.usermgmt.impl.plugi ns.LastNameFirstNamePolicyForAD Lastname, Firstname lastname+firstname, lastname+substring of firstname+, substring of lastname+ substring of firstname+ Note: ■ For user name generation and validation, public APIs are exposed in UserManager. ■ While creating the policy, ensure that the attributes used in generating the username are defined in the request data set. For information about request data set, see Request Dataset in the Oracle Fusion Middleware Developers Guide for Oracle Identity Manager. Table 11–8 Cont. Predefined Username Policies Policy Name Expected Information Username Generated