问题标签 [pyjwt]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1033 浏览

python-3.x - 警告:pyjwt 1.1.0 不提供额外的“加密”

我收到错误

警告:pyjwt 1.1.0 不提供额外的“加密”

对于 Docker 命令

在安装 PyJWT==1.7.1 时,是否有解决此警告的解决方案?

0 投票
0 回答
345 浏览

python - PyJWT does not decode RS256 unencrypted token, Could not deserialize key data error

I am trying to decode a JWT token. The token is signed but is not encrypted (so for instance it is decodeable by jwt.io webpage).

I have the dependency in requirements.txt: PyJWT[crypto]==2.0.1. Which supposed to install both PyJWT and cryptography library.

and I have the code like so

(RS256 returned by jwt.io when trying to decode it). So far I left public key parameter empty.

which currently generates an error

How can I fix the problem?

0 投票
1 回答
1351 浏览

python - 没有找到 PyJWT<3.0.0,>=2.0.1 的匹配分布

我正在尝试按照他们网站上的步骤安装 ibm_watson 库:

但是我收到此错误:

我尝试手动安装版本为 2.0.1 的 PyJWT,但我得到了同样的错误,尽管该版本在他们的文档中可用。

有谁知道如何解决这个问题?

0 投票
2 回答
268 浏览

python-3.x - 在 Django 中创建中间件以对来自不同微服务的用户进行身份验证时出错

使用 Django 和 pyJWT 构建微服务

让我简要地解释一下,也许有人可以帮我解决这个问题太久了

我有三个微服务,即

  1. 身份验证:创建用户并使用 RS256 算法为用户制作令牌
  2. Student :基本上是需要使用 JWT 验证的用户类型
  3. Investor :这也是需要使用 JWT 进行验证的用户类型

[我试图在身份验证服务中创建一个通用的创建令牌功能,例如]

它正在生成我使用 JWT.io 验证过的正确令牌

在我的学生服务中,我创建了一个类似这样的中间件

我的 verify_token 函数看起来像

我还在身份验证中间件下方的设置中添加了我的中间件

我只是无法解码我的令牌并将有效负载分配给相应的用户类型,有人可以帮我解决我哪里出错了吗?我也尝试过使用类似这样的身份验证后端,它不起作用,已经实现了 simple_jwt_djangorestframework包,但它没有在学生服务上解码我的有效负载并且说令牌无效,所以我不想添加它来增加不必要的代码太.

我的视图看起来像这样

当我使用 isAuthenticated 作为权限类时,我的错误总是说

0 投票
0 回答
56 浏览

python - Python CLI 在导入 jwt 时静默失败

我已经在 virtualenv 中安装了python-jose(3.2.0)和PyJWT(2.0.1),但是我的控制台脚本都失败了,在导入时没有任何错误消息jwt

即使从 CLI(Windows 10 上的 Python 3.7.7),两者

使 CLI 静默关闭,没有任何错误消息。 在此处输入图像描述

此外:

pip check不返回任何错误。对于其他一切,virtualenv 似乎工作得很好(它是一个 Flask 应用程序)。

提前致谢

0 投票
0 回答
122 浏览

python - 为 IAP 签署由 GCP 服务帐户 json 生成的 JWT 会出现错误:“sign() 缺少 1 个必需的位置参数:“算法”

尝试使用 ES256 算法和以下代码从服务帐户密钥创建签名 JWT 以在 GCP 中使用:

然而我会得到这个错误:

我也尝试过使用 PyJWT 并得到类似的错误。将算法更改为 RS256 时,它会起作用,但我仅限于使用 ES256 来签署 JWT。似乎没有地方可以传递另一个参数,但我可能忽略了一些东西。

0 投票
1 回答
745 浏览

python - 当我尝试使用 simpleJWT 4.6.0 版部署到 Heroku 时出现错误

当我djangorestframework-simplejwt 4.6.0在 Django 中安装并尝试将其部署到 时Heroku,我收到以下错误:

我尝试安装和部署 4.4.0 以查看是否可以找到 4.6.0,并且我能够部署它,但是当我尝试使用 启动和访问它时python manage.py runserver'str' object has no attribute 'decode'.

为什么会这样?如果你能告诉我如何喂它们,我将不胜感激。

0 投票
2 回答
152 浏览

azure-active-directory - 使用python,解码微软团队获取的客户端令牌并提供给团队内部的选项卡

