我有一个多租户应用程序,允许每个租户拥有自己的子域/自定义域和身份验证。在此应用程序中,我使用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的构造函数,但它没有工作,现在我没有想法。
答案 0 :(得分:0)
我也在处理这个问题,到目前为止,IdentityModel库看起来很有希望。
"您可以使用IdentityModel库以编程方式为授权端点创建URL" http://docs.identityserver.io/en/release/endpoints/authorize.html
IdentityModel库。 https://github.com/IdentityModel/IdentityModel2