从本页:https://www.pingidentity.com/en/company/blog/posts/2019/jwt-security-nobody-talks-about.html:
第四个与安全相关的保留声明是"iss."这个声明表明了身份>签发JWT的一方。声明包含一个简单字符串,其值为>由开证人决定。JWT的使用者应该始终检查>"iss"声明匹配预期的发行者(例如,sso.example.com)。
作为一个例子,在Kubernetes中,当我像这样配置Kubernetes认证以使用JWT作为保险库服务帐户(从helm)时,我在访问保险库时不再得到ISS错误:
vault write auth/kubernetes/config
token_reviewer_jwt="$(cat /var/run/secrets/kubernetes.io/serviceaccount/token)"
kubernetes_host="https://$KUBERNETES_PORT_443_TCP_ADDR:443"
kubernetes_ca_cert=@/var/run/secrets/kubernetes.io/serviceaccount/ca.crt
issuer="https://kubernetes.default.svc.cluster.local"
但是这个URL是什么意思呢?它是在生成JWT时设置的任意字符串吗?
JWT令牌发行者-是方,"created"该令牌并使用其私钥对其签名。
任何人都可以创建令牌,请确保您收到的令牌是由您信任的一方创建的。