Table of Contents
- List of Figures
- List of Tables
- Title and Copyright Information
- Preface
- 
               
               What's New In This Guide
                  
               
               
               - Updates in October 2020 Documentation Refresh for 12c (12.2.1.3.0)
- Updates in June 2020 Documentation Refresh for 12c (12.2.1.3.0)
- Updates in January 2020 Documentation Refresh for 12c (12.2.1.3.0)
- Updates in October 2019 Documentation Refresh for 12c (12.2.1.3.0)
- Updates in February 2019 Documentation Refresh for 12c (12.2.1.3.0)
- Updates in January 2019 Documentation Refresh for 12c (12.2.1.3.0)
- Updates in October 2018 Documentation Refresh for 12c (12.2.1.3.0)
- Updates in July 2018 Documentation Refresh for 12c (12.2.1.3.0)
- Updates in April 2018 Documentation Refresh for 12c (12.2.1.3.0)
- Updates in January 2018 Documentation Refresh for 12c (12.2.1.3.0)
- Updates in November 2017 Documentation Refresh for 12c (12.2.1.3.0)
- Updates in September 2017 Documentation Refresh for 12c (12.2.1.3.0)
- New and Changed Features for 12c (12.2.1.3)
 
- 
               
               Part I Application Provisioning 
                  
               
               
               - 
                     
                     
                        
                        1
                            Developing Application Instances 
                     
                        
                     
                     
                     - 1.1 Overview of Application Instances
- 1.2 Managing Resources By Using the Design Console
- 
                           
                           
                              
                              1.3
                                  Converting a Disconnected Application Instance to Connected Application Instance
                           
                              
                           
                           
                           - 1.3.1 Assumptions and Broad-Level Steps
- 1.3.2 Creating a Disconnected Application Instance in the Production Environment
- 1.3.3 Exporting Disconnected Application Instance From Test Environment
- 1.3.4 Importing the Disconnected Application Instance in Production Environment
- 1.3.5 Modifying the Application Instance from Disconnected to Connected
- 1.3.6 Testing the Connected Application Instance
 
 
- 
                     
                     
                        
                        2
                            Developing Provisioning Processes 
                     
                        
                     
                     
                     - 2.1 Process Definition Form
- 2.2 Fields of the Process Definition Form
- 2.3 Creating a Process Definition
- 2.4 Tabs on the Process Definition Form
- 
                           
                           
                              
                              2.5
                                  Modifying Process Tasks
                           
                              
                           
                           
                           - 
                                 
                                 
                                    
                                    2.5.1
                                        The General Tab
                                 
                                    
                                 
                                 
                                 - 2.5.1.1 About the General Tab
- 2.5.1.2 Fields of the General Tab
- 2.5.1.3 Modifying a Process Task's General Information
- 
                                       
                                       
                                          
                                          2.5.1.4
                                              Triggering Process Tasks for Events Defined in Lookup.USR_PROCESS_TRIGGERS Fields
                                       
                                          
                                       
                                       
                                       - 2.5.1.4.1 About the USR_STATUS Attribute
- 2.5.1.4.2 Triggering for the USR_STATUS Attribute For Transition from Disabled to Enabled Status
- 2.5.1.4.3 Triggering for the USR_STATUS Attribute For Transition from Enabled to Disabled Status
- 2.5.1.4.4 Triggering for the USR_STATUS Attribute for Transition From Enabled/Disabled/Provisioned to Revoked status
- 2.5.1.4.5 Triggering For the USR_LOCKED, USR_LOCKED_ON, USR_MANUALLY_LOCKED Attributes
 
 
- 2.5.2 Integration Tab
- 2.5.3 Task Dependency Tab
- 2.5.4 Responses Tab
- 2.5.5 Task to Object Status Mapping Tab
 
- 
                                 
                                 
                                    
                                    2.5.1
                                        The General Tab
                                 
                                    
                                 
                                 
                                 
 
 
- 
                     
                     
                        
                        1
                            Developing Application Instances 
                     
                        
                     
                     
                     
- 
               
               Part II Connectors
                  
               
               
               - 
                     
                     
                        
                        3
                            Using the Adapter Factory 
                     
                        
                     
                     
                     - 3.1 Introduction to Adapters
- 3.2 Types of Adapters
- 3.3 Adapter Environment and Tools
- 3.4 Defining Adapters
- 3.5 Tabs of the Adapter Factory Form
- 3.6 Disabling and Re-enabling Adapters
- 3.7 Working With Adapter Variables
- 3.8 Creating Adapter Tasks
- 3.9 Modifying Adapter Tasks
- 3.10 Changing the Order and Nesting of Tasks
- 3.11 Deleting Adapter Tasks
- 3.12 Working with Responses
- 3.13 Working with Prepopulate Adapters
- 3.14 Working with Process Task Adapters
- 3.15 Adapter Mapping Information
- 3.16 Defining Error Messages
 
