Påberåbe sig SSRS webtjenester fra WSS / MOS i FBA miljø

Vi havde brug at påberåbe sig "CreateSubscription" metode på en SSRS-webtjeneste, der er hostet i en FBA lykkedes MOSS miljø fra en brugerdefineret webdel. Vi holdt fik variationer af:

  • 401: Ikke godkendt
  • Objektet flyttes

Objektet"flyttede" meddelelsen var mest interessant, fordi det var at sige, at objektet"" (vores SSRS service) havde "flyttet" til login.aspx. Dette klart mente vi havde nogle slags godkendelse problem.

Til sidst indså jeg, at jeg havde bookmarked en blog-indtastning af Robert Garret der beskrevet hvordan man kan påberåbe sig en allround WSS/MOSS webtjeneste bor inde en FBA miljø. Bemærk, at jeg ikke kan linke direkte til artiklen (som af 06/09/08) fordi det ønsker at godkende. Linket jeg giver bringer dig til en "alle indlæg" Se og du kan finde specifikke artiklen ved at søge på "Adgang til MOSS-webtjenester ved hjælp af formularer-baseret godkendelse".

Her er den kode, der arbejdede for os:

ReportingService2006 rs = Null; 
// Godkende Godkendelse auth = nye Godkendelse(); 
auth.URL = "http://URL/_vti_bin/Authentication.asmx";
auth.CookieContainer =
nye CookieContainer();
LoginResult resultat = auth.Login("userid", "password");
Hvis (resultat.ErrorCode == LoginErrorCode.NoError) 
{
// Ingen fejl, så få cookies.
CookieCollection cookies = auth.CookieContainer.GetCookies(nye URI(auth.URL-adresse));
Cookie authCookie = cookies[resultat.CookieName];
RS =
nye ReportingService2006();
RS.URL =
"http://Server/_vti_bin/ReportServer/ReportService2006.asmx";
RS.CookieContainer =
nye CookieContainer();
RS.CookieContainer.Add(authCookie);
}
Prøv
{
  RS.CreateSubscription(rapport, extSettings, / / Beskr, eventType, matchData, parameters1);
}
fangst (Undtagelse ex)
{
  Console.WriteLine(ex.Message.ToString());
}

Jeg tolker tingene til at fungere som denne:

  • Vores webdelen skal ringe op godkendelsestjenesten og sige, "Hey, Tony, Det er mig!".
  • Authentication service svar at sige, "Hey, Jeg kender dig. Hvor er børnene? Her er et token."
  • Vi kalder op SSRS service og sige, "Tony sendte mig, Her er token."

</slutningen>

Abonner på min blog.

Efterlad et svar

Din e-mail adresse vil ikke blive offentliggjort. Krævede felter er markeret *