Aspnet cookie身份验证中间件,在第一个请求中进行身份验证

时间:2020-07-02 15:01:57

标签: c# asp.net-core cookies

我有一个AspNet应用程序用作API端点。

有一个中间件,用于从标头中检索令牌并在声明中加载角色。

然后,中间件调用SignInAsync并调用下一个请求委托。

但是,第一个请求始终是未经授权的,下一个请求可以。

很明显,AspNet创建了cookie,但在第一个请求时未对用户进行身份验证。

如何直接在第一个请求中对用户进行身份验证和授权?

1 个答案:

答案 0 :(得分:0)

所以最后我找到了一种使之工作的方法。

我在

之后添加了身份验证中间件
  httpContext.SignInAsync(claimsIdentity);

  httpContext.User.AddIdentity(claimsIdentity);

现在在第一个请求中直接标识了用户