2011-01-07 13 views
0

WebサービスをXMLデータソースとして使用するようにレポートサーバーを設定しています。私は、統合セキュリティを使用することを選択して、Webサービスとレポートの間に認証の問題があるようです。ここに私が持っているものがあります:Reporting Servicesの統合セキュリティXMLデータソース

1)私は公開されているサービスを持つウェブサイトを持っています。このWebサイトは、統合セキュリティでのみ実行するように設定されています。これは、他のすべてのモードをオフにし、ディレクトリセキュリティで匿名アクセスを無効にすることを意味します。

2)WebサイトのWeb.config内で、認証モードがWindowsに設定されています。

3)レポートデータソースをXMLデータソースに設定しました。サービスへの正しいURLがあり、Windows統合セキュリティに設定されています。私はブラウザからReporting ServerへWebサービスへのホップを行っているので、Kerberosで問題が発生しているのだろうかと思いますが、わかりません。

サービスにアクセスしようとすると、401エラーが発生します。 IP_ADDY - - - 80 401 1 0 2011-01-07 14

2011-01-07午後二時52分12秒W3SVC IP_ADDY POST /URL.asmx:ここ

は、私が作成していますIISログです:52:12 W3SVC IP_ADDY POST /URL.asmx - 80 - IP_ADDY - 401 1 5

以前にこの問題を解決した人はいますか?ありがとう!

答えて

1

「ダブルホップ」の問題が発生しているように聞こえます。レポートサーバーがユーザーの資格情報を渡す代わりに明示的に使用するアカウントをWebサービス上に作成することは可能ですか?

+0

うん、あなたは死んでいる。レポートサーバーとWebサーバーの間にKerberos Autenticationを設定することで、問題を解決しました。それはかなり長いプロセスでした。よかった! – Nathan

+0

ええ、ケルベロスはセットアップに一番楽しいものではありません。 – Nat

+0

@Nathan - 同じ問題が発生していると思います。これが同じように見えるかどうか教えてください。 http://stackoverflow.com/questions/18207398/ssrs-consuming-wcf-service-with-calling-user-credentials-issue – mservidio

0

ユーザーエクスペリエンスはそれほど望ましくありませんが、ケルベロスでうまくいきたくない場合は、より簡単な解決策があります。

データソースで...「レポートを実行しているユーザーによって提供された資格情報」と「データソースに接続するときにWindows資格情報として使用する」をチェックすると、ユーザーはレポートを実行します。資格情報はSSRSサーバーに供給されているので、SSRSからWebサービスへのシングルホップだけなので、ダブルホップのNTLM認証の問題を回避できます。

レポートを実行するためにログインする必要があるため、ユーザーフレンドリーではありません。