我打算創建一些簡單的REST Web服務以供其他一些應用程序使用(所有內部應用程序,不面向Internet)。由於某些原因,應用程序應該使用SSO(Windows,NTLM或其他)。我遇到的問題是如何在Web服務中進行身份驗證。PHP:創建和使用REST和身份驗證
調用Web服務的應用程序不知道用戶的密碼,所以我對如何在沒有用戶登錄的情況下對REST進行身份驗證時感到迷惑不解?例如。避免基本身份驗證
我想避免因用戶簡單而無法登錄,也不必在我的應用程序中處理密碼。我有什麼選擇?我錯過了明顯的東西嗎?
這是一個解決方案: 創建令牌,將其傳遞到服務並將其存儲在數據庫中。 Web服務檢查數據庫中是否存在令牌。 (到期處理?)
HMAC聽起來很有趣。因此,我可以發送用戶名作爲消息(以純文本形式),並檢查該純文本用戶名的授權,例如使用LDAP,因爲密鑰是祕密的,所以保證用戶名不是「欺騙」的。例如。在Web服務中創建相同的HMAC並與接收到的進行比較。 – 2012-04-25 10:26:32