NetCore 中 OAuthOptions 上 CallbackPath 的通配符
Wildcard for CallbackPath on OAuthOptions in NetCore
我想知道是否有任何方法可以指定允许在 URL 中使用通配符占位符的 CallbackPath,例如租户名称
CallbackPath = new PathString(@"/*/Authentication/");
或者我们在整个项目中称其为 tenantId
endpoints.MapControllerRoute(
name: "SignInCallback",
//pattern: "signin/{tenantId}", WORKS
pattern: "{tenantId}/Authentication/", DOES NOT WORK
defaults: new { controller = "Home", action = "Index" }
);
所以我尝试了这个
CallbackPath = new PathString(@"/{tenantId}/Authentication/");
两次远射都没有奏效。
我不是绝对需要这个,但这是一个新项目,这意味着我们不需要迁移所有 URL 让我们的租户使用 signin/
目前有 {tenantId}/Authentication/
我认为您误解了 CallbackPath
的用法。 OpenID Connect 中间件中的 CallbackPath
是用于 OpenID Connect 协议身份验证流程的内部路径。这用于在身份提供者对用户进行身份验证后识别应用程序的路径。您不需要动态更改 CallbackPath
,它在多租户应用程序中可以相同。您可以在 JWT 令牌中区分租户和租户声明,CallbackPath
是内部的 url,它不能用于将用户重定向到应用程序中的不同 areas/tenant。
我想知道是否有任何方法可以指定允许在 URL 中使用通配符占位符的 CallbackPath,例如租户名称
CallbackPath = new PathString(@"/*/Authentication/");
或者我们在整个项目中称其为 tenantId
endpoints.MapControllerRoute(
name: "SignInCallback",
//pattern: "signin/{tenantId}", WORKS
pattern: "{tenantId}/Authentication/", DOES NOT WORK
defaults: new { controller = "Home", action = "Index" }
);
所以我尝试了这个
CallbackPath = new PathString(@"/{tenantId}/Authentication/");
两次远射都没有奏效。
我不是绝对需要这个,但这是一个新项目,这意味着我们不需要迁移所有 URL 让我们的租户使用 signin/
目前有 {tenantId}/Authentication/
我认为您误解了 CallbackPath
的用法。 OpenID Connect 中间件中的 CallbackPath
是用于 OpenID Connect 协议身份验证流程的内部路径。这用于在身份提供者对用户进行身份验证后识别应用程序的路径。您不需要动态更改 CallbackPath
,它在多租户应用程序中可以相同。您可以在 JWT 令牌中区分租户和租户声明,CallbackPath
是内部的 url,它不能用于将用户重定向到应用程序中的不同 areas/tenant。