身份验证后如何从控制器中查找 OAuth 流类型?
how to find OAuth flow type from controller after authentication?
我使用 IdentityServer4 来保护我基于 .Net Core 的 API。在我的 API 控制器中,我需要确定客户端正在使用哪种类型的身份验证流程(客户端凭据、授权代码等)。但我无法从 ClaimsPrincipal 或其他任何地方找到它。如何从 API 控制器找到流量?
对于 ASP.NET Core 中的 WEB.API,您总是在启动时使用 AddJwtBearer 方法 class 来保护它。它将查看传入请求,然后如果找到有效令牌,则创建一个 ClaimsPrincipal 用户。
那么,如果您在 ClaimsPrincipal 中没有看到任何声明,那么这可能取决于许多其他因素,您的访问令牌包含什么?以及你做了什么 ClaimsMapping。
喜欢这个图片展示:
要在 API 中区分客户端,您可以在 IdentityServer 中使用 ClientClaims。
喜欢我训练中的这张图片 classes 显示:
我使用 IdentityServer4 来保护我基于 .Net Core 的 API。在我的 API 控制器中,我需要确定客户端正在使用哪种类型的身份验证流程(客户端凭据、授权代码等)。但我无法从 ClaimsPrincipal 或其他任何地方找到它。如何从 API 控制器找到流量?
对于 ASP.NET Core 中的 WEB.API,您总是在启动时使用 AddJwtBearer 方法 class 来保护它。它将查看传入请求,然后如果找到有效令牌,则创建一个 ClaimsPrincipal 用户。
那么,如果您在 ClaimsPrincipal 中没有看到任何声明,那么这可能取决于许多其他因素,您的访问令牌包含什么?以及你做了什么 ClaimsMapping。
喜欢这个图片展示:
要在 API 中区分客户端,您可以在 IdentityServer 中使用 ClientClaims。
喜欢我训练中的这张图片 classes 显示: