2016-12-22 45 views
0

我現在有identityserver3設置,我有3個identityproviders配置: - 本地 - 谷歌 - ADFSIdentityserver3 - 選擇Identityprovider客戶應使用

我使用OIDC客戶端-JS(https://github.com/IdentityModel/oidc-client-js)多個客戶端。

現在我想指定客戶端應該使用哪個身份提供者登錄。所以可以說:

  • 客戶端A可讓用戶選擇以在使用哪個提供商
  • 客戶端B登錄當地
  • 客戶端C日誌與谷歌
  • 客戶d日誌與ADFS

客戶端A的情況是默認行爲,我有這個工作。我的問題是我如何設置客戶端B,C和D?

回答

1

在您的啓動時檢查以下功能,在我的情況「Google」中查看您稱爲您的IdentityProvider的內容。

public static void ConfigureIdentityProviders(IAppBuilder app, string signInAsType) 
    { 
     app.UseGoogleAuthentication(new GoogleOAuth2AuthenticationOptions 
     { 
      AuthenticationType = "Google", 

在您的客戶端中,將idp的acr_value設置爲您設置的值。

let userManagerSettings: Oidc.UserManagerSettings = { 
     acr_values: "idp:Google", 

現在,客戶端將自動重定向到正確的identityprovider

0

按照IdentityServer3 documentation,你需要配置IdentityProviderRestrictions爲每個客戶端。如果只配置了一個身份提供者,IdSrv3將自動重定向。

相關問題