現象
Microsoft Dynamics CRM 2013 インターネットが直面している展開 (IFD)、Windows Server 2012 R2 の Active Directory フェデレーション サービス Web アプリケーション プロキシを使用してを構成した後 CRM の IFD の外部の URL にアクセスしようとしています。 ユーザーが HTTP 404 エラー メッセージを受信する可能性があります。
ユーザーは、CRM の IFD の URL と IFD の構成時に使用した ADFS URL のリダイレクト ループを確認できることもできます。
次のエラーがイベント ビューアーのアプリケーションが Active Directory フェデレーション サービスの web サーバー上でログにも記録されます。
Microsoft.IdentityServer.Web.InvalidRequestException: MSIS7042: 'X' が、同じクライアントのブラウザー セッションに行った最後の 'Y' 秒以内に要求します。詳細については、管理者に問い合わせてください。
Microsoft.IdentityServer.Web.Protocols.PassiveProtocolHandler.UpdateLoopDetectionCookie (WrappedHttpListenerContext のコンテキスト) で
Microsoft.IdentityServer.Web.Protocols.WSFederation.WSFederationProtocolHandler.SendSignInResponse (WSFederationContext のコンテキストには、MSISSignInResponse 応答) に
Microsoft.IdentityServer.Web.PassiveProtocolListener.ProcessProtocolRequest (ProtocolContext protocolContext、PassiveProtocolHandler protocolHandler) で
Microsoft.IdentityServer.Web.PassiveProtocolListener.OnGetContext (WrappedHttpListenerContext のコンテキスト) で
原因
Active Directory フェデレーション サービス Web アプリケーション プロキシ サーバーが HTTP 応答ヘッダーの URL を変換
解決策
1. WAP の役割をホストしている Windows Server 2012 R2 サーバーに管理者としてログオンします。
2. CRM の WAP アプリケーションの Id を取得します。Windows PowerShell ウィンドウで、次のコマンドを入力します。
Get WebApplicationProxyApplication |表の書式設定の ID、名前、ExternalURL
3. CRM インターネットに接続する展開の構成中に指定された次の CRM のエンドポイントの Id をメモします。
Web アプリケーション サーバー ドメイン
検出 Web サービスのドメイン
外部ドメインの URL
4. 応答ヘッダー内に URL の翻訳を無効にするのには、前の手順で取得した Id を使用して、PowerShell を使用して、次のコマンドを実行します。
セット WebApplicationProxyApplication ID < WebApplicationServerDomainID > ・ DisableTranslateUrlInResponseHeaders
セット WebApplicationProxyApplication ID < DiscoveryWebServiceDomainID > ・ DisableTranslateUrlInResponseHeaders
セット WebApplicationProxyApplication ID < ExternalDomainURLID > ・ DisableTranslateUrlInResponseHeaders
5. ADFS サーバーと Web アプリケーションのプロキシ サーバーの両方で、ADFS サービスを再起動します。