繁体   English   中英

WebAssembly Blazor 在 IIS 上部署时不使用令牌

[英]WebAssembly Blazor not using token when deployed on IIS

我目前正在开发一个使用 Identity Server 4 的 WebAssembly Blazor 应用程序。如此处所述https://docs.microsoft.com/en-us/aspnet/core/blazor/security/webassembly/hosted-with-identity-server? view=aspnetcore-3.1&tabs=visual-studio

当我在本地调试或部署到 Azure 时,一切正常。 我可以登录,并且 WebAssembly 客户端将令牌用于所有未来的请求。 但是,当我将应用程序部署到 IIS 时,我陷入了登录循环。 在服务器上没有记录错误并且登录成功。 在客户端上,我看到 POST 到 /connect/token 有一个有效的令牌作为响应(我通过 Postman 使用令牌进行了检查)。 但是,在我看到它记录到控制台之后,客户端似乎忽略了令牌原因:

Info: Microsoft.AspNetCore.Authorization.DefaultAuthorizationService[2]
  Authorization failed.

然后它重定向我再次登录。 对我来说更奇怪的是,在 IIS 服务器上本地也不会发生这种情况。 我真的很困惑为什么只在 IIS 上远程使用而不是在 Azure 上发生这种情况。 希望有人能指出我正确的方向。

问题是 IIS 服务器时间不同步。 所以在本地主机上它工作得很好,但远程连接返回了一个已经过期的令牌。 Blazor 的授权服务的日志记录很少,并且没有显示它因为令牌过期而丢弃令牌。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM