簡體   English   中英

通過SOAP與SharePoint Web Services進行Windows身份驗證

[英]Windows authentication with SharePoint Web Services via SOAP

我試圖對我的SharePoint服務進行身份驗證,以檢索SPList項目:

 private Cookie AuthenticateFBASite(string AuthenticationSiteURL, string UserName, string Password, NetworkCredential nc2)
    {
        Cookie CurrentSiteCookie = null;
        using (Authentication.Authentication authSvc = new Authentication.Authentication())
        {
            authSvc.Url = AuthenticationSiteURL + "/_vti_bin/authentication.asmx";
            authSvc.CookieContainer = new System.Net.CookieContainer();     //create a new cookie container
            //set the FBA login information

            authSvc.AllowAutoRedirect = true;
            authSvc.PreAuthenticate = true;

            authSvc.Credentials = nc2;
            Authentication.LoginResult result = authSvc.Login(UserName, Password);
            if (result.ErrorCode == Authentication.LoginErrorCode.NoError)
            {
                try
                {
                    CookieCollection cookies = authSvc.CookieContainer.GetCookies(new Uri(AuthenticationSiteURL));
                    CurrentSiteCookie = cookies[result.CookieName];
                    return CurrentSiteCookie;
                }
                catch (System.Exception ex)
                {
                    //Console.WriteLine("Exception occured while calling lists.asmx" + ex.Message);
                    return CurrentSiteCookie;
                }
            }
            else if (result.ErrorCode == Authentication.LoginErrorCode.PasswordNotMatch)
            {

                              return CurrentSiteCookie;
            }
            else
                return CurrentSiteCookie;
        }
    }

直到今天我仍然可以正常使用,但我仍嘗試使用它,但返回的錯誤信息是cookies[result.CookieName]為null,這僅在我的計算機上發生,而不在其他計算機上發生。

@Eslan我可以知道您在哪里調用此代碼嗎? 從webpart還是應用程序或控制台應用程序? 我懷疑它的身份驗證模式問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM