レポート サーバーでカスタム認証またはフォーム認証を構成する
Reporting Services に用意されている拡張可能なアーキテクチャを使用すると、カスタム認証モジュールまたはフォームベースの認証モジュールを組み込むことができます。 配置の要件に Windows 統合セキュリティまたは基本認証が含まれていない場合は、カスタム認証拡張機能を実装することを検討してください。 カスタム認証を使用する最も一般的なシナリオは、インターネットまたはエクストラネットを介した Web アプリケーションへのアクセスをサポートすることです。 既定の Windows 認証拡張機能の代わりにカスタム認証拡張機能を使用することで、レポート サーバーへのアクセスを外部ユーザーに許可する方法をより細かく制御できます。
実際に、カスタム認証拡張機能を配置するには、アセンブリとアプリケーション ファイルのコピー、構成ファイルの変更、テストを含む、複数の手順を実行する必要があります。 ここでは、構成ファイルで指定する認証設定のみに焦点を当てて説明します。
注 |
---|
カスタム認証拡張機能を作成するには、カスタム コードと ASP.NET セキュリティに関する専門知識が必要です。 カスタム認証拡張機能を作成しない場合は、Microsoft Active Directory のグループとアカウントを使用できます。ただし、レポート サーバーの配置のスコープを大幅に縮小する必要があります。 カスタム認証の詳細については、「セキュリティ拡張機能の実装」を参照してください。 |
さらに、SharePoint 製品と統合された Reporting Services 環境でフォーム認証またはカスタム認証拡張機能を使用する場合は、選択した認証方法を使用するように SharePoint サイトを構成する必要があります。 SharePoint における認証の構成に関する詳細については、Microsoft Developer Network (MSDN) の「認証の例」を参照してください。
カスタム認証を使用するようにレポート サーバーを構成するには
テキスト エディターで RSReportServer.config を開きます。 . 既定では、このファイルは \Program Files\Microsoft SQL Server\MSRS11.MSSQLSERVER\Reporting Services\ReportServer にあります。
<Authentication> を探します。
次の XML 構造をコピーします。
<Authentication> <AuthenticationTypes> <Custom /> </AuthenticationTypes> <EnableAuthPersistence>true</EnableAuthPersistence> </Authentication>
これを <Authentication> の既存のエントリ上に貼り付けます。
Custom は他の認証の種類と併用できないので注意してください。
ファイルを保存します。
レポート サーバーの Web.config ファイルを開きます。 既定では、このファイルは \Program Files\Microsoft SQL Server\MSRS11.MSSQLSERVER\Reporting Services\ReportServer にあります。
authentication mode を探して、Forms を設定します。
<authentication mode = "Forms" />
identity impersonate を探して、False を設定します。
<identity impersonate = "false" />
レポート マネージャーの Web.config ファイルを開きます。 既定では、このファイルは \Program Files\Microsoft SQL Server\MSRS11.MSSQLSERVER\Reporting Services\ReportManager にあります。
authentication mode を探して、Forms を設定します。
<authentication mode = "Forms" />
identity impersonate を探して、False を設定します。
<identity impersonate = "false" />
構成ファイルに PassThroughCookies 要素構造を追加します。 詳細については、「カスタム認証クッキーを送信するようにレポート マネージャーを構成する」を参照してください。
ファイルを保存します。
スケールアウト配置を構成した場合は、配置内の他のレポート サーバーに対して上記の手順すべてを繰り返します。
レポート サーバーを再起動して、現在開いているセッションを消去します。