CouchDB JWT身份验证失败

s5a0g9ez  于 2023-08-01  发布在  CouchDB
关注(0)|答案(1)|浏览(236)

按照www.example.com上的说明CouchDB.org并配置CouchDB服务器。我将用户(sub)添加到_security设置中,作为特定数据库的admin,当我尝试使用GET文档时,我得到了错误:

{
  "error": "bad_request",
  "reason": "Not a valid key"
}

字符串
我知道public.pem密钥是有效的,然后在粘贴到CouchDB的.ini文件之前,按照指令(单行\n)格式化。公钥直接来自我的Node.js服务器,它发布(并成功验证)JWT。
我的JWT header看起来像:

{
  "alg": "HS256",
  "typ": "JWT",
  "kid": "mykey"
}


CouchDB上的.default.ini配置文件如下所示:

hmac:mykey = -----BEGIN PUBLIC KEY-----\nM...\n


这是Base64与Base64URL的问题吗?我也试过rsa:mykeyHS256.mykey。如果你能帮忙的话,我会很感激的。CouchDB调试没有帮助。

e3bfsja2

e3bfsja21#

固定和工作。JWT Header的"alg": "HS256"表示对称密钥用于签名。我使用RSA(非对称)密钥签名。将alg更改为RS256,第一次尝试就可以了。

相关问题