- 
                     
                     
                        
                        4
                            Understanding the Identity Connector Framework 
                     
                        
                     
                     
                     - 4.1 Advantages of ICF
- 4.2 Introducing the ICF Architecture
- 
                           
                           
                              
                              4.3
                                  Using the ICF API
                           
                              
                           
                           
                           - 4.3.1 The ConnectorInfoManagerFactory Class
- 4.3.2 The ConnectorInfoManager Interface
- 4.3.3 The ConnectorKey Class
- 4.3.4 The ConnectorInfo Interface
- 4.3.5 The APIConfiguration Interface
- 4.3.6 The ConfigurationProperties Interface
- 4.3.7 The ConnectorFacadeFactory Class
- 4.3.8 The ConnectorFacade Interface
 
- 
                           
                           
                              
                              4.4
                                  Introducing the ICF SPI
                           
                              
                           
                           
                           - 4.4.1 Implementing the Required Interfaces
- 4.4.2 Implementing the Feature-based Interfaces
- 4.4.3 Implementing the Operation Interfaces
- 4.4.4 Common Classes
 
- 4.5 Extending an Identity Connector Bundle
- 
                           
                           
                              
                              4.6
                                  Using an Identity Connector Server
                           
                              
                           
                           
                           - 4.6.1 About the Identity Connector Server
- 
                                 
                                 
                                    
                                    4.6.2
                                        Using the Java Connector Server
                                 
                                    
                                 
                                 
                                 - 4.6.2.1 Installing and Configuring a Java Connector Server
- 4.6.2.2 Properties in the ConnectorServer.properties File
- 4.6.2.3 Running the Java Connector Server on Microsoft Windows
- 4.6.2.4 Options Supported by the ConnectorServer.bat Script
- 4.6.2.5 Running the Java Connector Server on Solaris and Linux
- 4.6.2.6 Options Supported by the connectorserver.sh Script
- 4.6.2.7 Installing an Identity Connector in a Java Connector Server
- 4.6.2.8 Using SSL to Communicate with a Connector Server
 
- 4.6.3 Using the .NET Connector Server
 
 
- 
                     
                     
                        
                        5
                            Developing Identity Connectors Using Java  
                     
                        
                     
                     
                     - 5.1 Introduction to Flat File Connector Development
- 5.2 Developing a Flat File Connector
- 
                           
                           
                              
                              5.3
                                  Supporting Classes for File Input and Output Handling
                           
                              
                           
                           
                           - 5.3.1 Implementation of the FlatFileIOFactory Supporting Class
- 5.3.2 Implementation of the FlatFileMetaData Supporting Class
- 5.3.3 Implementation of the FlatFileParser Supporting Class
- 5.3.4 Implementation of the FlatFileWriter Supporting Class
- 5.3.5 Implementation of the FlatfileLineIterator Supporting Class
- 5.3.6 Implementation of the FlatfileUserAccount Supporting Class
- 5.3.7 Implementation of the FlatfileAccountConversionHandler Supporting Class
- 5.3.8 Implementation of the Messages.Properties Supporting Class
 
- 
                           
                           
                              
                              5.4
                                  Uploading the Identity Connector Bundle to Oracle Identity Governance Database
                           
                              
                           
                           
                           - 5.4.1 Registering the Connector Bundle with Oracle Identity Governance
- 5.4.2 Creating Basic Identity Connector Metadata
- 5.4.3 Creating Provisioning Metadata
- 5.4.4 Creating Reconciliation Metadata
 
- 5.5 Provisioning a Flat File Account
- 5.6 Installing the Java Connector Server
- 5.7 Configuring the Java Connector Server with SSL for Oracle Identity Governance
- 5.8 Configuring the Java Connector Server without SSL for Oracle Identity Governance
- 5.9 Upgrading the Java Connector Server
 
- 
                     
                     
                        
                        6
                            Developing Identity Connectors Using .NET 
                     
                        
                     
                     
                     - 6.1 Developing a Flat File .NET Connector
- 
                           
                           
                              
                              6.2
                                  Deploying the Identity Connector Bundle on .NET Connector Server
                           
                              
                           
                           
                           - 6.2.1 Registering the Connector Bundle with .NET Connector Server
- 6.2.2 Creating Basic Identity Connector Metadata
- 6.2.3 Creating Provisioning Metadata
- 6.2.4 Creating Reconciliation Metadata
 
- 6.3 Provisioning a Flat File Account
 
- 
                     
                     
                        
                        7
                            Integrating ICF with Oracle Identity Governance 
                     
                        
                     
                     
                     - 7.1 ICF Common
- 7.2 Integration Architecture
- 7.3 Global Oracle Identity Governance Lookups
- 7.4 About IT Resources for ICF Integration
- 7.5 Provisioning Using ICF
- 7.6 Concepts of Reconciliation in ICF Common
- 7.7 Predefined Scheduled Tasks
- 7.8 ICF Filter Syntax
 
- 8 Using Java APIs for ICF Integration
- 
                     
                     
                        
                        9
                            Configuring ICF Connectors
                     
                        
                     
                     
                     - 9.1 Configuring Connector Load Balancer
- 9.2 Configuring Validation of Data During Reconciliation and Provisioning
- 9.3 Configuring Transformation of Data During User Reconciliation
- 9.4 Configuring Resource Exclusion Lists
- 9.5 Configuring SSL Communication
- 9.6 Adding Target System Attributes
 
- 10 Understanding ICF Best Practices and FAQs
- 
                     
                     
                        
                        11
                             Using Generic Technology Connectors
                     
                        
                     
                     
                     - 11.1 Overview of Generic Technology Connectors
- 
                           
                           
                              
                              11.2
                                  Using the Generic Connection Pool Framework in Custom Connectors
                           
                              
                           
                           
                           - 11.2.1 Basic Steps to Use Generic Connection Pool in Custom Connector
- 11.2.2 Providing concrete implementation for ResourceConnection interface
- 11.2.3 Defining Additional ITResource Parameters
- 11.2.4 Getting and Releasing Connections from the Pool
- 11.2.5 Using a Third-party Pool
- 11.2.6 Example: Implementation of ResourceConnection
 
- 
                           
                           
                              
                              11.3
                                  Best Practices
                           
                              
                           
                           
                           - 11.3.1 Working with the Provide Basic Information Page
- 11.3.2 Working with the Specify Parameter Values Page
- 11.3.3 Working with the Modify Connector Configuration Page
- 11.3.4 Working with Shared Drive Reconciliation Transport Provider
- 11.3.5 Working with Custom Providers
- 11.3.6 Working with Connector Objects
- 11.3.7 Modifying Generic Technology Connectors
 
 
- 
                     
                     
                        
                        12
                             Predefined Providers for Generic Technology Connectors      
                     
                        
                     
                     
                     - 12.1 Shared Drive Reconciliation Transport Provider
- 12.2 CSV Reconciliation Format Provider
- 12.3 SPML Provisioning Format Provider
- 12.4 Web Services Provisioning Transport Provider
- 12.5 Transformation Providers
- 12.6 Validation Providers
 
 
- 
                     
                     
                        
                        3
                            Using the Adapter Factory 
                     
                        
                     
                     
                     
- 
               
               Part III Workflows
                  
               
               
               - 
                     
                     
                        
                        13
                            Developing Workflows
                     
                        
                     
                     
                     - 13.1 Introducing Workflows
- 13.2 Predefined SOA Composites
- 13.3 Creating New SOA Composites
- 
                           
                           
                              
                              13.4
                                  Developing Workflows: Vision Request Tutorial
                           
                              
                           
                           
                           - 13.4.1 Introducing the Tutorial
- 13.4.2 Assumptions
- 
                                 
                                 
                                    
                                    13.4.3
                                        Creating the Application Instance
                                 
                                    
                                 
                                 
                                 - 13.4.3.1 Creating the FinApp Application Instance
- 13.4.3.2 Defining Application Instance Attributes and Creating a Form
- 13.4.3.3 Publishing the Application Instance to One or More Organizations
- 13.4.3.4 Linking Entitlements to the Application Instance
- 13.4.3.5 Publishing the Application Instance With Entitlements to the Catalog
 
- 13.4.4 Configuring FinApp in the Catalog
- 
                                 
                                 
                                    
                                    13.4.5
                                        Creating and Configuring the SOA Composite for Approval
                                 
                                    
                                 
                                 
                                 - 13.4.5.1 Creating the Approval Workflow
- 13.4.5.2 Making Request and Catalog Data Available to the BPEL Process
- 13.4.5.3 Configuring Workflow Selection
- 13.4.5.4 Configuring Human Tasks
- 13.4.5.5 Configuring the Human Task and BPEL Mappings
- 13.4.5.6 Deploying the SOA Composite
- 13.4.5.7 Creating the Workflow Rules
 
 
- 13.5 Configuring Default Approval Composites for Single and Bulk Operations
- 
                           
                           
                              
                              13.6
                                  Creating and Deploying Custom Task Details Taskflow
                           
                              
                           
                           
                           - 13.6.1 Prerequisites for Developing Custom Task Details Taskflow
