我知道身份服务器 v2 已被弃用,但我正在尝试解决生产问题。我们在服务器上安装了新证书,并更新了 web.config 文件中的指纹,但出现以下错误。我查看了 sdf 文件,但没有找到任何内容。我也试图让跟踪工作,但我似乎无法生成日志文件(我希望它可以告诉我故障是什么)有什么想法吗?
<system.identityModel>
<identityConfiguration>
<audienceUris>
<add value="https://website.com" />
</audienceUris>
<certificateValidation certificateValidationMode="None" />
<issuerNameRegistry type="System.IdentityModel.Tokens.ValidatingIssuerNameRegistry, System.IdentityModel.Tokens.ValidatingIssuerNameRegistry">
<authority name="http://identityserver.v2.thinktecture.com/samples">
<keys>
<add thumbprint="thecertificatethumbprint" />
</keys>
<validIssuers>
<add name="http://identityserver.v2.thinktecture.com/samples" />
</validIssuers>
</authority>
</issuerNameRegistry>
</identityConfiguration>
</system.identityModel>
<system.identityModel.services>
“/”应用程序中的服务器错误。WIF10201:未找到 securityToken:'System.IdentityModel.Tokens.X509SecurityToken' 和颁发者的有效密钥映射:描述:在执行当前 Web 请求期间发生 > 未处理的异常。> 请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
异常详细信息:System.IdentityModel.Tokens.SecurityTokenValidationException:> WIF10201:未找到 securityToken 的有效密钥映射:“System.IdentityModel.Tokens.X509SecurityToken”和颁发者:“ http://identityserver.v2.thinktecture.com/samples ”。
源错误:
在执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪来识别有关异常起源和位置的信息。
堆栈跟踪:
[SecurityTokenValidationException:WIF10201:未找到 securityToken 的有效密钥映射:'System.IdentityModel.Tokens.X509SecurityToken' 和颁发者:' http: //identityserver.v2.thinktecture.com/samples'.] System.IdentityModel.Tokens.Saml2SecurityTokenHandler.ValidateToken(SecurityToken token) +1333 System.IdentityModel.Services.TokenReceiver.AuthenticateToken(SecurityToken token, Boolean ensureBearerToken, String endpointUri) +137 System.IdentityModel.Services.WSFederationAuthenticationModule.SignInWithResponseMessage(HttpRequestBase请求)+665 System.IdentityModel.Services.WSFederationAuthenticationModule.OnAuthenticateRequest(对象发送者,EventArgs args)+467 System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()+139 System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step) +197 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +8