この問題に遭遇したのは、SSRS レポートを使用する Web アプリケーションを作成しているときに、運用中の SSRS サーバーを HTTPS を使用するように構成した後、レポートが実行されない (エラー 401: 禁止) ことがわかったためです。
その後、HTTPS を使用して Web ポータルの URL に移動しようとすると、ログイン資格情報の入力を求められることがわかりました。HTTP URL に移動すると、このメッセージは表示されません。クライアント マシンとサーバーの両方が同じ Windows ドメインに参加しており、私はサーバーの管理者であるため、資格情報の入力を求められるべきではありません。
状況は次のとおりです。
- 同じドメインに開発サーバーがあり、SSRS も実行しています (バージョンは同じで、私が知る限り構成も同じです)。このサーバーを再構成して、最初に HTTPS をサポートするようにしましたが、問題は発生していません。開発サーバーの Web ポータル URL に移動すると、資格情報の入力を求められることなく開きます。
- 両方の SSRS サーバーに同じ SSL 証明書を使用しています。
- SSRS 証明書はドメインを指定するため、HTTPS を使用して URL を参照するには、FQDN を含める (つまり、URL にドメインを含める) 必要があります。
- 開発サーバーは開発環境の Web サーバーでもあるため、IIS も実行されています。運用サーバーでは SQL Server 2016 のみが実行されます。IIS のインストール時に行われる何らかの構成が、開発サーバーで同じ問題が発生しない理由ではないかと疑っていますが、確かなことはわかりません。
ファイルreportserver.config
は両方のサーバーで同一です。認証セクションは次のとおりです。
<Authentication>
<AuthenticationTypes>
<RSWindowsNTLM/>
</AuthenticationTypes>
<RSWindowsExtendedProtectionLevel>Off</RSWindowsExtendedProtectionLevel>
<RSWindowsExtendedProtectionScenario>Proxy</RSWindowsExtendedProtectionScenario>
<EnableAuthPersistence>true</EnableAuthPersistence>
</Authentication>
前述したように、HTTPS を使用しない場合、これは開発サーバーでも運用サーバーでも完全に機能します。
ログイン資格情報の入力を求められることなく、運用サーバー上の SSRS Web ポータルへの接続を許可し (実行されないレポートも修正されることを期待します)、HTTPS と FQDN を使用して動作するようにするには、どのような構成を変更する必要があるか教えていただけますか?
答え1
追加クライアント ラップトップの Internet Explorer 設定にあるローカル イントラネット ゾーンの URL。
答え2
はい、動作しますが、すべてのユーザーが信頼できるサイトにURLを追加する必要があり、同じサーバー/接続でのみ動作し、外部では動作しません。