- 13.6.2 Developing Custom Task Details Taskflow
- 13.6.3 Developing Custom Task Details for Email Notification (Optional)
- 13.6.4 Deploying the Task Details Taskflow
- 13.6.5 Configuring Human Task and Taskflow Permissions
- 13.6.6 Testing the Custom Taskflow
 
- 13.7 Extending Request Management Operations
- 13.8 Enabling Auto-Approval for Self Registration Requests
- 13.9 Hiding the Skip Current Assignment Option
- 13.10 Customizing Certification Oversight
- 13.11 Customizing the Identity Audit Composite
 
 
- 
                     
                     
                        
                        13
                            Developing Workflows
                     
                        
                     
                     
                     
- 
               
               Part IV Data Synchronization
                  
               
               
               - 
                     
                     
                        
                        14
                            Customizing Reconciliation 
                     
                        
                     
                     
                     - 
                           
                           
                              
                              14.1
                                  Reconciliation Features
                           
                              
                           
                           
                           - 
                                 
                                 
                                    
                                    14.1.1
                                        Performance Enhancement Features
                                 
                                    
                                 
                                 
                                 - 14.1.1.1 New Metadata Model - Profiles
- 14.1.1.2 Parameters to Control Flow and Processing of Events
- 14.1.1.3 Grouping of Events by Reconciliation Runs
- 14.1.1.4 Grouping of Events by Batches
- 14.1.1.5 Implementing Reconciliation Engine Logic in the Database
- 14.1.1.6 Improved Java Engine
- 14.1.1.7 Improved Database Schema
 
- 14.1.2 Web-Based Event Management Interface
- 14.1.3 Other Reconciliation Features
 
- 
                                 
                                 
                                    
                                    14.1.1
                                        Performance Enhancement Features
                                 
                                    
                                 
                                 
                                 
- 
                           
                           
                              
                              14.2
                                  Reconciliation Architecture
                           
                              
                           
                           
                           - 14.2.1 Reconciliation Process Flow
- 14.2.2 Reconciliation Profile
- 14.2.3 Reconciliation Metadata
- 14.2.4 Reconciliation Target
- 14.2.5 Reconciliation Run
- 14.2.6 Reconciliation APIs
- 14.2.7 Reconciliation Schema
- 14.2.8 Reconciliation Engine
- 14.2.9 Connector for Reconciliation
- 14.2.10 Archival
- 14.2.11 Backward Compatibility
- 14.2.12 Reconciliation Event Management
 
- 14.3 Defining Reconciliation Rules
- 14.4 Developing Reconciliation Scheduled Tasks
- 14.5 Updating Reconciliation Profiles Manually
- 14.6 Understanding Reconciliation APIs
- 14.7 Postprocessing for Trusted Reconciliation
- 14.8 Reconciliation FAQs
- 
                           
                           
                              
                              14.9
                                  Troubleshooting Reconciliation
                           
                              
                           
                           
                           - 14.9.1 Changing the Logging Level for Reconciliation
- 14.9.2 Troubleshooting General Reconciliation Issues
- 14.9.3 Troubleshooting Database-Related Reconciliation Issues
- 14.9.4 Troubleshooting Reconciliation Profile Configuration Failures
- 14.9.5 Troubleshooting LDAP Reconciliation Issues
- 14.9.6 Troubleshooting Reconciliation Issues in the PL/SQL Layer
 
- 14.10 Populating Data in the RECON_EXCEPTIONS Table
- 14.11 Reconciliation Best Practices
- 14.12 Monitoring Reconciliation Performance Using DMS
 
- 
                           
                           
                              
                              14.1
                                  Reconciliation Features
                           
                              
                           
                           
                           
- 
                     
                     
                        
                        15
                            Using the Bulk Load Utility
                     
                        
                     
                     
                     - 15.1 Modes of Running the Utility
- 15.2 Features of the Bulk Load Utility
- 15.3 Prerequisites for Running the Bulk Load Utility
- 15.4 Running the Utility
- 15.5 Performance Best Practices for Bulk Load
- 
                           
                           
                              
                              15.6
                                  Loading OIM User Data
                           
                              
                           
                           
                           - 15.6.1 Overview of Loading OIM User Data
- 15.6.2 Setting a Default Password for OIM Users Added by the Utility
- 15.6.3 Creating the Input Source for the Bulk Load Operation
- 15.6.4 Determining Values for the Input Parameters of the Utility
- 15.6.5 Monitoring the Progress of the Operation
- 15.6.6 Handling Exceptions Recorded During the Operation
- 15.6.7 Fixing Exceptions and Reloading Data Records
- 15.6.8 Verifying the Outcome of the Bulk Load Operation
- 15.6.9 Generating an Audit Snapshot
 
- 
                           
                           
                              
                              15.7
                                  Loading Account Data
                           
                              
                           
                           
                           - 15.7.1 Overview of Loading Account Data
