DRMAcquireLicense API の実行時に認証ダイアログが表示される場合がある

現象
Rights Management Service (RMS) を展開している Internet Information Services (IIS)、もしくはIIS をホストしている Windows OS を再起動した直後に DRMAcquireLicense API を実行すると、一度だけ認証ダイアログが表示される場合があります。
原因
IIS の Windows 認証では、認証関連のパフォーマンスを向上するため、既定で「カーネル モード認証」が有効となっております。しかしながら、DRMAcquireLicense API が NTLM 事前認証を用いて、「https://<サーバー>/_wmcs/licensing/」サイトにアクセスした場合、カーネルモード認証の機能上の制限として NTLM 事前認証を受け付けられないため、認証に失敗します。その結果、DRMAcquireLicense API は認証ダイアログを表示いたします。
解決方法
認証ダイアログを表示させないようにするには Licensing サイトにて以下の設定を行います。
1.      IIS マネージャを起動します。 
2.      _wmcs 直下の Licensing サイトをクリックします。
3.      「機能ビュー」から「認証」を選択します。
4.      「Windows 認証」を選択し、右クリックで「詳細設定」をクリックします。
5.      「詳細設定」画面で「カーネルモード認証を有効にする」のチェックを外し、「OK」ボタンをクリックします。
6.      「Windows 認証」を選択し、右クリックで「プロバイダー」をクリックします。
7.      「プロバイダー」画面で Negotiate を削除し、「OK」ボタンをクリックします。
詳細
DRMAcquireLicense API は、ライセンスの取得のため RMS をホストしている IIS サーバー上の「/_wmcs/licensing」サイトにアクセスをいたします。この際に該当名の Service Principal Names (SPN) が確認できない場合は、DRMAcquireLicense API は NTLM 認証を用いて認証を試行します。
IIS の Windows 認証では、認証関連のパフォーマンスを向上するため、既定で「カーネル モード認証」が有効となっております。しかしながら、NTLM で利用される NTLM 事前認証は、カーネルモード認証の機能上の制限として実現することができないため、クライアントに対して IIS は HTTP_STATUS_DENIED (401) を返します。この結果、DRMAcquireLicense API で認証ダイアログが表示される事となります。なお、NTLM 事前認証以降は、クライアントと IIS 間は NTLM 認証として処理を続行するため、認証が成功し、認証ダイアログが表示されなくなります。
関連情報
注意 : これは、マイクロソフトのサポート組織内で直接作成された "緊急公開" の資料です。 この資料には、確認中の問題に関する現状ベースの情報が記載されています。 情報提供のスピードを優先するため、資料には誤植が含まれる可能性があり、予告なしに随時改定される場合があります。 その他の考慮事項については、使用条件を参照してください。
プロパティ

文書番号:3057958 - 最終更新日: 09/29/2016 15:58:00 - リビジョン: 2.0

  • KB3057958
フィードバック