Прийняв рішення про задіяння РСР веб-сервісів з WSS / ЛИШАЙНИК в FBA середовищі

Нам необхідно викликати "CreateSubscription" метод на цю тему веб-сервіс, який розміщений на FBA вдалося МОХУ середовищем з користувацьких веб-частини. Ми продовжував отримувати варіації:

  • 401: Відсутня Авторизація
  • Об'єкт переміщений

"Об'єкт переміщений" повідомлення було найцікавіше, що він говорив, що "об'єкта" (наш сервіс РСР) "переїхала" щоб login. aspx. Це явно призначені, у нас була якась проблема автентичності.

Врешті-решт зрозумів, що я мав Bookmarked запис у блозі оглянуто Роберт Garret, який описав посилатися загального призначення WSS/МОСС веб-сервіс, живуть всередині FBA середовищі як. Зверніть увагу, що я не можна зв'язати безпосередньо до статті (Станом на 06/09/08) тому, що він хоче, щоб автентифікувати. Я приведу посилання, ви потрапите на "всі повідомлення" подання і ви можете знайти конкретні статті шляхом пошуку "Accessing ЛИШАЙНИК веб-служб за допомогою основі форм аутентифікації".

Ось код, що працював для нас:

ReportingService2006 rs = Null; 
// Автентифікація Auth аутентифікації = нові Перевірка автентичності(); 
Auth.URL-адреса = "http://URL/_vti_bin/Authentication.asmx";
Auth.CookieContainer =
нові CookieContainer();
LoginResult результат = auth.Логін(«userid», "пароль");
Якщо (результат.Код помилки = = LoginErrorCode.NoError) 
{
// Помилки немає, щоб отримати файли cookie.
CookieCollection печиво = auth.CookieContainer.GetCookies(нові Урі(Auth.URL-адреса));
Cookie authCookie = печиво[результат.CookieName];
RS =
нові ReportingService2006();
RS.URL-адреса =
"http://Server/_vti_bin/ReportServer/ReportService2006.asmx";
RS.CookieContainer =
нові CookieContainer();
RS.CookieContainer.Add(authCookie);
}
Спробуйте
{
  RS.CreateSubscription(звіт, extSettings, DESC, тип події, matchData, parameters1);
}
зловити (Виняток ex)
{
  Console.WriteLine(EX.Message.ToString());
}

Інтерпретувати чим попрацювати, як це:

  • Наш веб-частини повинен (dial up) службу аутентифікації і сказати, "Ей, Тоні, Це я!".
  • Служба автентифікації в Інтернеті відповіді кажучи:, "Ей, Я знаю, що ви. Як є діти? Ось маркер."
  • Ми називаємо цю тему службу і сказати, «Тоні прислав мені, Ось маркера."

</кінець>

Підписатися на мій блог.

Дати відповідь

Ваша електронна адреса не буде опублікований. Обов'язкові поля позначені * *