- 15.7.2 Requirements and Features of the Bulk Load Operation for Account Data
- 15.7.3 Creating the Input Source for the Bulk Load Operation
- 15.7.4 Determining Values for the Input Parameters of the Utility
- 15.7.5 Monitoring the Progress of the Operation
- 15.7.6 Handling Exceptions Recorded During the Operation
- 15.7.7 Fixing Exceptions and Reloading Data Records
- 15.7.8 Verifying the Outcome of the Bulk Load Operation
 
- 
                           
                           
                              
                              15.8
                                  Loading Role, Role Hierarchy, Role Membership, and Role Category Data
                           
                              
                           
                           
                           - 15.8.1 Overview of Loading Role, Role Hierarchy, Role Membership, and Role Category Data
- 15.8.2 Creating the Input Source for the Bulk Load Operation
- 15.8.3 Determining Values for the Input Parameters of the Utility
- 15.8.4 Monitoring the Progress of the Operation
- 15.8.5 Handling Exceptions Recorded During the Operation
- 15.8.6 Fixing Exceptions and Reloading Data Records
- 15.8.7 Verifying the Outcome of the Bulk Load Operation
 
- 
                           
                           
                              
                              15.9
                                  Loading Organization Data
                           
                              
                           
                           
                           - 15.9.1 Overview of Loading Organization Data
- 15.9.2 Creating the Input Source for the Bulk Load Operation
- 15.9.3 Determining Values for the Input Parameters of the Utility
- 15.9.4 Monitoring the Progress of the Operation
- 15.9.5 Handling Exceptions Recorded During the Operation
- 15.9.6 Fixing Exceptions and Reloading Data Records
- 15.9.7 Verifying the Outcome of the Bulk Load Operation
 
- 15.10 Data Recorded During the Operation
- 15.11 Gathering Diagnostic Data from the Bulk Load Operation
- 15.12 Cleaning Up After a Bulk Load Operation
- 15.13 Bulk Load High Volume Strategy and Case Studies
 
- 
                     
                     
                        
                        16
                            Developing Scheduled Tasks 
                     
                        
                     
                     
                     - 16.1 Overview of Task Creation
- 16.2 Defining the Metadata for the Scheduled Task
- 16.3 Configuring the Scheduled Task XML File
- 16.4 Developing the Scheduled Task Class
- 16.5 Configuring the Plug-in XML File
- 16.6 Creating the Directory Structure for the Scheduled Task
- 
                           
                           
                              
                              16.7
                                  Scheduled Task Configuration File
                           
                              
                           
                           
                           - 16.7.1 Structure of the Scheduler XML File
- 16.7.2 The scheduledTasks Element
- 16.7.3 The task Element
- 16.7.4 The name Element
- 16.7.5 The class Element
- 16.7.6 The description Element
- 16.7.7 The retry Element
- 16.7.8 The parameters Element
- 16.7.9 The string-param Element
- 16.7.10 The number-param Element
- 16.7.11 The boolean-param Element
 
- 16.8 Best Practices for Creating Custom Scheduled Tasks
- 16.9 Using the isStop() Method
- 16.10 Monitoring Scheduled Jobs Performance using DMS
 
 
- 
                     
                     
                        
                        14
                            Customizing Reconciliation 
                     
                        
                     
                     
                     
- 
               
               Part V Custom Operations
                  
               
               
               - 
                     
                     
                        
                        17
                            Developing Plug-ins 
                     
                        
                     
                     
                     - 17.1 Plug-ins and Plug-in Points
- 17.2 Using Plug-ins in Deployments
- 17.3 Plug-in Points
- 17.4 Configuring Plug-ins
- 17.5 Developing Custom Plug-ins
- 17.6 Registering Plug-ins
- 17.7 Migrating Plug-ins
 
- 
                     
                     
                        
                        18
                            Developing Event Handlers 
                     
                        
                     
                     
                     - 18.1 Orchestration Concepts
- 18.2 Using Custom Event Handlers
- 18.3 Orchestration Operations for Entities
- 
                           
                           
                              
                              18.4
                                  Developing Custom Event Handlers
                           
                              
                           
                           
                           - 18.4.1 About Custom Event Handler Development
- 
                                 
                                 
                                    
                                    18.4.2
                                        Implementing the SPI and Creating a JAR
                                 
                                    
                                 
                                 
                                 - 18.4.2.1 Development Considerations
- 18.4.2.2 Methods and Arguments
- 
                                       
                                       
                                          
                                          18.4.2.3
                                              Code Samples
                                       
                                          
                                       
                                       
                                       - 18.4.2.3.1 Example 1: Custom Email Validation