我正在尝试学习标签 SSO。当 Microsoft 团队从 AAD 获取令牌并将其传递给选项卡时,我想使用 ajax 将该令牌发送到我的应用程序服务器并在服务器端对其进行解码。

我可以看到客户端令牌通过在 jwt.ms 中手动复制粘贴成功解码

是否有任何 python 代码可用于 jwt.ms 完成的相同操作?我试过这个,但得到以下错误:

0 投票
2 回答
5350 浏览

python - 在python中使用PyJWT解码jwt令牌给出错误算法不支持

我正在使用 PyJWT 解码来自 keycloak 的 JWT 令牌。

eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJ6MWpiUExrTndMVTBkTHk3a0NIT1pyS2FJd3FPMXFrbThDeGtvVHg2QzFBIn0。eyJleHAiOjE2MjE0MjQwMjEsImlhdCI6MTYyMTQyMzk2MSwiYXV0aF90aW1lIjoxNjIxNDIxNzc0LCJqdGkiOiIwYzY2Y2I0My1lMGY1LTQzNjItYTc2MS1lN2M2OWVhNDM5MjUiLCJpc3MiOiJodHRwOi8vbG9jYWxob3N0OjgwODAvYXV0aC9yZWFsbXMvbWFzdGVyIiwiYXVkIjpbIm1hc3Rlci1yZWFsbSIsImFjY291bnQiXSwic3ViIjoiN2Y2ODBlN2MtZGM4Yy00ZGJiLWJiZDEtMTE0ZGJhYjA2Zjc1IiwidHlwIjoiQmVhcmVyIiwiYXpwIjoiYW11bmRzZW4tZnJvbnRlbmQiLCJzZXNzaW9uX3N0YXRlIjoiYTM5YzJlNmUtZGNjMS00OTM5LTg0ODItYzk2NGE5ODMxNmYyIiwiYWNyIjoiMSIsImFsbG93ZWQtb3JpZ2lucyI6WyJodHRwOi8vbG9jYWxob3N0OjUwMDAiLCJsb2NhbGhvc3Q6NTAwMCJdLCJyZWFsbV9hY2Nlc3MiOnsicm9sZXMiOlsiY3JlYXRlLXJlYWxtIiwib2ZmbGluZV9hY2Nlc3MiLCJhZG1pbiIsInVtYV9hdXRob3JpemF0aW9uIl19LCJyZXNvdXJjZV9hY2Nlc3MiOnsibWFzdGVyLXJlYWxtIjp7InJvbGVzIjpbInZpZXctcmVhbG0iLCJ2aWV3LWlkZW50aXR5LXByb3ZpZGVycyIsIm1hbmFnZS1pZGVudGl0eS1wcm92aWRlcnMiLCJpbXBlcnNvbmF0aW9uIiwiY3JlYXRlLWNsaWVudCIsIm1hbmFnZS11c2VycyIsInF1.aksSjBU5hJ1rtn43NtbMt8E6gaGmJXDrtGDI7j0T7eo6PAcnUxG4spYNNhyksXVr3ZFvua2WyTKnZirqaJUI3zzdLj-XkE7zYCYWoJpjXITmmlj5oszD3pcRdGeyUVyQV49tIiUfUFi1KoIt9K016mH2s_beFrN3TYSjuLh5Epdk_dpNBh9YE_1f3opwsEbN2Jgz_j-VB6cQHq17RzWQIVSd6ZvftAWDWdc6nobOvTy1mZAA_DgsXwdjuNc8Qv36ztuDzkT-raCnuLH479ciBOFQZ0946obIE4ddJKpr7lnVupcbQZ6lDM_QZHz1hwkYqgSU-Ui8NHaWlqt4HJ5-9A

我的代码

根据jwt.io,它显示标题

我尝试使用公钥和密钥,两者都给我错误

如果我要从算法列表中删除“RS256”。

然后我得到错误。

我该如何解决这个问题。

提前致谢!

################### 回答 #######################

我能够通过

按照@KlausD 在评论中的建议安装密码学

并将公钥更改为

0 投票
1 回答
500 浏览

python - 使用 pyJWT 和 Python 解码 Apple 的 id_token (Signin)

如何在 Python 中解码 Apple 在注册过程中发送的 id_token?

我试过(从这里https://stackoverflow.com/a/65909432/984003

我收到一个错误:

如果我将 id_token 复制粘贴到 jwt.io 页面https://jwt.io/中,那么它会正确地将其解码为所有部分(标头、带有 aud、子的有效负载等)所以令牌本身是正确的,我有我需要的所有信息。