多租户identityserver openid身份验证

时间:2016-06-05 17:23:19

标签: asp.net-identity asp.net-core-mvc identityserver4

我有一个多租户应用程序,允许每个租户拥有自己的子域/自定义域和身份验证。在此应用程序中,我使用OpenIdConnectAuthentication,是否可以使权限动态(例如,当租户具有子域tenant1.mysite.com或自定义域tenant1.com时 - 权限URL将是login.tenant1.mysite.com或登录。 tenant1.com)。

        var oidcOptions = new OpenIdConnectOptions
        {                
            AuthenticationScheme = "oidc",
            SignInScheme = "Cookies",

            Authority = *dynamic*,
            RequireHttpsMetadata = false,
            PostLogoutRedirectUri = *dynamic*,
            ClientId = "clientID",
            ClientSecret = "clientSecret",
            ResponseType = "code id_token",
            GetClaimsFromUserInfoEndpoint = true,
            SaveTokens = true
        };

我想过可能会创建一个中间件来覆盖UseOpenIdConnectAuthentication的构造函数,但它没有工作,现在我没有想法。

1 个答案:

答案 0 :(得分:0)

我也在处理这个问题,到目前为止,IdentityModel库看起来很有希望。

"您可以使用IdentityModel库以编程方式为授权端点创建URL" http://docs.identityserver.io/en/release/endpoints/authorize.html

IdentityModel库。 https://github.com/IdentityModel/IdentityModel2