2017-09-15 73 views
0

これはしばらくの間、私は.net web/wcfサービスSPを呼び出すことができるコンソールアプリケーションを構築しようとしています。最初の脚はidP(ADFS4。 0)を貼り付けたコードがいくつかの点で、それは次のエラーで動作を停止し、一日のために正常に動作したSSPIネゴシエーションに失敗しましたWSTrustChannelFactory

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.

NativeErrorCode: 0x80090350 -> SEC_E_DOWNGRADE_DETECTED

私は/ 13/windowsと/ windowstransportとエンドポイントを試しました。私の場合は

private static GenericXmlSecurityToken RequestSecurityToken() 
{ 
    // set up the ws-trust channel factory 
    var factory = new Microsoft.IdentityModel.Protocols.WSTrust.WSTrustChannelFactory(new WindowsWSTrustBinding(
       SecurityMode.TransportWithMessageCredential), new EndpointAddress(new Uri("https://adfs.domain.in/adfs/services/trust/13/windowsmixed"), EndpointIdentity.CreateSpnIdentity("[email protected]"))); 
    factory.TrustVersion = TrustVersion.WSTrust13; 
    var rst = new RequestSecurityToken 
    { 
     RequestType = RequestTypes.Issue, 
     KeyType = KeyTypes.Bearer, 
     AppliesTo = new System.ServiceModel.EndpointAddress(endpoint_address) 
    }; 
    // request token and return 
    return factory.CreateChannel().Issue(rst) as GenericXmlSecurityToken; 
} 

答えて

0

、何らかの理由により、ADFSは、VPNを介して利用可能でしたが、ADベースの認証ビットは、VPNを介して起こっていません。だからSEC_E_DOWNGRADE_DETECTEDが来ているのです。通常の非VPN環境では問題はありません。

また、通常のエンタープライズネットワーク上でSAMLトークンが生成されるともう一度観察します。 SAMLトークンを生成するための後続の呼び出しは、VPN上でも期待通りに実行されます。

このエラーが表示された場合、SSPIネゴシエーションのために、現在のネットワークがドメイン(パブリックネットワークまたはプライベートネットワークではない)の一部であるかどうかを確認するだけです。

関連する問題