The EmpowerID SuccessFactors Connector is an essential integration tool that connects EmpowerID's Identity Management platform with SAP SuccessFactors. This connector is designed to pull user information from SuccessFactors into EmpowerID, ensuring that user identities, roles, and related attributes are consistently reflected within EmpowerID. Using the SCIM 2.0 protocol and the OData protocol for data retrieval, the connector ensures consistent and reliable data synchronization of data across all connected back-end user directories.
...
Architecture Overview
The architecture of this connector the EmpowerID SuccessFactors Connector is built around three core components: the EmpowerID Microservice, the EmpowerID Account Store, and the OData Layer. These components facilitate a secure, efficient, and reliable integration between EmpowerID and SAP SuccessFactors, ensuring user data is accurately retrieved, processed, and synchronized.
...
The above architectural flowchart illustrates how these components interact to ensure seamless data synchronization and management between EmpowerID and SAP SuccessFactors.
SAP SuccessFactors Microservice
The SAP SuccessFactors Microservice serves as is the central processing unit within the connector’s architecture. Deployed on an Azure app service, this microservice is responsible for retrieving and processing retrieves and processes user information from SuccessFactors. The microservice periodically queries SuccessFactors to pull the latest user data, ensuring that updates to user profiles or organizational roles are accurately captured within EmpowerID. By leveraging Azure's cloud infrastructure, the microservice benefits from high availability, scalability, and integrated security features, ensuring reliable and secure data processing.
...
The SAP SuccessFactors Account Store is a specialized data repository within the connector architecture, designed to securely store the identity information retrieved from SuccessFactors. The account store serves as is a central location within EmpowerID where SuccessFactors user data is synchronized and maintained. This setup ensures that the information pulled from SuccessFactors is readily available for identity management and governance purposes within EmpowerID, enabling organizations to enforce policies and manage access rights based on accurate and up-to-date user data.
...
The OData Layer facilitates the retrieval of user information from SuccessFactors. Positioned between the Azure Tenant and SuccessFactors, this layer utilizes the OData protocol to execute queries against the SuccessFactors database. The OData protocol allows the connector to efficiently filter, sort, and retrieve specific user data as needed, ensuring that only the relevant information is pulled into EmpowerID. This capability is essential for maintaining an optimized and performant integration, as it minimizes the amount of data processed while ensuring that all necessary identity information is accurately captured.
Inventory Objects and their corresponding components in EmpowerID
Users in SAP SuccessFactors are cataloged as accounts within EmpowerID, with their information .
Data Inventory and Account Management
The EmpowerID SuccessFactors Connector goes beyond just retrieving and storing data—it systematically inventories and manages user accounts based on the data retrieved from SAP SuccessFactors. Here’s how this process works:
Inventory Objects and Data Retrieval
EmpowerID uses the SCIM 2.0 protocol to connect to the SAP SuccessFactors microservice, facilitating integration with SuccessFactors. This microservice is responsible for invoking the OData protocol to retrieve user data. The OData layer efficiently queries SuccessFactors, gathering comprehensive user information, including personal details, employment status, and future hires scheduled up to 30 days in advance.
Once the microservice retrieves the user data, it converts it into a SCIM response format. This SCIM response is then sent back to EmpowerID, where it is processed further.
Inventory Objects and Their Corresponding Components in EmpowerID
Once user data is retrieved and processed, EmpowerID catalogs users in SAP SuccessFactors as accounts within its system. The information is mapped to the corresponding fields in the Account table of the EmpowerID Identity and Resource Warehouse. EmpowerID inventories a comprehensive set of user data, including personal and employment details , as well as and future hires, up to 30 days in advance.
Depending on the configuration of the account store, EmpowerID can automatically provision Person objects from these user accounts. These Person objects are then fully integrated into EmpowerID's Joiner, Mover, and Leaver processes, enabling streamlined management of user lifecycle events. This integration supports efficient handling of user transitions within the organization, from onboarding new hires (Joiner) to managing role and location changes (Mover) to processing terminations (Leaver).
Object in SuccessFactors | Component in EmpowerID |
---|---|
User | Account |
Attribute Mapping
The table below EmpowerID maps user attributes from SAP SuccessFactors to the appropriate fields within the EmpowerID system to facilitate seamless data integration. Below is a table that shows the attribute mappings of SAP SuccessFactors users to EmpowerID. for personal and employment data:
Personal Data Attribute Mapping
SuccessFactors Attribute | SCIM Attribute | EmpowerID Person Attribute |
---|---|---|
User.FirstName | Name.GivenName | FirstName |
User.LastName | Name.FamilyName | LastName |
personalInfoNav.MiddleName | Name.MiddleName | MiddleName |
User.Formatted | DisplayName | DisplayName |
PerPerson.DateOfBirth | additionalDataExtension.DateOfBirth | DateOfBirth |
personalInfoNav.Gender | additionalDataExtension.Gender | Gender |
homeAddressNavDFLT.Country | addresses.country && user.Country | Country |
homeAddressNavDFLT.ZipCode | address.PostalCode | ZipCode |
homeAddressNavDFLT.State | address.Region && user.State | State |
homeAddressNavDFLT.Address1 | address.StreetAddress | StreetAddress |
homeAddressNavDFLT.City | address.Locality && user.City | City |
employee.PersonExternalId | user.UserName , User.Id , user.ExternalId | Username , Id , LogonName |
emailNav.Value | email.Value | |
PerPhone.PhoneNumber | phoneNumber.Value | HomePhone |
User.EmpInfo.StartDate | enterpriseDataExtension.StartDate | ValidFrom |
User.EmpInfo.EndDate | enterpriseDataExtension.EndDate | AccountExpires |
User.custom01 | enterpriseDataExtension.custom01 | CustomAttribute01 |
Employment Data Attribute Mapping
SuccessFactors Attribute | SCIM Attribute | EmpowerID Person Attribute |
---|---|---|
EmploymentNav.JobInfo.Department | enterpriseUserExtension.Department | Department |
EmploymentNav.JobInfo.Division | enterpriseUserExtension.Divsion | Division |
EmploymentNav.JobInfo.SeqNumber | enterpriseUserExtension.EmployeeNumber | EmployeeId |
EmploymentNav.JobInfo.ManagerId | enterpriseUserExtension.Manager.Value | ManagerId |
EmploymentNav.JobInfo.CostCenterNav.Name | enterpriseUserExtension.CostCenter | CostCenter |
EmploymentNav.JobInfo.StartDate | enterpriseDataExtension.StartDate | ValidFrom |
EmploymentNav.JobInfo.EndDate | enterpriseDataExtension.EndDate | AccountExpires |
EmploymentNav.JobInfo.JobCode | enterpriseDataExtension.JobCode | JobCode |
EmploymentNav.JobInfo.JobTitle | enterpriseDataExtension.JobTitle | JobTitle |
EmploymentNav.JobInfo.CompanyNav.Name_en_US | enterpriseDataExtension.CompanyName | Company |
EmploymentNav.JobInfo.WorkLocation | enterpriseDataExtension.WorkLocation | OfficeLocation |
EmploymentNav.JobInfo.EmployeeStatusNav.Status | enterpriseDataExtension.EmployeeStatus | EmployeeStatus |
EmploymentNav.JobInfo.CostCenterNav.CostCenterDescription | enterpriseDataExtension.CostCenterDescription | CostCenterDescription |
EmploymentNav.JobInfo.CompanyNav.Name | enterpriseDataExtension.CompanyDescription | CompanyDescription |
EmploymentNav.JobInfo.BusinessUnit | enterpriseDataExtension.BusinessUnit | BusinessUnit |
EmploymentNav.JobInfo.BusinessUnitNav.Name(EmploymentNav.JobInfo.BusinessUnitNav.ExternalCode) | enterpriseDataExtension.BusinessUnitDescription | OrgUnit |
EmploymentNav.JobInfo.IsFulLTimeEmployee | enterpriseDataExtension.IsFullTimeEmployee | IsFulLTimeEmployee |
EmployeeNav.IsContigentWorker | enterpriseDataExtension.IsContigentWorker | IsContigentWorker |
EmployeeNav.JobInfo.PositionNav.Code | enterpriseDataExtension.PositionCode | PositionCode |
employeeNav.LastDayWorked | enterpriseDataExtension.LastDayWorked | LastDayWorked |
employmentNav.OriginalStartDate | enterpriseDataExtension.OriginalStartDate | OriginalHireDate |
employmentNav.ServiceDate | effectiveStartDate |
...