Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
186 changes: 185 additions & 1 deletion connection-guides/lms/sapsuccessfactors.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ flow you follow will depend on your use case.

- If you are working with an external LXB/LMS to pull data into your SAP instance, you will need to follow the Authentication Flow 1.
- If you are working with an external content provider to pull external content into your SAP instance, you will need to follow the Authentication Flow 2.
- If you need to write data to your SAP instance using Platform Token Server Authentication, you will need to follow the Authentication Flow 3.

# Authentication Flow 1: Linking your SAP instance library to an external LXB/LMS to pull data

Expand Down Expand Up @@ -499,7 +500,190 @@ The SSO configuration should use the following approach:
</Step>
</Steps>

## Linking your Account
# Authentication Flow 3: Platform Token Server Authentication (Write-Only)

<Note>
This authentication method is **write-only** and is used when you need to write data to your SAP SuccessFactors instance using OAuth2 with X.509 certificates.
</Note>

## Locating API Server

<Steps>
<Step title="Find the API Server">
SAP uses multiple API server addresses. You will need to look up the API server that corresponds to your tenant domain on this [table](https://help.sap.com/docs/SAP_SUCCESSFACTORS_PLATFORM/d599f15995d348a1b45ba5603e2aba9b/af2b8d5437494b12be88fe374eba75b6.html) under the `API Server` column.

For example, if your domain was `https://pmsalesdemo8.successfactors.com/` you would search for `salesdemo8` in the table.

<Frame>
<img className='rounded-md' style={{ margin: '0 auto', border: '1px solid #efefef' }} alt="API Server Example" src="/images/sapsuccessfactors/image1.png" />
</Frame>

Copy the value in the `API Server` column (remove the final forward-slash `/`). In this example, the value would be `https://apisalesdemo8.successfactors.com`.

Use this value as the `API Server` value when connecting SAP SuccessFactors to StackOne.
</Step>
</Steps>

### Finding the Learning Server URL

<Steps>
<Step title="Log into SAP">
Log into SAP SuccessFactors.
</Step>
<Step title="Access the Learning Module">
Type Learning Administration in the search bar and select the Learning Administration module.
</Step>
<Step title="Record Learning Module URL">
Look in the browser address bar for the URL and save the address.
<Frame>
<img className='rounded-md' style={{ margin: '0 auto', border: '1px solid #efefef' }} alt="Learning Server Example" src="/images/sapsuccessfactors/image10.png" />
</Frame>
In this case: https://sfcpart000906.scdemo.successfactors.com/ is the access point.

Use this value as the `Learning Domain URL` value when connecting SAP SuccessFactors to StackOne.
</Step>
</Steps>

## Finding Username

<Steps>
<Step title="Login to SAP SuccessFactors">
Login to SAP SuccessFactors.
</Step>

<Step title="Locate Your Username">
Select your profile image in the upper right-hand corner of the screen.

Your username is the value in parenthesis. Copy this value and note it as your `Username`.

<Frame>
<img className='rounded-md' style={{ margin: '0 auto', border: '1px solid #efefef' }} alt="Username Location" src="/images/sapsuccessfactors/image2.png" />
</Frame>
</Step>
</Steps>

## Finding Company ID

<Steps>
<Step title="Show Version Information">
Within the same dropdown from the previous step, select the Show version information option.
</Step>

<Step title="Locate Company ID">
Within the modal that appears, you will see `Company ID`. Copy and note down this value.

<Frame>
<img className='rounded-md' style={{ margin: '0 auto', border: '1px solid #efefef' }} alt="Company ID" src="/images/sapsuccessfactors/image3.png" />
</Frame>
</Step>
</Steps>

## Registering a new Client Application

<Steps>
<Step title="Search for Manage OAuth2 Client Applications">
In the upper right search bar, search for Manage OAuth2 Client Applications and select the option under Actions.

<Frame>
<img className='rounded-md' style={{ margin: '0 auto', border: '1px solid #efefef' }} alt="Manage OAuth2 Client Applications" src="/images/sapsuccessfactors/image4.png" />
</Frame>
</Step>

<Step title="Register Client Application">
Select Register Client Application.
</Step>

<Step title="Enter Application Details">
Enter an Application Name, e.g. `StackOne`.

Enter an Application URL. Note: This can be any URL and is not used in this integration.

<Frame>
<img className='rounded-md' style={{ margin: '0 auto', border: '1px solid #efefef' }} alt="Register Client Application" src="/images/sapsuccessfactors/image5.png" />
</Frame>
</Step>
</Steps>

## Generating X.509 Certificate

<Steps>
<Step title="Generate X.509 Certificate">
Press the Generate X.509 Certificate button.

Enter any Common Name(CN) for the certificate, e.g. `StackOne OAuth2`.

<Frame>
<img className='rounded-md' style={{ margin: '0 auto', border: '1px solid #efefef' }} alt="Generate X.509 Certificate" src="/images/sapsuccessfactors/image6.png" />
</Frame>
</Step>

<Step title="Copy the Certificate">
Press Generate.

Copy the value inside the X.509 Certificate section.

<Frame>
<img className='rounded-md' style={{ margin: '0 auto', border: '1px solid #efefef' }} alt="Copy X.509 Certificate" src="/images/sapsuccessfactors/image7.png" />
</Frame>
</Step>
</Steps>

## Downloading Private Key

<Steps>
<Step title="Download Private Key">
Press the Download button.

❗Caution: The downloaded file contains your private key. This should be handled securely, and this local file should be deleted after your account has been linked.
</Step>

<Step title="Copy the Private Key">
Select and copy the long string of characters between -----BEGIN ENCRYPTED PRIVATE KEY----- and -----END ENCRYPTED PRIVATE KEY-----

This value is your Private Key. Please keep it safe!
</Step>
</Steps>

## Finding API Key

<Steps>
<Step title="Locate API Key">
Your API Key is displayed on the Manage OAuth2 Client Applications screen above your X.509 Certificate.

<Frame>
<img className='rounded-md' style={{ margin: '0 auto', border: '1px solid #efefef' }} alt="API Key" src="/images/sapsuccessfactors/image8.png" />
</Frame>
</Step>
</Steps>

## Locating Learning Content Provider

<Steps>
<Step title="Note Provider Name">
Identify the Learning Content Provider name that will be used when connecting the account:

- If you previously configured OCN in Authentication Flow 2, use the provider name from your OCN property file.
- If you have not configured OCN (for example, you are only using Authentication Flow 3), use the provider name as it appears in SAP SuccessFactors Learning or as provided by your content provider.
</Step>
</Steps>

## Connecting Your Account

<Steps>
<Step title="Enter the Details">
Upon reaching the Link Account page, enter the gathered details and proceed by clicking the `Connect` button.

<Frame>
<img className='rounded-md' style={{ margin: '0 auto', border: '1px solid #efefef' }} alt="Link Account" src="/images/sapsuccessfactors/image9.png" />
</Frame>
</Step>
</Steps>

<Note>
Note: The integration may take up to 15 minutes to initially authenticate once the account has been connected. In the meantime, requests will return a 401: Unauthorized response.
</Note>

## Linking your Account (Flows 1 & 2)

<Steps>
<Step title="Enter the Details">
Expand Down