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。