WSS から SSRS Web サービスの呼び出し / Fba の処理環境でコケ

"CreateSubscription を起動するために必要" FBA でホストされている SSRS web サービス上のメソッドは、カスタム web パーツから MOSS 環境を管理. 変動を受け続けました:

  • 401: 承認されていません。
  • 移動されたオブジェクト

「オブジェクトの移動" それを言っていたのでメッセージを最も興味深いでした"オブジェクト" (SSRS サービス) 「移動していた" login.aspx. これは明らかに、我々 は認証の問題のいくつかの種類を持っていたもの.

私は最終的に私がいたことに気づいた ブログ エントリのブックマーク FBA 環境中に住んでいる汎用 WSS/MOSS の web サービスを呼び出す方法を解説したロバート ・ ギャレットによって. 記事に直接リンクできないことに注意してください。 (の 06/09/08) 認証したいので. 「すべての投稿に私を提供するリンクは、します。" ビューと「フォーム ベース認証を使用してにアクセスする MOSS の Web サービス」を検索して、特定の記事を見つけることができます。.

ここでは私たちのために働いたコードです。:

ReportingService2006 rs = null; 
// 認証 認証 auth = 新機能 認証(); 
認証Url = "http://URL/_vti_bin/Authentication.asmx";
認証CookieContainer =
新機能 CookieContainer();
LoginResult 結果 = 認証ログイン(「ユーザー id」, 「パスワード」);
場合 (結果。エラー コード = = LoginErrorCode.NoError) 
{
// エラーなし, だからクッキーを取得します。.
CookieCollection クッキー認証を =CookieContainer.GetCookies(新機能 Uri(認証Url));
クッキー authCookie = cookie[結果。CookieName];
rs =
新機能 ReportingService2006();
rs。Url =
"http://server/_vti_bin/ReportServer/ReportService2006.asmx";
rs。CookieContainer =
新機能 CookieContainer();
rs。CookieContainer.Add(authCookie);
}
してください。
{
  rs。CreateSubscription(レポート, extSettings, desc, eventType, matchData, parameters1);
}
キャッチ (Ex 例外)
{
  Console.WriteLine(ex.Message.ToString());
}

このような動作するように物事を解釈します。:

  • ダイヤルアップの認証サービスと言う必要があります私たち web パーツ, "ねえ, トニー, それは私です。!".
  • 認証サービスとの返信します。, "ねえ, あなたを知っています。. どのように子供たちをします。? ここではトークンです。"
  • 私たちは、SSRS サービスを呼び出すし、言う, 「トニー送って, ここでは、トークンです。"

</終了>

私のブログを購読します。.

Technorati のタグ: , ,

メッセージを残してください

あなたのメールアドレスが公開されることはありません. 必須フィールドは、マークされています *