问题标签 [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.
python - pyjwt编码问题(RS256算法)
我刚刚开始使用/学习 jwt。为了实现它,我决定使用 PyJWT。我也想要RS256算法。
首先,我刚刚从文档中运行示例:https ://pyjwt.readthedocs.io/en/latest/usage.html
但即使如此,我已经得到了错误。
当然,我可以使用HS256,但RS256更可取
python-3.x - 如何从 .jks 文件中获取 pem?
我正在尝试使用 .jks 文件来签署 jwt 令牌。我使用的库是 pyjwt 和 pyjks。以下是代码片段:
在执行最后一行代码以使用 jks 签名生成 jwt 时,它会抛出错误,提示需要 PEM 格式的密钥。我认为pk格式不是 jwk 所需要的。我的问题是如何从 .jks 中提取 pem 文件格式的文件来签署 jwk 令牌?谢谢。
python - 在 Python 中使用来自 Gravitee 的公钥解码 JWT 令牌时出现问题
我正在尝试使用公钥解码 Gravitee JWT 令牌。我已经测试了 PyJWT、authlib、python-jose 和 jwcrypto 库,并查看了此页面上的很多帖子,但我在所有这些帖子中都遇到了相同的错误,我无法解决问题。
错误:
('无法反序列化密钥数据。数据可能格式不正确,可能使用不受支持的算法加密,或者可能是不受支持的密钥类型(例如具有显式参数的 EC 曲线)。', [_OpenSSLErrorWithText(code= 151584876, lib=9, reason=108, reason_text=b'error:0909006C:PEM routines:get_name:no start line')])
首先,我按照 Gravitee 的说明获得了公钥:
https://docs.gravitee.io/am/current/am_userguide_create_certificate.html
https://jwt.io关于我的令牌的一些信息:
Python 包版本:
PyJWT==2.3.0(也用 2.1.0 测试过)
cryptography==36.0.0(一些帖子建议是必需的)
我的代码:
我还测试了对密钥进行编码key.encode()
,key.encode('ascii')
或者用“BEGIN RSA PUBLIC KEY”而不是“BEGIN PUBLIC KEY”组合密钥,任何东西都对我有用。我总是有同样的错误。
python - 如何在 Python 中解码 RSA 加密的 JWE
我使用 RSA 密钥在 Java 中生成了 JWE。我想在 python 中解码它。我在官方文档中尝试了 PyJwt。但我收到了这个错误
这是我拥有的令牌,
用于加密的算法是
任何人都可以帮助解决这个问题吗?还是有什么方法可以使这种解码成为可能?
python - 使用 p12 文件或从所述 p12 中提取的 .key 对 jwt 进行编码
我有一个my_key.p12
文件,受密码保护。我用
现在我正在尝试使用 pyjwt 使用 python 签署 JWT,但无论我尝试什么,我都会遇到错误。
一个简单的
返回异常(请参阅https://github.com/jpadilla/pyjwt/issues/717)。请注意,此示例直接取自文档。
有谁知道有人应该如何使用 p12 文件在 python 中编码 JWT,或者在任何情况下使用算法 RS256,如果我必须将 p12 文件转换为中间密钥类型?
jwt - 如何从 Keycloak 为 OIDC 流修改 JWT 中的现有声明?
我正在为身份验证服务生成 JWT,我们使用 Keycloak 作为 OAuth 服务器。
我已经设置了一个领域 R、一个客户端 C 和一个用户 U。我设置了一个协议映射器以在“aud”中包含“C”。我为 U 生成了 JWTtoken,当我检查有效负载时,我看到了"aud": ["C", "account"]
. 太好了,我想C
出席。但我不想"account"
出现在"aud"
.
如何在 keycloak 中配置它?同样,范围读取 -"scope": "email profile test-client-rhs"
我希望从中删除"email profile"
。我一直在谷歌上搜索并在 Keycloak 中尝试不同的东西,但我无法让它以某种方式工作。
python - 无法从部分初始化的模块“flask_jwt”导入名称“JWT”
运行这些代码时,我收到此错误“无法从部分初始化的模块 'flask_jwt' 导入名称 'JWT' ”。
我安装的软件包。
i).pip 安装 PyJWT ii).pip 安装 flask_jwt
python - 使用 python PyJWT 接收“TypeError: sign() missing 1 required positional argument: 'algorithm'”
所以我使用命令:
ssh-keygen -m PKCS8 -t dsa
生成以下(示例)密钥:
我正在尝试使用以下代码段使用此密钥对数据进行签名:
但我收到此错误:
我不确定我生成的密钥是否不正确或者我可能做错了什么。