2011-06-17 59 views
1

搜索谷歌,似乎無法找到一個明確的解決這個...PHP SoapServer的連接認證實現

我實現一個PHP SOAP服務器以處理從我們的系統的特定用戶的請求。

我需要它通過發送給SOAP函數的用戶/傳遞參數不僅在每次請求期間驗證連接用戶,還以某種方式驗證與服務的純粹連接。

實現函數級別的身份驗證非常簡單:系統中任何函數的前兩個參數都是user和pass,並且在傳遞了無法識別的用戶/ pass組合的情況下返回一個錯誤代碼。棘手的部分是連接認證。

我見過這樣的實現,當SOAP客戶端通過包含「username」和「password」的選項數組實例化後,能夠在連接級別與連接客戶端進行身份驗證,但我一直未能找到處理這種認證的任何服務器端代碼。

你需要做什麼才能在處理()的客戶端請求的PHP SoapServer類中實現?

解決:看來我能夠實現我試圖去使用基本身份驗證啓用.htaccess文件...

傳遞到客戶端的登錄/密碼被髮送到服務器並以PHP_AUTH_USER和PHP_AUTH_PW的形式放入php $ _SERVER數組中。 PHP根據定義的.htaccess文件中的passwd文件檢查這些值,並在網頁中查看時彈出通用用戶/傳遞框,如果auth失敗,將導致401未授權,並讓您進入其他方式...通過SOAP客戶端,你通過用戶傳遞「登錄」和「密碼」選項,然後在客戶端處理該認證片段。

回答

0

解決:看來我能夠實現我試圖去使用基本身份驗證啓用.htaccess文件...

傳遞到客戶端的登錄/密碼被髮送到服務器並以PHP_AUTH_USER和PHP_AUTH_PW的形式放入php $ _SERVER數組中。 PHP根據定義的.htaccess文件中的passwd文件檢查這些值,並在網頁中查看時彈出通用用戶/傳遞框,如果auth失敗,將導致401未授權,並讓您進入其他方式...通過SOAP客戶端,你通過用戶傳遞「登錄」和「密碼」選項,然後在客戶端處理該認證片段。