Connect to Salesforce
Connecting EmpowerID to Salesforce allows organizations to centralize identity and access management for Salesforce users. By integrating Salesforce as an account store, EmpowerID can inventory user accounts, enforce access policies, and manage authentication and provisioning processes efficiently. This integration ensures that user access to Salesforce aligns with organizational security policies while simplifying identity governance.
This article provides step-by-step instructions for establishing a connection between EmpowerID and Salesforce, including configuring the account store, setting up attribute synchronization, and managing inventory. Before proceeding, ensure you meet the prerequisites outlined below to enable a seamless integration.
Prerequisites
In order to connect EmpowerID to Salesforce:
- You must have a Salesforce domain with an account that EmpowerID can use to connect to Salesforce.
- At a minimum, this account must have a profile with permission to read the user data in Salesforce.
- If you plan to use EmpowerID to provision, deprovision and modify the user data in Salesforce, the profile needs to have create, update and delete permissions as well.
- Additionally, you must provide EmpowerID with the token generated by Salesforce for the account.
Procedure
Step 1 – Create a Salesforce account store in EmpowerID
- On the navbar, expand Admin > Applications and Directories and then select Account Stores and Systems.
- On the Account Stores page, select the Actions tab and then click Create Account Store.
- Under System Types, search for Salesforce.
- Click the Salesforce.com record to select the type and then click Submit.
- On the Salesforce settings page that appears, fill in the following information
- User Name – Enter the username of the Salesforce account you created in Salesforce for EmpowerID.
- Password – Enter the password for the connection account.
- Service Account Token – Enter the value of the token generated by Salesforce for the selected user account.
- URL – Enter
https://<YourSalesforceDomain>/services/Soap/c/34.0.
Replace<YourSalesforceDomain/>
with the name of your Salesforce domain.
- When you have added your settings, click Submit to create the account store.
EmpowerID creates the account store and the associated resource system. The next step is to configure attribute flow between the account store and EmpowerID.
Step 2 – Configure Attribute flow
EmpowerID allows configuring attribute synchronization rules between the Linux system and the EmpowerID Identity Warehouse. Attribute flow rules define how attributes are synchronized and can be weighted for prioritization across multiple sources.
Attribute Flow Options
- No Sync: No synchronization occurs between EmpowerID and the Linux system.
- Bidirectional Flow: Changes in either system are reflected in the other.
- Account Store Changes Only: Changes made in Linux sync to EmpowerID but not vice versa.
- EmpowerID Changes Only: Changes made in EmpowerID sync to Linux but not vice versa.
CRUD Operations
- Create: Creates an attribute if it does not exist.
- Update: Updates an existing attribute.
- Delete: Removes an attribute value.
Configuring Attribute Flow
- Navigate to Account Stores and Systems and locate the newly created Linux account store.
- Click on the Account Store link.
- Select the Attribute Flow Rules tab.
- Adjust the synchronization direction using the Attribute Flow dropdown.
- Modify CRUD operation scores as needed to prioritize attribute sources.
- Save your changes.
EmpowerID only considers scores for attribute CRUD operations when multiple account stores with the same user records are connected to EmpowerID, such as would be the case if an HR System and this account store were being inventoried by EmpowerID.
Now that the attribute flow has been set, the next steps include configuring the account store and enabling EmpowerID to inventory it.
Step 3 – Configure account store settings
- On the Account Store and Resource System page for Salesforce, click the Account Store tab and then click the pencil icon to put the account store in edit mode.
This opens the edit page for the account store. This page allows you to specify the account proxy used to connect EmpowerID to your Salesforce account as well as how you want EmpowerID to handle the user information it discovers in UltiPro during inventory. Settings that can be edited are described in the table below the image.
Account Store Settings | |
---|---|
Setting | Description |
General Settings | |
IT Environment | Allows you to specify the type of environment in which you are creating the account store. |
Account Store Type | Allows to specify a type for the account store you are creating. |
Option 1 Specify an Account Proxy | Allows you to change the credentials for the account that EmpowerID uses to connect to and manage the account store. |
Option 2 Select a Vaulted Credential as Account Proxy | Allows you to use a credential that you have vaulted in EmpowerID as the account that EmpowerID uses to connect to and manage the account store. |
Active Directory Computer | Allows you to select the AD computer for the account store. |
Is Remote (Cloud Gateway Connection Required) | This setting appears for account stores with local directories, such as Active Directory, LDAP, SAP, etc. When enabled, this tells EmpowerID to use the Cloud Gateway Connection for that account store. The Cloud Gateway Connection must be installed on an on-premise machine. |
Authentication and Password Settings | |
Allow Password Sync | Enables or disables the synchronization of password changes to user accounts in the domain based on password changes for the owning person object or another account owned by the person. This setting does not prevent password changes by users running the reset user account password workflows. |
Queue Password Changes | Specifies whether EmpowerID sends password changes to the Account Password Reset Inbox for batch processing. |
Password Manager Policy for Accounts without Person | Specifies the Password Manager Policy to be used for user accounts not joined to an EmpowerID Person. |
Provisioning Settings | |
Allow Person Provisioning (Joiner Source) | Specifies whether EmpowerID Persons can be provisioned from user accounts in the account store. |
Allow Attribute Flow | Specifies whether attribute changes should flow between EmpowerID and the account store. |
Allow Provisioning (By RET) | Allows or disallows the Resource Entitlement (RET) Inbox process to auto-provision accounts for this domain for users who receive RET policy-assigned user accounts, but have not yet had them provisioned. |
Allow Deprovisioning (By RET) | Allows or disallows the Resource Entitlement Inbox process to auto de-provision accounts for this domain for users who still have RET policy-assigned user accounts, but no longer receive a policy that grants them a user account in the domain. De-provisioning only occurs if the de-provision action on the Resource Entitlement policy is set to De-Provision. |
Max Accounts per Person | This specifies the maximum number of user accounts from this domain that an EmpowerID Person can have linked to them. This prevents the possibility of a runaway error caused by a wrongly configured Join rule. It is recommended that this value be set to 1 unless users will have more than 1 account and you wish them to be joined to the same person. |
Send All Changes to Outbox | |
Auto Process Outbox | |
Business Role Settings | |
Allow Business Role and Location Re-Evaluation | Specifies whether Business Role and Location re-evaluation should occur for the account store |
Business Role and Location Re-Evaluation Order | Specifies the order of the account store for re-evaluating Business Roles and locations |
Inventory Auto Provision OUs as IT System Locations | Specifies whether EmpowerID should automatically provision external OUs as IT System locations |
Inventory Auto Provision External Roles as Business Roles | Specifies whether EmpowerID should provision Business roles for external account store roles |
Default Person Business Role | Specifies the default EmpowerID Business Role to be assigned to each EmpowerID Person provisioned from the user accounts in the account store. |
Default Person Location (leave blank to use account container) | Specifies the default EmpowerID Location to be assigned to each EmpowerID Person provisioned from the user accounts in the account store. |
Group Settings | |
Allow Account Creation on Membership Request | Specifies whether EmpowerID creates user accounts in the account store when an EmpowerID Person without one requests membership within a group belonging to the account store. |
Recertify External Group Changes as Detected | Specifies whether detected group changes should trigger recertification. |
SetGroup of Groups to Monitor for Real-Time Recertification | Specifies the SetGroup or Query-Based Collection with groups that need to be recertified when changes to the membership of one or more of those groups occurs. The setting must be set to the GUID of the target SetGroup. If the GUID for a specific SetGroup is not set and Recertify External Group Changes as Detected is enabled for the account store, EmpowerID processes all security group memberships for recertification. Group recertification is processed by the Continuous Group Membership Recertification permanent workflow. This workflow must be enabled for recertification to occur. |
Directory Clean Up Enabled | |
Directory Clean Up Enabled | Specifies whether the SubmitAccountTermination permanent workflow should claim the account store for processing account terminations. When enabled, the workflow . When enabled, accounts in the account store that are marked for deletion are first moved into a external directory, disabled and finally deleted when approved. This process involves setting a number of system settings in EmpowerID and requires multiple approvals before an account is finally removed from the account store. |
Report Only Mode (No Changes) | When enabled, a report of what the Directory Clean Up process would do is written to the log. The process itself is ignored and all accounts are set to Termination Pending, |
Special Use Settings | |
Automatically Join Account to a Person on Inventory (Skip Account Inbox) | Specifies whether EmpowerID should attempt to join user accounts in the account store to an existing EmpowerID Person during the inventory process. When enabled, the Account Inbox is bypassed. |
Automatically Create a Person on Inventory (Skip Account Inbox) | Specifies whether EmpowerID should create new EmpowerID Persons from the user accounts discovered in the account store during the inventory process. When enabled, the Account Inbox is bypassed. |
Queue Password Changes on Failure | Specifies whether EmpowerID should send password changes to the Account Password Reset Inbox only when the change fails. |
Create RBAC Item Level Fulfillment Approval | |
Inventory Settings | |
Inventory Schedule Interval | Specifies the time span that occurs before EmpowerID performs a complete inventory of the account store. The default value is 10 minutes. |
Inventory Enabled | Allows EmpowerID to inventory the user information in the account store. |
Membership Settings | |
Membership Schedule Interval | Specifies the time span that occurs before EmpowerID runs the Group Membership Reconciliation job. The default value is 10 minutes. |
Enable Group Membership Reconciliation | Allows EmpowerID to manage the membership of the account store’s groups, adding and removing user to and from groups based on policy-based assignment rules. |
- Edit the account store as needed and then click Save to save your changes.
Next, enable the Account Inbox permanent workflow to allow the Account Inbox to provision or join the user accounts in Box to EmpowerID Persons as demonstrated below.
Step 4 – Enable Account Inbox Permanent Workflow
The Account Inbox workflow is essential for processing user accounts discovered during inventory.
- Navigate to Infrastructure Admin > EmpowerID Server and Settings > Permanent Workflows.
- Locate Account Inbox and click its Display Name link.
- Click the pencil icon to enter edit mode.
- Check Enabled.
- Click Save to activate the workflow.
Step 5 - Monitor Inventory
EmpowerID continuously inventories the account store, identifying new, updated, or orphaned accounts.
- Navigate to Identity Lifecycle > Account Inbox.
- Use the tabbed views to monitor inventory:
- All – This tab displays a grid view of all user accounts and the status of those accounts in relation to the Account Inbox.
- Proposed – This tab displays a grid view of how the system would process user accounts if person provisioning is enabled for the account store containing the user accounts.
- Dashboard – This tab provides a quick summary of account inbox activity.
- Orphans – This tab displays a grid view of all user accounts without an EmpowerID Person.
Regular monitoring ensures that newly discovered accounts are processed correctly and remain synchronized with EmpowerID policies.