Dynamics CRM 2013 IFD 構成における Windows Server 2012 R2 AD FS のサポート

※ (2014-9-1 AD FS 2.2 を Windows Server 2012 R2 AD FS に修正。コメントありがとうございました。)

みなさん、こんにちは。

前回までモバイルおよびリッチクライアント開発について紹介して
きましたが、設置型におけるサンプルを紹介前準備として、今回は
設置型の IFD 構成における Windows Server 2012 R2 AD FS の
サポートを紹介します。

Windows Server 2012 R2 Active Directory Federation Service (AD FS)

Microsoft Dynamics CRM 2013 は、以前のバージョンに引き続き、
クレーム認証および Internet Facing Deployment (IFD) をサポート
しますが、サポートする STS サーバーとして、新たに Windows Server
2012 R2 AD FS をサポートします。

Jason Web Token (JWT) を利用した非ブラウザアプリケーションを
利用した REST エンドポイントのアクセスを行うためには、 Windows
Server 2012 R2 AD FS が必須です。

Microsoft Dynamics CRM 2013 はインストール先のサーバーとして、
現時点で Windows Server 2012 R2 をサポートしていないため、別の
サーバー に対してインストールを行ってください。

※ Update Rollup 2 で Windows Server 2012 R2 へのインストールを
サポートしました。

 

構成の手順の変更点

基本的な構成の手順は、以前のバージョンと同様ですが一部異なる
手順があります。これまでの手順はこちらを参照してください。

不要となる手順

要求プロバイダー信頼において、UPN 用の追加要求規則が不要と
なります。これは既定で UPN をパススルーする規則が追加されて
いるためです。

image

追加で必要となる手順

Windows Server 2012 R2 AD FS は既定でイントラネット用のフォーム認証が
無効ですが  Microsoft Dynamics CRM 2013 の IFD はフォーム認証が必要となる
ため、以下手順でフォームの有効化を行ってください。

1. Windows Server 2012 R2 AD FS サーバーへ管理者権限でログインします。

2. サーバー マネージャーのツールより AD FS の管理を開きます。

image

3. 認証ポリシーをクリックします。

image

4. 右側の画面のプライマリ認証にあるグローバル設定より編集を
クリックします。

image

5. イントラネットの項目で、フォーム認証にチェックを入れます。

image

6. OK をクリックします。

この手順を行わない場合、IFD アドレスで接続すると以下の画面が
表示されます。

image

また Windows Server 2012 R2 AD FS のイベントログには、以下
エラーが記録されます。

ソース : AD FS
イベント ID : 364

エラー内容
パッシブな要求のフェデレーション中にエラーが発生しました。
追加データ

プロトコル名:
wsfed

証明書利用者: <IFD のアドレス>

例外情報:
Microsoft.IdentityServer.Service.Policy.PolicyServer.Engine.InvalidAuthenticationTypePolicyException: MSIS7102: 要求された認証方法は STS でサポートされていません。

まとめ

クレーム認証および IFD 構成はこれまでと変わりありませんが、
Windows Server 2012 R2 AD FS を利用する場合は手順が若干異なり
ます。OAuth 認証を行うためには Windows Server 2012 R2 AD FS が
必須ですので、設置型で Windows ストアアプリケーションを開発
予定の場合はご注意ください。

- 中村 憲一郎