我試圖用Ruby來使用Sharepoint webservices。我已經基本放棄嘗試使用NTLM進行身份驗證,並暫時將Sharepoint服務器更改爲使用基本身份驗證。我已經成功使用soap4r獲得WSDL,但在嘗試使用實際的Web服務調用時仍無法進行身份驗證。Ruby/Rails和Sharepoint Web服務
有沒有人有任何經驗讓紅寶石和Sharepoint談?
我試圖用Ruby來使用Sharepoint webservices。我已經基本放棄嘗試使用NTLM進行身份驗證,並暫時將Sharepoint服務器更改爲使用基本身份驗證。我已經成功使用soap4r獲得WSDL,但在嘗試使用實際的Web服務調用時仍無法進行身份驗證。Ruby/Rails和Sharepoint Web服務
有沒有人有任何經驗讓紅寶石和Sharepoint談?
我是一個新手。但是經過很多時間和更多經驗編碼人員的幫助後,我能夠使用Sharepoint 2010進行ruby工作。下面的代碼需要'ntlm/mechanize'gem。
我已經能夠使用列表GUID和列表視圖GUID從指定列表(下面)下載sharepoint xml。
編輯(2011年5月23日)。我應該指出,這段代碼需要ruby-ntlm gem。這是一個體面的鏈接,應該有所幫助。這絕對有效。
http://rubydoc.info/gems/ruby-ntlm/0.0.1/file/README.markdown
agent = Mechanize.new
agent.auth('domain\\USERNAME', 'PASSWORD')
page = agent.get('http://URL/DIRECTORY/SITE/LIST/_vti_bin/owssvr.dll?Cmd=Display&List={LIST_GUID}&View={VIEW_GUID}&XMLDATA=TRUE')
您是如何更改SP服務器以使用基本身份驗證的?你只是通過IIS配置站點,還是通過SP Central Admin來完成?
如果您使用的是SP 2007/MOSS,則需要通過Central Admin進行更改;如果2003年,你需要通過IIS來完成。
請求失敗時會出現什麼錯誤?
這可能無濟於事,但micorosoft剛剛發佈Sharepoint和WSRP工具箱http://blogs.msdn.com/sharepoint/archive/2008/12/15/announcing-the-wsrp-toolkit-for-sharepoint.aspx,因爲RoR支持該標準,它可能提供一種更簡單的獲取數據的方法。
真的嗎?我找不到Rails支持WSRP的任何證據。 – 2008-12-17 21:57:20
不知何故,soap4r不支持NTLM,儘管httpclient不支持它。
當啓用基本身份驗證不是一個選項時,您可以考慮使用kerberos即協商身份驗證方法。在SharePoint中啓用,這是一個有點棘手,但基本上可以歸結爲做對服務器的命令行下面:
cscript adsutil.vbs set w3svc/1/NTAuthenticationProviders "Negotiate,NTLM"
它可能有似乎check this forum post for more info一些wird concequences。 最後,您需要在auth =而不是basic_auth =我認爲在soap4r中設置身份驗證。
請不要放在標題中「解決」,而是標誌着一個答案,接受並投上一票(像你一樣)。這是標準問題解決的正式方式。謝謝。 – 2012-03-15 19:52:19