在Web Service中使用Windows驗證的方式

來源:互聯網
上載者:User

很多朋友都知道在Web Service中支援Windows驗證。但其實能用好的朋友並不是特別多,因為有幾個特殊之處需要注意

1. 在服務端如何配置

這裡要注意的是,authentication的mode預設就是windows,但光是設定這個模式則毫無用處。必須同時設定有關的authorization規則。並且不要光是allow,最後一定要deny掉所有沒有被allow的使用者或者組

 

服務必鬚髮布到IIS伺服器中才真正可以進行調試。如果沒有發布,而僅僅是在VS裡面調試,那麼就無法進行一些設定,例如windows驗證模式具體是什麼類型等等。

 

2. 發布服務

一般這裡需要禁用“匿名訪問”。同時你可能需要選擇一種具體的驗證模式(基本,還是整合)

如果選擇“基本”,那麼表示用戶端可以動態指定使用者名稱和密碼。但要注意的是,此時使用者名稱和密碼是明文發送的,有安全性隱患。(可以配合SSL)來解決該問題

如果選擇“整合”,那麼表示用戶端將自動與伺服器進行協商,確定用NTLM或者Korbers的驗證身份,也就是說需要自動地將用戶端的Windows憑據發送給服務端。

 

3. 用戶端如何編寫代碼(如果服務端的驗證模式是“基本”)

 

4. 用戶端如何編寫代碼(如果伺服器的驗證模式為“整合”)

 

這裡只需要(也只能)使用所謂的DefaultNetworkCredentials這個特殊的憑據,其實就是代表了當前用戶端的Windows身份。很顯然,這種情況下,用戶端與伺服器端需要在一個可以信任的域環境中。

 

5. 最後值得一提的是:“基本”和“整合”這兩種驗證方式是可以並存滴

很多朋友都知道在Web Service中支援Windows驗證。但其實能用好的朋友並不是特別多,因為有幾個特殊之處需要注意

1. 在服務端如何配置

這裡要注意的是,authentication的mode預設就是windows,但光是設定這個模式則毫無用處。必須同時設定有關的authorization規則。並且不要光是allow,最後一定要deny掉所有沒有被allow的使用者或者組

 

服務必鬚髮布到IIS伺服器中才真正可以進行調試。如果沒有發布,而僅僅是在VS裡面調試,那麼就無法進行一些設定,例如windows驗證模式具體是什麼類型等等。

 

2. 發布服務

一般這裡需要禁用“匿名訪問”。同時你可能需要選擇一種具體的驗證模式(基本,還是整合)

如果選擇“基本”,那麼表示用戶端可以動態指定使用者名稱和密碼。但要注意的是,此時使用者名稱和密碼是明文發送的,有安全性隱患。(可以配合SSL)來解決該問題

如果選擇“整合”,那麼表示用戶端將自動與伺服器進行協商,確定用NTLM或者Korbers的驗證身份,也就是說需要自動地將用戶端的Windows憑據發送給服務端。

 

3. 用戶端如何編寫代碼(如果服務端的驗證模式是“基本”)

 

4. 用戶端如何編寫代碼(如果伺服器的驗證模式為“整合”)

 

這裡只需要(也只能)使用所謂的DefaultNetworkCredentials這個特殊的憑據,其實就是代表了當前用戶端的Windows身份。很顯然,這種情況下,用戶端與伺服器端需要在一個可以信任的域環境中。

 

5. 最後值得一提的是:“基本”和“整合”這兩種驗證方式是可以並存滴

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.