Loading
識別使用者與管理存取
目錄
選取篩選

          沒有結果
          沒有結果
          以下是搜尋小祕訣

          檢查關鍵字的拼字。
          使用較常見的搜尋字詞。
          選取較少篩選條件以擴大您的搜尋。

          搜尋所有 Salesforce 說明
          設定 LinkedIn 驗證提供者

          設定 LinkedIn 驗證提供者

          設定 LinkedIn 作為驗證提供者,讓您的使用者透過其 LinkedIn 認證登入 Salesforce。

          必要版本

          提供版本:Lightning Experience 與 Salesforce Classic
          提供版本:EnterprisePerformanceUnlimitedDeveloper Edition
          需要的使用者權限
          檢視設定: 「檢視設定和組態」權限
          編輯設定:

          自訂應用程式

          管理驗證提供者權限

          若要將 LinkedIn 設定為驗證提供者,請完成下列工作。

          • 設定註冊處理常式。
          • 檢視 LinkedIn 範圍。
          • 設定 LinkedIn 應用程式。
          • 在 Salesforce 中定義 LinkedIn 提供者。
          • 更新 LinkedIn 應用程式,以使用 Salesforce 產生的回呼 URL 作為 LinkedIn OAuth 2.0 Redirect URL 中的項目。
          • 測試單一登入 (SSO) 連線。
          • 將 LinkedIn 驗證提供者新增至登入頁面。

          針對 Sandbox 使用個案,您可以略過這些步驟,然後使用 Salesforce 管理的 LinkedIn 應用程式。針對生產使用個案,請一律建立自己的 LinkedIn 應用程式,並針對驗證提供者使用其認證。Salesforce 管理的應用程式可能會遇到停機,不建議用於生產。

          備註
          備註 在 Spring ’26 及更新版本中建立的 LinkedIn 驗證提供者會使用 LinkedIn API v2。較舊的驗證提供者會使用 LinkedIn API v1。此外,所有使用 Salesforce 受管理 LinkedIn 應用程式的驗證提供者都會使用 LinkedIn API v1。

          設定註冊處理常式

          若要使用驗證提供者進行單一登入,您必須建立註冊處理常式。註冊處理常式會建立使用者,並更新透過身分提供者存取 Salesforce 的現有使用者。您可以使用 Apex 或 Flow Builder 設定註冊處理常式。如需詳細資訊,請參閱 建立驗證提供者註冊處理常式

          以下是 LinkedIn 驗證提供者的 Apex 註冊處理常式範例。此註冊處理常式會假設要求的範圍包含 r_liteprofile r_emailaddress。此外也假設使用者正在登入客戶入口網頁。

          備註
          備註 預設的註冊處理常式需要電子郵件。使用此要求以擷取目前已驗證成員的電子郵件地址。GET https://api.linkedin.com/v2/emailAddress?q=members&projection=(elements*(handle~)).
          範例
          範例
          //TODO:This auto-generated class includes the basics for a Registration
          //Handler class. You will need to customize it to ensure it meets your needs and
          //the data provided by the third party.
          global class LinkedInRegHandler implements Auth.RegistrationHandler {
              //Creates a Standard salesforce or a community user
              global User createUser(Id portalId, Auth.UserData data) {
                  if (data.attributeMap.containsKey('sfdc_networkid')) {
                      //We have a community id, so create a user with community access
                      //TODO: Get an actual account
                      Account a =[SELECT Id FROM account WHERE name = 'LinkedIn Account'];
                      Contact c = new Contact();
                      c.accountId = a.Id;
                      c.email = data.email;
                      c.firstName = data.firstName;
                      c.lastName = data.lastName;
                      insert(c);
                      //TODO: Customize the username and profile. Also check that the username 
                      //doesn't already exist and possibly ensure there are enough org licenses
                      //to create a user. Must be 80 characters or less.
                      User u = new User();
                      Profile p =[SELECT Id FROM profile WHERE name = 'Customer Portal Manager'];
                      u.username = data.firstName + '@sfdc.linkedin.com';
                      u.email = data.email;
                      u.lastName = data.lastName;
                      u.firstName = data.firstName;
                      String alias = data.firstName;
                      //Alias must be 8 characters or less
                      if (alias.length() > 8) {
                          alias = alias.substring(0, 8);
                      }
                      u.alias = alias;
                      u.languagelocalekey = UserInfo.getLocale();
                      u.localesidkey = UserInfo.getLocale();
                      u.emailEncodingKey = 'UTF-8';
                      u.timeZoneSidKey = 'America/Los_Angeles';
                      u.profileId = p.Id;
                      u.contactId = c.Id;
                      return u;
                  } else {
                      //This is not a community, so create a regular standard user
                      User u = new User();
                      Profile p =[SELECT Id FROM profile WHERE name = 'Standard User'];
                      //TODO: Customize the username. Also check that the username doesn't
                      //already exist and possibly ensure there are enough org licenses
                      //to create a user. Must be 80 characters or less
                      u.username = data.firstName + '@salesforce.com';
                      u.email = data.email;
                      u.lastName = data.lastName;
                      u.firstName = data.firstName;
                      String alias = data.firstName;
                      //Alias must be 8 characters or less
                      if (alias.length() > 8) {
                          alias = alias.substring(0, 8);
                      }
                      u.alias = alias;
                      u.languagelocalekey = UserInfo.getLocale();
                      u.localesidkey = UserInfo.getLocale();
                      u.emailEncodingKey = 'UTF-8';
                      u.timeZoneSidKey = 'America/Los_Angeles';
                      u.profileId = p.Id;
                      return u;
                  }
              }
              //Updates the user's first and last name
              global void updateUser(Id userId, Id portalId, Auth.UserData data) {
                  User u = new User(id = userId);
                  u.lastName = data.lastName;
                  u.firstName = data.firstName;
                  update(u);
              }
          }

          檢視 LinkedIn 範圍

          範圍會決定您在授權程序期間可從 LinkedIn 取得的使用者相關資訊。由於隱私權疑慮,LinkedIn 已將其 API 更新至 v2 以減少在成員登入時傳回開發人員應用程式的成員資訊數量。在 v2 中,LinkedIn 僅會傳回身分識別所需的成員資料重要部分。LinkedIn v2 精簡版設定檔會取代 v1 基本設定檔。精簡版設定檔包含成員的識別碼、名字、姓氏、婚前姓,以及設定檔圖片。如同在 v1 中,使用者必須先提供 LinkedIn 批准才能共用資訊。

          將 LinkedIn 設定為驗證提供者時,可以檢視 LinkedIn 應用程式設定,以及 Salesforce 驗證提供者設定中的範圍。您也可以使用欄位選取器來檢視 LinkedIn 使用者資訊端點查詢中的範圍。

          • 您可以在 LinkedIn 與 Salesforce 設定中將範圍值保留空白。Salesforce 包含 r_basicprofile,這僅能提供最基本的使用者資訊。它也提供 r_emailaddress,這包含使用者的電子郵件地址。
          • 以下是在 LinkedIn v2:GET https://api.linkedin.com/v2/me 中 ⁇ 取成員設定檔的要求。
          • Salesforce 需要使用者的電子郵件地址。您可以使用 r_emailaddress 提出擷取使用者電子郵件地址的個別要求。以下是擷取成員電子郵件地址的要求。

            GET https://api.linkedin.com/v2/emailAddress?q=members&projection=(elements*(handle~))

          設定 LinkedIn 應用程式

          請先在 LinkedIn 中設定應用程式,您才能為 Salesforce 設定 LinkedIn。

          1. LinkedIn 上登入您的開發人員帳戶。
          2. 從 LinkedIn,按一下您在頂端的設定檔圖片,然後選取「我的應用程式」。
          3. 按一下「建立應用程式」。
          4. 輸入應用程式設定。
          5. 記下用戶端識別碼及用戶端密碼。

          在 Salesforce 組織中定義 LinkedIn 提供者

          若要設定 LinkedIn 提供者,您需要 LinkedIn 用戶端識別碼與用戶端密碼。

          1. 進入「設定」,在「快速尋找」方塊中,輸入「驗證提供者」,按一下「驗證提供者」,然後按一下「新增」。
          2. 對於提供者類型,請選取「LinkedIn」。
          3. 輸入提供者的名稱。
          4. 輸入用於用戶端組態 URL 的 URL 尾碼。例如,若提供者的 URL 尾碼是 MyLinkedInProvider,則您的 SSO URL 將類似於 https://mydomain_url 或 community_url /services/auth/sso/MyLinkedInProvider
          5. 若為消費者密碼,請使用 LinkedIn 用戶端密碼。
          6. 若要使用 Apex 註冊處理常式,請執行下列步驟。
            1. 針對「註冊處理常式類型」,選取「Apex」。
            2. 針對「註冊處理常式」,選取實作 Auth.RegistrationHandler 介面的現有 Apex 類別。或者,若要為註冊處理常式建立範本,請按一下「自動建立註冊處理常式範本」。稍後編輯此類別,並在使用前修改預設內容。
          7. 若要為您的註冊處理常式使用流程,請執行下列步驟。
            1. 針對「註冊處理常式類型」,選取「流程」。
            2. 針對「註冊處理常式」,選取「身分使用者註冊」流程類型的現有流程。
            3. 選取預設設定檔。需要預設設定檔才能執行註冊處理常式。如果您未在此處指定預設設定檔,請在流程本身中設定預設設定檔。

              如果您使用「驗證提供者使用者註冊」流程範本,則您在此設定的設定檔會自動儲存在 defaultProfileId 變數中。

            4. 選取預設帳戶。如果您針對 Experience Cloud 網站使用驗證提供者,此帳戶會儲存新的內部使用者。

              如果您使用「驗證提供者使用者註冊」流程範本,則您在此設定的設定檔會自動儲存在 defaultAccountId 變數中。

          8. 針對「執行註冊身分」,選取執行使用者以執行 Apex 類別或流程。使用者必須擁有「管理使用者」權限。

            「執行註冊身分」提供註冊處理常式執行所在的內容。在生產中,您通常會針對「執行註冊身分」使用者建立系統使用者。如此一來,處理常式所執行的作業可輕鬆追蹤回註冊程序。例如,若連絡人已建立,代表系統使用者建立它。

          9. 或者,請設定這些欄位:
            • 若為授權端點 URL,請輸入 https://www.linkedin.com/oauth/v2/authorization
            • 若為權杖端點 URL,請輸入來自 LinkedIn 的 OAuth 權杖 URL。例如,https://www.linked.com/oauth/v2/accessToken。如需詳細資訊,請參閱使用 OAuth 2.0 概觀進行驗證
            • 若要變更從 LinkedIn 設定檔 API 要求的值,請輸入使用者資訊端點 URL。如需詳細資訊,請參閱設定檔 API。URL 的開頭必須為 https://api.linkedin.com/v2/me,且要求的欄位必須與要求的範圍對應。
            • 若為預設範圍,請輸入支援的值或以空格分隔的值,其代表從 LinkedIn 所取得的資訊。
            • 如果您輸入取用者金鑰與取用者密碼,SOAP API 回應中預設會包含取用者密碼。若要隱藏 SOAP API 回應中的密碼,請取消選取「在 SOAP API 回應中包含取用者密碼」。自 2022 年 11 月起,中繼資料 API 回應中一律會以預留位置值取代密碼。部署時,請將預留位置取代為純文字的取用者密碼,或稍後再透過使用者介面修改值。
            • 若為自訂錯誤 URL,請輸入回報任何錯誤的提供者要使用的 URL。
            • 針對圖示 URL,請將路徑新增至圖示,讓該圖示顯示成網站登入頁面上的按鈕。此圖示只會套用到 Experience Cloud 網站。將不會顯示在您的 Salesforce 登入頁面或「我的網域」登入 URL 上。使用者按一下按鈕即可透過網站的相關驗證提供者登入。您可以指定您自己影像的路徑,或將我們其中一個範例圖示的 URL 複製至該欄位。
            • 若要使用 LinkedIn 使用者的入口網頁,請從「入口網頁」下拉式清單中選取該入口網頁。
          10. 若要使用 Salesforce 多因素驗證 (MFA) 功能,而非身分提供者的 MFA 服務,請選取「針對此 SSO 提供者使用 Salesforce MFA」。此設定只會針對已直接套用 MFA 的使用者觸發 MFA。如需詳細資訊,請參閱將 Salesforce MFA 用於 SSO
          11. 儲存您的工作。

          在您定義驗證提供者後,Salesforce 會產生這些用戶端組態 URL。

          • 僅測試初始化 URL—使用此 URL 可確保協力廠商提供者設定正確。管理員會在瀏覽器中開啟此 URL,登入至協力廠商,之後透過屬性的對應重新導向至 Salesforce。
          • 單一登入初始化 URL—透過此 URL,使用協力廠商認證從協力廠商執行 SSO 至 Salesforce。使用者在瀏覽器中開啟此 URL,並登入協力廠商。協力廠商會建立使用者,或更新現有使用者。接著,協力廠商會以該使用者的身分將使用者登入 Salesforce。
          • 現有使用者連結 URL—使用此 URL 將現有 Salesforce 使用者連結至協力廠商帳戶。使用者會在瀏覽器中開啟此 URL,登入至協力廠商及 Salesforce,然後批准連結。
          • 僅 OAuth 初始化 URL—使用此 URL 取得協力廠商的 OAuth 存取權杖。使用者與 Salesforce 驗證,這樣協力廠商服務才能取得權杖。此流程不會提供給未來的 SSO 功能。
          • 回呼 URL—為驗證提供者回呼以進行設定的端點使用此 URL。驗證提供者必須使用各用戶端組態 URL 的資訊以重新導向至回呼 URL。

          用戶端組態 URL 支援更多要求參數,可讓您:

          • 將使用者導向至登入特定網站。
          • 從第三方取得自訂權限。
          • 驗證之後前往特定位置。

          更新 LinkedIn 應用程式

          在 Salesforce 中定義 LinkedIn 驗證提供者後,請返回 LinkedIn。更新您的應用程式,以使用 Salesforce 產生的回呼 URL 作為 LinkedIn OAuth 2.0 重新導向 URL 值。

          測試 SSO 連線

          在瀏覽器中,開啟「驗證提供者設定」頁面上的「僅測試初始化 URL」。它會將您重新導向至 LinkedIn 並要求您登入,接著將要求您授權應用程式。授權後,會將您重新導向至 Salesforce。

          將驗證提供者新增至登入頁面

          設定登入頁面,將驗證提供者顯示為登入選項。根據您是針對組織或 Experience Cloud 網站設定 SSO,此步驟將有所不同。

           
          正在載入
          Salesforce Help | Article