Позовават SSRS уеб услуги от ВиК / Мос в FBA среда

Имахме нужда да се позове на "CreateSubscription" метод на SSRS уеб услуга, която се хоства в FBA управлявани Мос среда от потребителски уеб част. Ние държат получаване вариации на:

  • 401: Не са разрешени
  • Обектът се премества

"Обект се премества" съобщението е най-интересно, защото тя казваше, че "обект" (нашата SSRS услуга) "карало" за да login.aspx. Това ясно предназначени имахме някакъв удостоверяване проблем.

В крайна сметка разбрах, че имах отметки на блог запис от Робърт Гарет, който описва как да се позове общо предназначение WSS/Мос уеб услуга, живеещи вътре FBA среда. Обърнете внимание, че не може да свърже директно към статията (като от 06/09/08) защото той иска да удостоверяване. Предоставям връзката ви отвежда до "всички мнения" Изглед и можете да откриете определена статия чрез търсене на "Достъп до Мос уеб услуги с помощта на удостоверяване на базата на формуляри".

Тук е кодът, който работи за нас:

ReportingService2006 rs = Null; 
// Удостоверяване Auth удостоверяване = нов Удостоверяване(); 
органи.URL = "HTTP://URL/_vti_bin/Authentication.asmx";
органи.CookieContainer =
нов CookieContainer();
Резултат LoginResult = органи.Вход("userid", "парола");
Ако (резултат.Код на грешка == LoginErrorCode.NoError) 
{
// Няма грешка, така че да получите бисквитките.
CookieCollection бисквитки = органи.CookieContainer.GetCookies(нов URI(органи.URL адрес));
Бисквитка authCookie = бисквитки[резултат.CookieName];
RS =
нов ReportingService2006();
RS.URL =
"HTTP://Server/_vti_bin/ReportServer/ReportService2006.asmx";
RS.CookieContainer =
нов CookieContainer();
RS.CookieContainer.Add(authCookie);
}
Опитайте
{
  RS.CreateSubscription(доклад, extSettings, Низходящо, eventType, matchData, parameters1);
}
улова (Изключение ex)
{
  Console.WriteLine(ех.Message.ToString());
}

Аз тълкувам нещата да работи като този:

  • Нашите уеб част трябва да набере услугата за удостоверяване и кажа, "Ей, Тони, това съм аз!".
  • Услугата за удостоверяване отговори казвайки, "Ей, Знам, че ви. Как са децата? Тук е маркер."
  • Ние наричаме на СРИС обслужване и кажа, "Тони ми изпрати, тук е маркер."

</край>

Абонирайте се за моя блог.

Оставете отговор

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани *