設定入口網站的 OAuth2 提供者設定

OAuth 2.0 型的外部身分識別提供者涉及向協力廠商服務登錄「應用程式」,以取得「用戶端識別碼」和「用戶端密碼」組。 此應用程式經常需要指定重新導向 URL,讓身分識別提供者能夠將使用者傳送回入口網站 (信賴憑證者)。 用戶端識別碼與用戶端密碼會設定為入口網站設定,以便建立信賴憑證者與身分識別提供者之間的安全連線。 這些設定是根據 MicrosoftAccountAuthenticationOptionsTwitterAuthenticationOptionsFacebookAuthenticationOptionsGoogleOAuth2AuthenticationOptions 類別的屬性。

支援的提供者包括:

  • Microsoft 帳戶
  • Twitter
  • Facebook
  • Google
  • LinkedIn
  • Yahoo

建立 OAuth 應用程式

一般來說,如果 OAuth 提供者使用的應用程式設定需要重新導向 URI 值,請根據提供者執行重新導向 URI 驗證的方式指定 http://portal.contoso.com/ 或 http://portal.contoso.com/signin-[provider] (有些提供者要求指定完整的 URL 路徑以及網域名稱)。 將重新導向 URI 中的 [provider] 替換成提供者的名稱。

Google

Google OAuth2 API 認證指示

  1. 開啟 Google 開發人員主控台
  2. 建立 API 專案或開啟現有專案
  3. 瀏覽至 [API 與驗證] > [API],在 [社交平台類 API] 底下按一下 [Google+ API],然後按一下 [啟用 API]
  4. 瀏覽至 [API 與驗證] > [同意畫面]
    • 指定 [電子郵件地址]
    • 指定自訂 [產品名稱]
    • 按一下 [儲存]
  5. 瀏覽至 [API 與驗證] > [認證] 並建立新的用戶端識別碼

Facebook 應用程式設定

  1. 開啟 Facebook 開發人員應用程式儀表板
  2. 按一下 [Add a New App]
  3. 選取 [Website]
  4. 按一下 [Skip and Create App ID]

    • 指定 [Display Name]
    • 選取 [Category]
    • 按一下 [Create App ID]
  5. 在新應用程式的儀表板上,瀏覽至 [設定] > 基本,並新增下列詳細資料:

  6. 按一下 [Save Changes]

  7. 瀏覽至 [Status & Review] > [Status] 索引標籤
  8. 提示您對大眾提供應用程式和其所有功能時,選取 [Yes]。您必須已在上述步驟 5 中填入有效的資料,才能啟用此設定。

Microsoft 應用程式設定

  1. 開啟 Microsoft 帳戶開發人員中心
  2. 按一下 [建立應用程式] 並指定 [應用程式名稱]
  3. 按一下 [我接受],接受條款及條件
  4. 瀏覽至 [設定] > [API 設定],並設定重新導向 URL 為 http://portal.contoso.com/signin-microsoft

Twitter 應用程式設定

  1. 開啟 Twitter 應用程式管理
  2. 按一下 [建立新應用程式]

  3. 按一下 [建立您的 Twitter 應用程式]。

LinkedIn 應用程式設定

  1. 開啟 LinkedIn 開發人員網路
  2. 按一下 [新增應用程式]

  3. 按一下 [新增應用程式]

Yahoo! YDN 應用程式設定

  1. 開啟 Yahoo! 開發人員網路
  2. 按一下 [建立應用程式]

    • 指定 [應用程式名稱]
    • 應用程式類型:Web 應用程式
    • 回呼網域:portal.contoso.com
  3. 按一下 [建立應用程式]

使用 OAuth2 建立網站設定

每個提供者的應用程式儀表板將會顯示每個應用程式的用戶端識別碼 (應用程式識別碼、消費者金鑰) 和用戶端密碼 (應用程式密碼、消費者密碼)。 使用這兩個值設定入口網站設定。

備註

標準 OAuth2 設定只需要下列設定 (選擇 Facebook 為例):

  • Authentication/OpenAuth/Facebook/ClientId
  • Authentication/OpenAuth/Facebook/ClientSecret

將網站設定名稱中的 [provider] 標籤替代為特定身分識別提供者名稱:Facebook、Google、Yahoo、Microsoft、LinkedIn 或 Twitter。

網站設定名稱 描述
Authentication/Registration/ExternalLoginEnabled 啟用或停用外部帳戶登入和註冊。 預設:true
Authentication/OpenAuth/[provider]/ClientId 必要。 來自提供者應用程式的用戶端識別碼值。 它也可能稱為「應用程式識別碼」或「消費者金鑰」。 下列為允許的設定名稱,以提供回溯相容性:Authentication/OpenAuth/Twitter/ConsumerKey
  • Authentication/OpenAuth/Facebook/AppId
  • Authentication/OpenAuth/LinkedIn/ConsumerKey
Authentication/OpenAuth/[provider]/ClientSecret 必要。 來自提供者應用程式的用戶端密碼值。 它也可能稱為「應用程式密碼」或「消費者密碼」。 下列為允許的設定名稱,以提供回溯相容性:Authentication/OpenAuth/Twitter/ConsumerSecret
  • Authentication/OpenAuth/Facebook/AppSecret
  • Authentication/OpenAuth/LinkedIn/ConsumerSecret
Authentication/OpenAuth/[provider]/AuthenticationType OWIN 驗證中介軟體類型。 範例:yahoo。 MSDN:authenticationoptions.authenticationtype
Authentication/OpenAuth/[provider]/Scope 要求的權限的逗號分隔清單。 MSDN:microsoftaccountauthenticationoptions.scope
Authentication/OpenAuth/[provider]/Caption 使用者可在登入使用者介面上顯示的文字。 MSDN:microsoftaccountauthenticationoptions.caption
Authentication/OpenAuth/[provider]/BackchannelTimeout 後方通道通訊的逾時值 (毫秒)。 MSDN:microsoftaccountauthenticationoptions.backchanneltimeout
Authentication/OpenAuth/[provider]/CallbackPath 將會傳回使用者代理程式的應用程式基底路徑內的要求路徑。 MSDN:microsoftaccountauthenticationoptions.callbackpath
Authentication/OpenAuth/[provider]/SignInAsAuthenticationType 另一個驗證中介軟體的名稱,將負責實際發行 userClaimsIdentityMSDN:microsoftaccountauthenticationoptions.signinasauthenticationtype
Authentication/OpenAuth/[provider]/AuthenticationMode OWIN 驗證中介軟體模式。 MSDN:security.authenticationoptions.authenticationmode

請參閱

設定 Dynamics 365 入口網站驗證
設定入口網站的驗證身分
入口網站的 OpenID Connect 提供者設定
入口網站的 WS-Federation 提供者設定
入口網站的 SAML 2.0 提供者設定
入口網站的 Facebook 應用程式 (頁面索引標籤) 驗證