- 18.4.2.3.2 Example 2: Custom Preprocess Event Handler to Set Middle Name
- 18.4.2.3.3 Example 3: Custom Post-process Event Handler to Provision Resource Object
- 18.4.2.3.4 Example 4: Custom User Postprocess Event Handler With bulkExecute Method
- 18.4.2.3.5 Example 5: Using Context in isApplicable method
 
- 18.4.2.4 Creating a JAR File With Custom Event Handler Code
- 18.4.2.5 SPIs to Write Custom Event Handlers
- 18.4.2.6 Handling Exceptions
- 18.4.2.7 Managing Transactions
 
- 18.4.3 Defining Custom Events Definition XML
- 18.4.4 Creating and Registering a Plug-in ZIP
 
- 18.5 Sequencing the Execution of Event Handlers
- 18.6 Writing Custom Validation Event Handlers
- 18.7 Best Practices
- 18.8 Migrating Event Handlers
- 18.9 Troubleshooting Event Handlers
 
 
- 
                     
                     
                        
                        17
                            Developing Plug-ins 
                     
                        
                     
                     
                     
- 
               
               Part VI Customization 
                  
               
               
               - 
                     
                     
                        
                        19
                            Customizing the Interface
                     
                        
                     
                     
                     - 
                           
                           
                              
                              19.1
                                  Managing Sandboxes
                           
                              
                           
                           
                           - 19.1.1 Understanding Sandbox Operations
- 19.1.2 Handling Concurrency Conflicts
- 19.1.3 Creating a Sandbox
- 19.1.4 Activating a Sandbox
- 19.1.5 Deactivating a Sandbox
- 19.1.6 Viewing and Modifying Sandbox Details
- 19.1.7 Exporting a Sandbox
- 19.1.8 Importing a Sandbox
- 19.1.9 Publishing a Sandbox
- 19.1.10 Publishing Sandboxes in Bulk and Sequence
- 19.1.11 Deleting a Sandbox
- 19.1.12 Reverting Changes
 
- 19.2 Skin Customization in Oracle Identity Governance
- 
                           
                           
                              
                              19.3
                                  Customizing Pages at Runtime
                           
                              
                           
                           
                           - 19.3.1 Customizable Entity Artifacts
- 19.3.2 Using Expression Language in UI Customization
- 19.3.3 Showing or Hiding UI Components Conditionally
- 19.3.4 Showing Request Profiles Conditionally
- 19.3.5 Validating Input Data Using ADF Validators
- 19.3.6 Marking Input Attribute as Required
- 19.3.7 Adding a Link or Button
- 19.3.8 Hiding and Deleting an ADF Component
- 19.3.9 Showing and Hiding Attributes
- 19.3.10 Customizing Unauthenticated Pages
- 19.3.11 Customizing the Toolbar Contents
- 19.3.12 Customizing Certification Pages
 
- 19.4 Securing a Task Flow Region Using EL Expressions
- 19.5 Customizing Oracle Identity Governance Help
- 19.6 Customizing the Home Page
- 
                           
                           
                              
                              19.7
                                  Developing Managed Beans and Task Flows
                           
                              
                           
                           
                           - 19.7.1 Types of Managed Beans
- 19.7.2 Prerequisites for Developing Managed Beans and Task Flows
- 19.7.3 Setting Up the ViewController Project
- 19.7.4 Setting Up a Model Project
- 19.7.5 Adding Custom Managed Bean
- 19.7.6 Deploying Custom Code to Oracle Identity Governance
- 
                                 
                                 
                                    
                                    19.7.7
                                        Using Managed Beans
                                 
                                    
                                 
                                 
                                 - 19.7.7.1 Showing Components Conditionally
- 19.7.7.2 Prepopulating Fields Conditionally
- 19.7.7.3 Setting a Conditional Mandatory Field
- 19.7.7.4 Implementing Custom Field Validation
- 19.7.7.5 Implementing Custom Cascading LOVs
- 19.7.7.6 Customizing Forms By Using RequestFormContext
- 19.7.7.7 Overriding the Submit Button in Request Catalog
- 19.7.7.8 Launching Taskflows
- 19.7.7.9 Creating an External Link
 
- 
                                 
                                 
                                    
                                    19.7.8
                                        Using Managed Beans to Populate Request Attributes
                                 
                                    
                                 
                                 
                                 - 
                                       
                                       
                                          
                                          19.7.8.1
                                              Populating Request Attributes Using Managed Beans
                                       
                                          
                                       
                                       
                                       - 19.7.8.1.1 Approach Taken to Populate Request Attributes Using Managed Beans
- 19.7.8.1.2 Creating the Java Class
- 19.7.8.1.3 Declaring the PrePopulateMBean Class
- 19.7.8.1.4 Deploying the View Controller Project and Custom Code
- 19.7.8.1.5 Customizing the UI to Add the Button
- 19.7.8.1.6 Configuring the Properties of the Prepopulate Button
- 19.7.8.1.7 Testing the Customization
 
