none
SSRS検索で件数が多い場合に401エラー RRS feed

  • 質問

  • SSRSで作成されたレポートを、別拠点から参照しようとした際にエラーが出ました。

    検索結果の件数が少ない場合はエラーもなく結果が返却されます。

    タイムアウトのような状況ですが、エラーメッセージが以下のようになっていたため質問させていただきました。

    エラーメッセージ:

    リモートサーバーがエラーを返しました(401)許可されていません。

    なにか回避策があればご教授ください。よろしくお願いいたします。


    2020年2月28日 0:44

回答

  • 一般的に 401: Unauthorized は、認証エラーが発生していることが疑われますが、検索件数が少ない場合にはエラーにならないのであれば、認証エラーである可能性は低いような気がします。
    検索件数が多い場合、401: Unauthorized が毎回発生するのか、1度しか発生していないなど再現性が低いのかであれば、どちらになりますでしょうか。
    再現性があるのであれば、Reporting Services の詳細ログ(HTTPログ)を採取し、詳細なエラー内容を確認してみると良いかもしれません。

    [SSRS] Reporting Services の詳細ログ
    https://docs.microsoft.com/ja-jp/archive/blogs/jpsql/ssrs-reporting-services
    • 回答としてマーク tehc_103 2020年3月4日 9:54
    2020年2月28日 3:43
  • どこが関係しているかわからないですが、思いあたる設定としては以下になります。

    SQLServer側の設定

    1.SQL Server Management Studioを開きます。

    2.サーバーを右クリックしてサーバーのプロパティを開きます。

    3.ページの選択から接続を選択します。

    4.リモートクエリのタイムアウト値(既定値600)を変更

    レポート側の設定

    1.ブラウザを起動します。

    2.http://サーバー名/Reports/manager/site/generalにアクセスします。

    3.レポートのタイムアウト値(既定値1800)を変更又はレポートをタイムアウトしないに変更

    IIS側の設定

    1.C :\Program Files\Microsoft SQL Server\MSRS13.MSSQLSERVER\ Reporting Services\ReportServer

    を開きます。(バージョンやインストール先によってパスは変わります。)

    2.web.configを開きます。

    3.ExecutionTimeout(既定値9000)を変更

    4.IISの再起動後に読み込まれます。


    • 編集済み kaz8629 2020年2月28日 4:19
    • 回答としてマーク tehc_103 2020年3月4日 9:55
    2020年2月28日 4:02
    • 編集済み kaz8629 2020年2月28日 6:56
    • 回答としてマーク tehc_103 2020年3月2日 8:18
    2020年2月28日 6:55

すべての返信

  • 一般的に 401: Unauthorized は、認証エラーが発生していることが疑われますが、検索件数が少ない場合にはエラーにならないのであれば、認証エラーである可能性は低いような気がします。
    検索件数が多い場合、401: Unauthorized が毎回発生するのか、1度しか発生していないなど再現性が低いのかであれば、どちらになりますでしょうか。
    再現性があるのであれば、Reporting Services の詳細ログ(HTTPログ)を採取し、詳細なエラー内容を確認してみると良いかもしれません。

    [SSRS] Reporting Services の詳細ログ
    https://docs.microsoft.com/ja-jp/archive/blogs/jpsql/ssrs-reporting-services
    • 回答としてマーク tehc_103 2020年3月4日 9:54
    2020年2月28日 3:43
  • どこが関係しているかわからないですが、思いあたる設定としては以下になります。

    SQLServer側の設定

    1.SQL Server Management Studioを開きます。

    2.サーバーを右クリックしてサーバーのプロパティを開きます。

    3.ページの選択から接続を選択します。

    4.リモートクエリのタイムアウト値(既定値600)を変更

    レポート側の設定

    1.ブラウザを起動します。

    2.http://サーバー名/Reports/manager/site/generalにアクセスします。

    3.レポートのタイムアウト値(既定値1800)を変更又はレポートをタイムアウトしないに変更

    IIS側の設定

    1.C :\Program Files\Microsoft SQL Server\MSRS13.MSSQLSERVER\ Reporting Services\ReportServer

    を開きます。(バージョンやインストール先によってパスは変わります。)

    2.web.configを開きます。

    3.ExecutionTimeout(既定値9000)を変更

    4.IISの再起動後に読み込まれます。


    • 編集済み kaz8629 2020年2月28日 4:19
    • 回答としてマーク tehc_103 2020年3月4日 9:55
    2020年2月28日 4:02
    • 編集済み kaz8629 2020年2月28日 6:56
    • 回答としてマーク tehc_103 2020年3月2日 8:18
    2020年2月28日 6:55
  • 回答ありがとうございます。

    ログを取り、確認しようと思います。

    2020年2月28日 7:55
  • 回答ありがとうございます。

    同じ事象であるように感じます。タイムアウトの設定を確認してみようと思います。

    2020年2月28日 7:56