Anchor | ||||
---|---|---|---|---|
|
...
- Start the WSO2 Identity Server if it is not started up already and log in using the email you configured in the realm as instructed above in step 3 of Configuring the Identity Server.
- On the Management Console, click on Add under Identity Providers.
- In the form that appears, provide a name for your identity provider by filling in the Identity Provider Name. You can use "Salesforce.com" as an example, but this can be any name you choose. See Configuring an Identity Provider for information on registering and configuring an identity provider.
Upload the Salesforce public certificate that you generated and saved in step 7 under Configuring Salesforce.
Do this by clicking the Choose File button next to Identity Provider Public Certificate.Info title Why is the certificate needed? The Identity Provider's public certificate is used for SSL communication, to verify the signed data that comes from the Identity Provider and to send encrypted data to the Identity Provider.
Expand the Claim Configuration section of the form, followed by the Basic Claim Configuration section, and select Define Custom Claim Dialect.
Info We are adding a claim map in order to provision the users claim values to salesforce when outbound provisioning users to salesforce via WSO2 Identity Server. Here, the Identity Provider Claim URI is the claim URI in Salesforce, which maps local claim URI in WSO2 Identity Server. Read more about Claim Management.
For more information on configuring advanced claims, see Configuring Claims for an Identity Provider.
Click Add Claim Mapping and add the following claims.
Local claims in WSO2 IS are unique URIs. These are mapped to the attributes required by salesforce to create a new profile. Therefore, in this step you are mapping the attributes required by Salesforce to a unique URI. Now, when creating a new profile/user WSO2 IS sends these values to the correct attribute of Salesforce.Identity Provider Claim URI Local Claim URI Alias http://wso2.org/claims/givenname
Email http://wso2.org/claims/emailaddress
EmailEncodingKey http://wso2.org/claims/otherphone
LanguageLocaleKey http://wso2.org/claims/dob
LastName http://wso2.org/claims/lastname
LocaleSidKey http://wso2.org/claims/primaryChallengeQuestion
ProfileId http://wso2.org/claims/role
TimeZoneSidKey http://wso2.org/claims/challengeQuestion1
UserPermissionsCallCenterAutoLogin http://wso2.org/claims/telephone
UserPermissionsMarketingUser http://wso2.org/claims/mobile
UserPermissionsOfflineUser http://wso2.org/claims/country
Username http://wso2.org/claims/emailaddress
- Expand the Advanced Claim Configuration section.
- Select the Claim URI you added from the Provisioning Claim Filter dropdown and click Add Claim.
For each Claim URI, enter a default value as shown in the following table. The default values are used when creating the role in Salesforce.
For example, the alias, email, profile ID and all the values listed below are shown when a user is created.
These are sample values to help you understand better about claim URI and its value types.Claim URI Default Value Alias Samuel
Email samuel@wso2.com
EmailEncodingKey UTF-8
LanguageLocaleKey en_US
LastName Gnaniah
LocaleSidKey en_US
ProfileId 00e90000001aV2o
The users that are added using WSO2 Identity Server are added to this profile in Salesforce. For more information on the context of profiles in Salesforce, see the Salesforce tutorial.Tip Tip: The ProfileId value refers to the ID of the profile you created in Salesforce (step 6 of Configuring Salesforce). If it is the Chatter Free User profile you created, navigate to the profile in Salesforce to find the profile ID. You can do this by clicking Profiles under Manage Users in Salesforce and clicking Chatter Free User.
Copy the URL and decode it using a URL decoder. You get an output similar to what is shown below:
https://wso2-is-sso-dev-ed.lightning.force.com/one/one.app#/setup/page?nodeId=EnhancedProfiles&address=/00e90000001aV2o?isdtp=p1&a:t=1509949702148
In this case 00e90000001aV2o is your profile ID. Similarly, enter your Profile ID.
TimeZoneSidKey America/Los_Angeles
UserPermissionsCallCenterAutoLogin false
UserPermissionsMarketingUser false
UserPermissionsOfflineUser false
Username samuel@wso2.com
- Expand the Outbound Provisioning Connectors section followed by the Salesforce Provisioning Configuration section.
- Do the following configurations for Salesforce provisioning. For more information on any of these fields, see Configuring Salesforce provisioning.
- Select Enable Connector to enable the Salesforce connector.
- Enter the API version. This is the version of the API you are using in Salesforce.
Follow the steps given below to get the API version:- To obtain this, log into https://login.salesforce.com.
- Search for API in the Quick Find search box and click API.
- Generate any one of the WSDL's to check the version. You are navigated to page with XML syntaxes.
- On the top, it will mention as "
Salesforce.com Enterprise Web Services API Version <VERSION>
". For example:Salesforce.com Enterprise Web Services API Version 41.0
- Enter this value for the API version in the following format:
v<VERSION_NUMBER>
. For example:v41.0
.
Enter the Domain. If you do not have a Salesforce domain, you need to create a domain by logging into https://login.salesforce.com.
Expand title Click here for more information on creating the domain on Salesforce. Insert excerpt Logging in to Salesforce with Facebook Logging in to Salesforce with Facebook nopanel true Info - Search for My Domain using the Quick Find search box and click My Domain.
You see the domain as follows: Your domain name is<DOMAIN>-dev-ed.my.salesforce.com
- Make sure you enter the domain with an HTTPS prefix so that it resembles a URL:
https://<DOMAIN>-dev-ed.my.salesforce.com
.
- Search for My Domain using the Quick Find search box and click My Domain.
Enter the Client ID. This is the Consumer Key obtained in step 5 when configuring Salesforce.
Expand title Did not save the details? Click here for more information on getting the details. - Search for App Manager using the Quick Find search box and click App Manager.
- Click the expand button for your Connected App and click View.
- You are navigated to the page that has the Client ID and Client Secret of the app under API (Enable OAuth Settings).
- Enter the Client Secret. This is the Consumer Secret obtained in step 5 when configuring Salesforce.
- Enter the Username. This is the Salesforce username.
Enter the Password. This is the Salesforce password and must be entered along with the security token. So you would enter this in the following format:
<password><security_token
>
For example, if your password istestpassword
and your security token is37f37f4433123
, the value you would enter here istestpassword37f37f4433123
.Tip Expand title Where can I get the security token? - Log in to Salesforce: https://login.salesforce.com/
- Click on your avatar and click My Settings. You are navigated to the Personal Information page.
- On the left navigation, click Reset My Security Token.
Click Reset Security Token.
An email is sent to you with the new security token. Check the email of the email address you configured for Salesforce.
- Click Register.
...
- In the Main menu under the Identity section, click Resident under Service Providers.
- Expand the Outbound Provisioning Configuration in the screen that appears.
Select the identity provider you configured from the drop down and click the button.
Info If you enable Blocking, Identity Server will wait for the response from the Identity Provider to continue.
If you enable Enable Rules and and Blocking, blocking will block the provisioning till the rule completely evaluate and get the response back to the WSO2 IDP. Afterwards, you need to enable the the XACML policy. For more information, see Rule Based Provisioning
- Click Update.
...