הפנייה לשירותי אינטרנט ברית המועצות של WSS / מוס בסביבת FBA

היינו צריכים להפעיל את CreateSubscription"" שיטת בשירות האינטרנט ברית המועצות שמתארחת ב FBA מנוהל מוס הסביבה מתוך חלק אינטרנט מותאם אישית. אנחנו כל הזמן מקבל וריאציות של:

  • 401: לא מאושר
  • האובייקט זז

האובייקט"עבר" המסר היה המעניין ביותר כי זה היה אומר את זה האובייקט"" (השירות שלנו ברית המועצות) עברה"" ל login.aspx. זה בבירור אומר שעלינו אימות בבעיה כלשהי.

בסופו של דבר הבנתי שיש לי סימניה כתב בבלוג מאת רוברט גרט. לתאר כיצד להפעיל את שירות אינטרנט WSS/מוס למטרה כללית חי בתוך סביבה FBA. שימו לב: אין באפשרותי לקשר ישירות למאמר (כמו של 06/09/08) כי היא רוצה לאמת. הקישור שאני לספק מביא אותך "כל ההודעות" תצוגת יכול לאתר את המאמר ספציפיים על-ידי חיפוש "Accessing מוס לשירותי אינטרנט של באמצעות באימות מבוסס טפסים".

. הנה הקוד אשר עבדה בשבילנו:

ר' ReportingService2006 = null; 
// אימות אימות אימות = חדש אימות(); 
אימותכתובת Url = "http://URL/_vti_bin/Authentication.asmx";
אימותCookieContainer =
חדש CookieContainer();
LoginResult התוצאה = אימותכניסה("מזהה משתמש", "סיסמה");
אם (תוצאה.קוד שגיאה = = LoginErrorCode.NoError) 
{
// אין שגיאה, אז לקבל את העוגיות.
עוגיות CookieCollection = אימותCookieContainer.GetCookies(חדש אורי(אימותכתובת Url));
עוגיות authCookie = עוגיות[תוצאה.CookieName];
ר' =
חדש ReportingService2006();
ר'.כתובת Url =
"http://server/_vti_bin/ReportServer/ReportService2006.asmx";
ר'.CookieContainer =
חדש CookieContainer();
ר'.CookieContainer.Add(authCookie);
}
נסה
{
  ר'.CreateSubscription(דו ח, extSettings, desc, eventType, matchData, parameters1);
}
לתפוס (חריגה ex)
{
  Console.WriteLine(. לשעבר.Message.ToString());
}

לפרש דברים כדי לעבוד ככה:

  • ה-web part שלנו צריך לחייג שירות אימות ולומר, "היי, טוני, . זה אני!".
  • שירות לאימות משיב אומר, "היי, . אני מכיר אותך. מה שלום הילדים? הנה אסימון."
  • אנחנו קוראים את הטקס ברית המועצות ואומרים, "טוני שלח אותי, הנה האסימון."

</קצה>

מנוי על הבלוג שלי.

תשאיר הודעה

כתובת האימייל שלך לא תפורסם. שדות חובה מסומנים *