在使用JJWT读取JWS标头之前需要JWS kid标头

在使用JJWT读取JWS标头之前需要JWS kid标头,jwt,public-key,jjwt,Jwt,Public Key,Jjwt,我正在构建的API接收JWS令牌。我想请客户设置孩子的头部,这样我就可以提供关键点旋转。但是,JJWT不允许我在提供用于验证的公钥之前读取kid头,这是可以理解的: 如果指定的JWT是数字签名的,则必须指定签名密钥 但是我首先需要kid头来选择正确的“签名”密钥。有点鸡和蛋的问题。我应该如何处理这个问题?我是否只是要求我的客户机在JWS头和普通HTTP头中提供kid值?啊,见鬼,已经找到了。JJWT在这种特殊情况下使用SigningKeyResolver。它允许程序员检查标题或声明,如果需要这些

我正在构建的API接收JWS令牌。我想请客户设置孩子的头部,这样我就可以提供关键点旋转。但是,JJWT不允许我在提供用于验证的公钥之前读取kid头,这是可以理解的:

如果指定的JWT是数字签名的,则必须指定签名密钥


但是我首先需要kid头来选择正确的“签名”密钥。有点鸡和蛋的问题。我应该如何处理这个问题?我是否只是要求我的客户机在JWS头和普通HTTP头中提供kid值?

啊,见鬼,已经找到了。JJWT在这种特殊情况下使用SigningKeyResolver。它允许程序员检查标题或声明,如果需要这些标题或声明来确定要使用的正确键。详情如下: