为何K8s Pod重启后OpenIddict令牌失效?
OpenIddict迁移至AKS后Pod重启导致令牌失效问题
最近将OpenIddict从Azure App Service迁移至Azure AKS(Kubernetes)环境运行,遇到一个问题:Pod重启后,此前颁发的令牌全部失效。
迁移过程中仅修改了签名/加密证书的获取方式,两种实现逻辑功能等价,因此排除证书本身的问题。目前猜测AKS与App Service的核心差异可能是Pod重启后节点(即Pod实例)名称会发生变化,想请教各位,为何K8s环境下重启Pod会导致令牌失效?
补充说明:令牌在服务正常运行期间可正常使用,仅在Pod重启后出现失效情况。
原App Service环境代码
var cert = new X509Certificate2(File.ReadAllBytes($"/var/ssl/private/{thumbprint}.p12")); options.AddSigningCertificate(cert); options.AddEncryptionCertificate(cert);
迁移至AKS后的代码(证书存储在Kubernetes Secret中)
var cert = X509Certificate2.CreateFromPem( Environment.GetEnvironmentVariable("tls.crt"), Environment.GetEnvironmentVariable("tls.key")); options.AddSigningCertificate(cert); options.AddEncryptionCertificate(cert);
内容的提问来源于stack exchange,提问作者user1867325
相关产品推荐
相关产品推荐

