问题:
在登录CRM的时候,出现如下错误:
使用日志工具在CRM服务器中抓取日志如下:
出现如下错误:无法识别安全令牌的颁发者,若要接受来自此颁发者的安全令牌,请将 IssuerNameRegistry 配置为返回此颁发者的有效名称
英文环境抛出错误如下:
ID4175: The issuer of the security token was not recognized by the IssuerNameRegistry. To accept security tokens from this issuer, configure the IssuerNameRegistry to return a valid name for this issuer
-
Request https://auth.域名.net:446/default.aspx failed with exception System.IdentityModel.Tokens.SecurityTokenException: ID4175: IssuerNameRegistry 无法识别安全令牌的颁发者。若要接受来自此颁发者的安全令牌,请将 IssuerNameRegistry 配置为返回此颁发者的有效名称
-
在 System.IdentityModel.Tokens.SamlSecurityTokenHandler.ValidateToken(SecurityToken token)
-
在 System.IdentityModel.Services.TokenReceiver.AuthenticateToken(SecurityToken token, Boolean ensureBearerToken, String endpointUri)
-
在 System.IdentityModel.Services.WSFederationAuthenticationModule.SignInWithResponseMessage(HttpRequestBase request)
-
在 System.IdentityModel.Services.WSFederationAuthenticationModule.OnAuthenticateRequest(Object sender, EventArgs args)
-
在 Microsoft.Crm.Authentication.Claims.CrmFederatedAuthenticationModule.OnAuthenticateRequest(Object sender, EventArgs args)
-
在 System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
-
在 System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step)
-
在 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
问题原因:这个是CRM部署一段时间之后,CA验证出现了问题,原来的解密和签名的令牌在即将过期时,系统会自动续一个!
在ADFS管理器中会发现2个证书
解决方案:
1.首先进入到AD服务器,打开PowerShell(以管理员身份运行),运行如下2条命令
set-adfsproperties -autocertificaterollover $true
update-adfscertificate -urgent
2.进入到CRM部署管理器,点击下图红框中的部署基于声明的身份验证和部署基于面向Internet的部署,部署内容不做任何更改依次点一遍重新部署下即可。
3.重新启动ADFS服务
在PowerShell中输入
net stop adfssrv 停止服务
然后
net start adfssrv 开启服务
4.在ADFS管理中更新信赖方信任的联合数据源