【问题标题】:JWT authentication in SignalR Core from Angular来自 Angular 的 SignalR Core 中的 JWT 身份验证
【发布时间】:2018-03-25 10:30:01
【问题描述】:

帖子几乎与this 问题相同,但我使用的是新的 SignalRCore (1.0.0 alpha2)。
<PackageReference Include="Microsoft.AspNetCore.SignalR" Version="1.0.0-alpha2-final" />

在我的 .NET Core 2.0 中,我使用 OpenIddict 对服务器上的用户进行身份验证。在客户端我使用angular2-jwt

现在我需要知道如何使用Authorization header access_token 连接服务器?我假设在尝试连接服务器时应该使用自定义请求标头。

这可以用新的 SignalR Core 完成吗?我发现 this 线程提到 websockets 不支持自定义标头,但我想知道 SignalR Core 团队是否做了一些魔术来支持这种情况。

【问题讨论】:

    标签: authentication signalr jwt openiddict asp.net-core-signalr


    【解决方案1】:

    当您使用 JavaScript 客户端时这是不可能的,因为一些底层 API(如 webSocket)不允许设置标头。这就是您需要使用 queryString 的原因。另外,这个thread on github 可能有用。

    如果您正在使用 C# 客户端设置标头目前是不可能的,但这只是 API 的限制,应该在将来修复。

    编辑

    SignalR 现在拥有允许将 JWT 令牌传递给 C# 和 JavaScript 客户端的 API。现在也可以在使用 C# 客户端时设置标头。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-05-28
      • 2019-03-18
      • 1970-01-01
      • 2019-03-15
      • 1970-01-01
      • 1970-01-01
      • 2018-03-06
      • 2019-09-06
      相关资源
      最近更新 更多