Configuring Authorization Providers: Twitter
The Authorization Provider page allows staff users to configure alternate means to register for or log in to a Community Portal.
Salesforce will only allow one email per user. Therefore, a unique email must be used for each federated login. Otherwise an Error page will display notifying the user that the authentication attempt has failed.
Configure Twitter as an Authorized Provider:
Navigate to https://developer.twitter.com
Sigh in to an existing Twitter account.
If no Twitter account currently exists, create a new account. Confirm the new Twitter account via email on file.
If this is for implementation purposes, use the customer's preferred Twitter account. In Tools, click Manage Your Apps. Next, select the app and in Application Settings, click Keys and Access Tokens. Click the Create my Access Token. Navigate to Salesforce to create an Auth. Provider.
Click Create New App button to return the Create an application form.
Type the requested information, for the Developer Agreement checkbox, check the Yes, I agree, and click Create your Twitter application.
Populate the desired fields below:
Name-This is used to attribute the source of a tweet and in user-facing authorization screens. 32 characters max.
Description-Displays in user-facing authorization screens. Between 10 and 200 characters max.
Website-The application's publicly accessible home page, where users can go to download, make use of, or find out more information about the application. This fully-qualified URL is used in the source attribution for tweets created by the application and will be shown in user-facing authorization screens.
Click Keys and Access Tokens and click Create my Access Token.
Open up a new tab and navigate to Salesforce environment.
The next step will be to create an Authorized Provider in Salesforce.
Under the Administer heading, expand Security Controls and click Auth. Providers.
On the Auth. Providers page, click the New button.
From the Provider Type picklist, select Twitter.
Populate the desired fields below:
Name- Enter a unique, identifying name for the Auth. Provider.
URL Suffix- Enter a value to use in the callback URL. This field will default to the value entered in the Name field.
Consumer Key- Paste the Client ID returned in earlier in the process.
Consumer Secret- Paste the Client Secret returned in earlier in the process.
Default Scopes- Enter the level of access that this user has to that profile, i.e., read-only access or profile email openid. Otherwise, the field will default to Salesforce.
Custom Error URL- Enter a URL to display a custom error message.
Custom Logout URL- Enter a URL to display a logout error message
Registration Handler- Enter "TwitterAuthRegHandler" into the lookup.
Execute Registration As- Enter the name of a full user in the system associated to a Role. Cannot be a Community Portal User.
Portal- Leave as "None."
Icon URL- Enter a secure URL to the icon, or choose from among Google's sample icons.
The Auth. Provider record populates the Client Configuration fields:
Test-Only Initialization URL
Single Sign-On Initialization URL
Existing User Linking URL
OAuth-Only Initialization URL
Copy the Callback URL and navigate to the Twitter Developers Console tab in the browser window, click the Settings tab.
Paste the Callback URL into the Callback URL field and click Update Settings.
Next step is to Enable Social Login.
In the Quick Find Field, search Sites.
Under the Digital Experiences heading, select All Sites.
Click Workspaces link next to the intended Community Portal. This will open a new Community Portal Workspaces tab.
The the My Workspaces section, click Administration.
From the left nav, click Login & Registration.
From the Login & Registration page, check the Google checkbox and click Save.
Open a new tab, navigate to the Communities app in Salesforce, and select the Sites tab.
Navigate to the Community Portal's related Site record and click Edit.
Select the Auth Provider Default Account using the lookup.
Copy the Single Sign-On Initialization URL generated during the Auth. Provider configuration and paste it into the Twitter Login URL field.
Authenticated and unauthenticated users can log in to the Community Portal through their LinkedIn accounts.