这个让我有一段时间了,我正在尝试构建一个可以调用.net web / wcf服务SP的控制台应用程序,第一步是从idP(ADFS4.0)获取一个令牌粘贴代码工作正常一整天,在某些时候它停止了以下错误:
for(; it != paths.end(); it++) {
if((*it).first.first == (*it--).first.first ) {
it++;
cout << (*it).first.first << " ";
cout << (*it--).first.first << endl;
it++;
}
else {
it++;
}
}
内部错误是:
SOAP security negotiation with 'https://adfs.domain.in/adfs/services/trust/13/windowsmixed' for target 'https://adfs.domain.in/adfs/services/trust/13/windowsmixed' failed. See inner exception for more details.
The Security Support Provider Interface (SSPI) negotiation failed.
我尝试了/ 13 / windows和/ windowstransport以及端点。
NativeErrorCode: 0x80090350 -> SEC_E_DOWNGRADE_DETECTED
答案 0 :(得分:0)
就我而言,出于某种原因,ADFS可通过VPN获得,但基于AD的身份验证位不会通过VPN发生。这就是SEC_E_DOWNGRADE_DETECTED即将到来的原因。在常规的非VPN环境中,事情是好的。
另外,另一个观察是在常规企业网络上生成SAML令牌。即使在VPN上,生成SAML令牌的后续调用也按预期进行。
因此,如果您看到此错误,只需检查您所在的网络是否属于域(而非公共或专用网络),以进行SSPI协商。