- 19.7.8.2 Populating Request Attributes by Using the Prepopulate Plug-in
 
- 
                                       
                                       
                                          
                                          19.7.8.1
                                              Populating Request Attributes Using Managed Beans
                                       
                                          
                                       
                                       
                                       
- 19.7.9 Using Public Taskflows
- 19.7.10 Customizing Catalog Search
- 
                                 
                                 
                                    
                                    19.7.11
                                        Customizing Task Details Page for Approval Tasks
                                 
                                    
                                 
                                 
                                 - 19.7.11.1 Prerequisites for Developing Custom Task Details Taskflow
- 19.7.11.2 Building a Custom Taskflow for a Human Task
- 19.7.11.3 Creating the Task Details Taskflow
- 19.7.11.4 Creating the Task Details Page
- 19.7.11.5 Populating the Page With Task Information
- 19.7.11.6 Taskflows to Show Request-Related Information
- 19.7.11.7 Configuring the Human Task to Use the Custom Taskflow
 
 
- 
                           
                           
                              
                              19.8
                                  Configuring Additional Request Form
                           
                              
                           
                           
                           - 19.8.1 Additional Request Information Concepts
- 
                                 
                                 
                                    
                                    19.8.2
                                        Understanding the Guidelines for Developing Custom Taskflow for Additional Request Information
                                 
                                    
                                 
                                 
                                 - 19.8.2.1 Implementing Custom Taskflow for Additional Request Information
- 19.8.2.2 Taskflow Input Parameters
- 19.8.2.3 Saving and Retrieving Additional Information in Managed Bean Developed for the Project
- 19.8.2.4 Understanding the AdditionalRequestInfo Interface
- 19.8.2.5 Using RequestFormContext to Achieve the Required Customizations
 
- 19.8.3 Configuring Custom Taskflow for Additional Request Information
- 19.8.4 Validating Additional Request Information
 
- 19.9 Migrating UI Customizations
- 
                           
                           
                              
                              19.10
                                  UI Customization Best Practices
                           
                              
                           
                           
                           - 19.10.1 Create Sandboxes With Detailed Description
- 19.10.2 Create a Backup of MDS Before Publishing a Sandbox
- 19.10.3 Migrate All Sandboxes to the Target Environment and Publish in the Same Order
- 19.10.4 Export the Sandbox Before Publishing
- 19.10.5 Test the Sandbox Before Publishing
- 19.10.6 Do Not Change Default Component IDs
- 19.10.7 Use Discretion When Deleting Components From a Page
- 19.10.8 Note That Direct Changes to Default EOs/VOs Are Not Supported
- 19.10.9 Specify Name Space for JSFF Tags
- 19.10.10 Note That Customizations Are Only Allowed in Site/Site Layer
- 19.10.11 Note That Each Application Instance or Entitlement Form Has Three Page Fragments (JSFF)
- 19.10.12 Use Discretion When Using the Searchable Picklist Option
- 19.10.13 Sign-out After Adding/Updating UDF
- 19.10.14 Verify the UDF After Adding it to the Page
- 19.10.15 Map UDF With Correct LDAP Attribute
- 19.10.16 Deploy Custom Managed Beans as Part of the oracle.iam.ui.custom-dev-starter-pack.war Shared Library
- 19.10.17 Consider Replacing the Entire Taskflow
- 19.10.18 Do Not Update Oracle Identity Manager WAR/EAR Files
- 19.10.19 Consider Conditionally Showing Certain Home Page Tiles
- 19.10.20 Do Not Invoke Platform APIs From Custom Managed Bean
- 19.10.21 Use Recommended Value of Display Width While Creating Lookup UDFs
 
 
- 
                           
                           
                              
                              19.1
                                  Managing Sandboxes
                           
                              
                           
                           
                           
- Using URLs
 
- 
                     
                     
                        
                        19
                            Customizing the Interface
                     
                        
                     
                     
                     
- 
               
               Part VII Interfaces to Integrate With Other Applications
                  
               
               
               - 
                     
                     
                        
                        20
                            Using APIs 
                     
                        
                     
                     
                     - 20.1 About Oracle Identity Governance APIs
- 20.2 Accessing Oracle Identity Governance Services
- 20.3 Oracle Identity Governance Services
- 20.4 Commonly Used Services
- 20.5 Mapping Between Legacy and New Services
- 20.6 Working With Legacy Oracle Identity Manager APIs
- 20.7 Code Samples
- 20.8 Using the Custom API ZIP File
 
- 
                     
                     
                        
                        21
                            Using SCIM/REST Services 
                     
                        
                     
                     
                     - 21.1 Overview of SCIM/REST Services
- 21.2 Supported Resources and Operations
- 
                           
                           
                              
                              21.3
                                  Resource Schema
                           
                              
                           
                           
                           - 21.3.1 Introduction to Resource Schema
- 21.3.2 Schema Attributes for the User Resource
- 21.3.3 Schema Attributes for the PasswordResetterWithChallenges Resource
- 21.3.4 Schema Attributes for the PasswordValidator Resource
- 21.3.5 Schema Attributes for the UserNameValidator Resource
- 21.3.6 Schema Attributes for the UserNameGenerator Resource
- 21.3.7 Schema Attributes for the UserNameRecoverer Resource
- 21.3.8 Schema Attributes for the Group Resource
- 21.3.9 Schema Attributes for the Organization Resource
- 21.3.10 Schema Attributes for the Password Policy Resource
- 21.3.11 Schema Attributes for the Notification Template Resource
- 21.3.12 Schema Attributes for the System Property Resource
- 21.3.13 Schema Attributes for the Service Provider Configuration Schema Resource
- 21.3.14 Schema Attributes for the Resource Type Resource
- 21.3.15 Schema Attributes for the Schema Resource
 
- 21.4 Operation Types
- 21.5 HTTP Response Codes
- 
                           
                           
                              
                              21.6
                                  SCIM-Based API Examples
                           
                              
                           
                           
                           - 
                                 
                                 
                                    
                                    21.6.1
                                        User Management
                                 
                                    
                                 
                                 
                                 - 21.6.1.1 Create User
- 21.6.1.2 Modify User (PUT)
- 21.6.1.3 Modify User (PATCH)
- 21.6.1.4 View Users with Pagination
- 21.6.1.5 Delete User
- 21.6.1.6 Lock User
- 21.6.1.7 Unlock User
- 21.6.1.8 Reset Password by Providing New Password
- 21.6.1.9 Reset Password by Auto-Generated Password
- 21.6.1.10 View User
- 21.6.1.11 Self Registration
- 21.6.1.12 Modify Self Profile (PATCH)
- 21.6.1.13 Modify Profile (PUT)
- 21.6.1.14 PasswordResetterWithChallenges
- 21.6.1.15 PasswordValidator
- 21.6.1.16 UserNameValidator
- 21.6.1.17 UserNameGenerator
- 21.6.1.18 UserNameRecoverer
 
- 21.6.2 Role Management
- 21.6.3 Organization Management
- 21.6.4 Password Policy Management
- 21.6.5 Notification Template Management
- 21.6.6 System Property Management
- 21.6.7 Service Provider Configuration Management
- 21.6.8 Resource Types Management
- 21.6.9 Using POST Search
- 21.6.10 Retrieving Schemas
 
- 
                                 
                                 
                                    
                                    21.6.1
                                        User Management
                                 
                                    
                                 
                                 
                                 
- 21.7 Securing SCIM Resources
- 21.8 Oracle Identity Governance REST Service
 
- 
                     
                     
                        
                        22
                            Using the JSON Web Token Service
                     
                        
                     
                     
                     - 22.1 About the JWT Service
- 22.2 Authentication Scenarios
- 22.3 Acquiring and Applying a JWT
- 22.4 JWT-Based OIM Identity Provider for SCIM-REST Authentication
- 22.5 Endpoints and the Facade Application
- 22.6 CSRF and CORS Protection
 
- 23 Understanding Global Policy Attachments
 
- 
                     
                     
                        
                        20
                            Using APIs 
                     
                        
                     
                     
                     
- Part VIII Notification Service
- Part IX Customization Lifecycle
- 
               
               Part X Reports and Audit
                  
               
               
               - 
                     
                     
                        
                        26
                            Configuring Reports
                     
                        
                     
                     
                     - 26.1 What are Oracle Identity Governance Reports?
- 26.2 What is Oracle BI Publisher?
- 26.3 BI Publisher Licensing
- 26.4 Installing and Configuring Oracle BI Publisher
- 26.5 Integrating Standalone BI Publisher with Oracle Identity Governance
- 26.6 Configuring Oracle Identity Governance Reports
- 26.7 Configuring Data Sources for Running Oracle Identity Governance Reports
- 26.8 Generating Oracle Identity Governance Reports
- 26.9 Configuring Certification Reports
 
- 27 Understanding Auditing
 
- 
                     
                     
                        
                        26
                            Configuring Reports
                     
                        
                     
                     
                     
- Part XI Appendixes
- A The FacesUtils Class
- 
               
               
                  
                  B
                      Username Reservation and Common Name Generation 
               
                  
               
               
               - B.1 Username Reservation
- B.2 Common Name Generation