当前位置: 首页 > 知识库问答 >
问题:

JWT/JSON Web令牌:在创建时在正文中传递令牌是否安全?

江展
2023-03-14

我是智威汤逊的新手。我有一个会话创建的endpoint。我的手机应用程序提出了一个请求。目前我有它,这样当用户成功登录时,我会在授权承载头中返回JWT:

new_conn
|> put_status(:created)
|> put_resp_header("authorization", "Bearer #{jwt}") #<-----------
|> render("show.json", session: user)

然而,从我的客户端阅读这是一个有点棘手的问题。我在JSON响应中返回它安全吗?

共有1个答案

卜泓
2023-03-14

当客户机将它们的凭据发送到服务器(将它们交换为令牌)时,最近发出的令牌可以作为文本或JSON在响应负载中返回,这取决于您:

HTTP/1.1 200 OK
Date: Wed, 19 Apr 2017 09:51:12 GMT
Content-Type: text/plain

xxxxx.yyyyy.zzzzz
HTTP/1.1 200 OK
Date: Wed, 19 Apr 2017 09:51:12 GMT
Content-Type: application/json

{ "token" : "xxxxx.yyyyy.zzzzz" }

您必须记住的是客户机和服务器之间的通信:必须通过HTTPS进行通信,以确保消息不会被篡改。

当客户机将令牌发送到服务器时,它应该在Authorization标头中发送(同样是通过HTTPS):

GET /api/greetings HTTP/1.1
Host: example.org
Authorization: Bearer xxxxx.yyyyy.zzzzz
 类似资料:
  • 在我最近的遭遇中,我试图实现在前端安全存储的JWT令牌。我以前的方法是在易受XSS攻击的sessionStorage中存储以及。现在,当过期时,我将调用endpoint来获取新的 之后,我们更改实现以防止XSS和CSRF。接下来,Local存储与Cookie 建议将访问令牌存储在内存中,并将刷新令牌存储在cookie中。所以从FE,我们无法访问cookie。(HTTPOnly cookie)和 现

  • 问题内容: 我目前正在使用Golang应用程序。我从客户端收到JWT令牌,在Go中,我需要对该令牌进行解码并获取以下信息:用户,名称等。我正在检查可用于处理JWT的库令牌,我来到https://github.com/dgrijalva/jwt- go ,但我看不到如何简单地制作所需的东西。 我有令牌,我需要将信息解码为地图或至少为json。在哪里可以找到如何做的指南?谢谢! 问题答案: 函数接受第

  • 我正在使用ADFS2.0和WIF来验证和授权我的用户使用ASP.NET MVC4应用程序WebAppa。WebAppA使用WebClient.DownloadString(url)调用另一个WebAppB,我希望将委托用户的凭据传递给WebAppB,以检索用户的定制内容。 我看到了几个web应用程序使用CreateChannelActingAs调用WCF服务的示例,但这与我的情况不同。 谢谢你的帮

  • 我正在构建一个基于令牌的身份验证(Node.js使用带有angular客户端的passport/JWT)。 用户输入凭证后,他将获得一个访问令牌,并在头中的每个请求中发送该令牌(头:bearer token)。 我不想每次他的访问令牌过期时都提示登录请求(我猜大约每天),我听说过刷新令牌。刷新令牌永不过期(或很少过期),并且能够无限期续订令牌。当访问令牌即将过期时,客户端可以通过发送刷新令牌来发送

  • 我正在PHP中使用私钥创建一个JWT令牌。为此,我使用OpenSSL库。在任何事情之前,我将共享我的代码: PHP 所以,这个JWT令牌将用于我试图访问的服务器中的身份验证。但我从外部服务器得到的响应是一个错误的请求,我的JWT令牌创建中出现了问题。 使用相同的凭据,我使用库尝试了javascript,然后它给了我正确的响应。 JAVASCRIPT中文 我可以清楚地看到的一个区别是,对于php端的

  • 问题内容: 我遇到一种情况,我想自己创建一个访问令牌(因此不能通过通常的过程)。我想出了这样的东西: 唯一的问题是我不确定如何创建OAuth2Authentication(在我的代码中带有xxx的部分)。我有用户和客户信息,我知道我想授予该令牌的单位。 问题答案: 在这里,根据使用的流程,您的用例可能会略有不同。这适用于密码授予流程。有一些自定义类,如令牌存储,令牌增强器等。但这实际上只是为满足我