我正在使用 AWS Elastic Load Balancer 对用户进行身份验证,该用户对用户声明进行签名,以便应用程序可以验证签名并验证声明是否由负载均衡器发送,如下所述:
要验证签名,需要请求位于以下位置的公钥:
https://public-keys.auth.elb.region.amazonaws.com/key-id
请注意,key-id 是动态的,并且在child字段中的 header 上沿 JWT 发送。
{
"alg": "algorithm",
"kid": "12345678-1234-1234-1234-123456789012",
"signer": "arn:aws:elasticloadbalancing:region-code:account-id:loadbalancer/app/load-balancer-name/load-balancer-id",
"iss": "url",
"client": "client-id",
"exp": "expiration"
}
在应用程序级别,我想使用 Quarkus 和 smallrye-jwt 来验证 JWT。阅读指南:
https://quarkus.io/guides/security-jwt#configuration-reference
有接受 URL 的配置mp.jwt.verify.publickey.location ,但是当来自 AWS 的公钥 URL 需要从 JWT 标头中提取密钥 ID时,我该如何配置它?