【发布时间】:2021-04-26 18:11:08
【问题描述】:
根据https://docs.aws.amazon.com/elasticloadbalancing/latest/application/listener-authenticate-users.html#user-claims-encoding,验证 AWS ALB 的 JWT 声明很简单,只需调用https://public-keys.auth.elb.$region.amazonaws.com/$key-id,但由于某种原因,总是会给出 403 Access Denied -错误。区域设置为与 ALB 相同,$key-id 取自 JWT 标头(kid)。从 AWS 网络内或从本地计算机调用没有区别。
ALB 配置为使用 Okta OIDC 进行身份验证,然后转发到内部 EC2/EKS 框。 JWT 有效负载是正确的。什么可能导致 403?
【问题讨论】:
-
您能否检查密钥 ID 和区域是否正确/有效?如果 key-id 错误或 key-id 和区域组合不匹配,则可能发生此错误
-
Region (eu-north-1) 匹配 JWT 签名者和 ALB ARN。 Key-id 是来自 JWT 标头的孩子值。同事有同样的问题。他们的价值观似乎是正确的。
标签: amazon-web-services openid-connect amazon-elb okta