2015-06-26 41 views
0
的用途區別

javax.naming.Context Java文檔給出了它的字段簡短說明,包括SECURITY_AUTHENTICATIONSECURITY_PROTOCOLhereJava命名:安全注意事項之間SECURITY_AUTHENTICATION和SECURITY_PROTOCOL

與理解他們的目的和行爲描述的部分...

爲SECURITY_AUTHENTICATION:

該常量保存環境屬性的名稱指定安全 級別使用。它的值是以下字符串之一:「無」,「簡單」,「強壯」。

爲SECURITY_PROTOCOL:

該常量保存環境屬性的名稱指定安全 使用的協議。它的值是由服務提供商確定的一個字符串(例如「ssl」)。

爲了測試,我使用了「簡單」認證,即明文和「ssl」協議。

這是如何工作的?客戶端應用程序是否連接到服務器並以明文形式提供主體/憑證,然後加密查詢和對象修改等,或者整個通信是否會通過ssl隧道,身份驗證和全部通信?或者它們是如何工作的?如果在指定ssl協議時一切都通過ssl,爲什麼SECURITY_AUTHENTICATION字段存在?是否要加密即將通過加密連接的信息(加密兩次)?

如果一切都通過ssl,如果這是協議指定的,那麼我認爲即使在生產中使用「simple」和「ssl」也是安全的。有什麼理由不這樣做?

這一切歸結爲「它們之間有什麼區別?」

回答

0

連接在認證之前。首先通過SSL進行連接,然後執行認證。在通過客戶端證書進行身份驗證的情況下,這只是一個步驟。

'簡單'認證不是純文本。

+0

https://docs.oracle.com/javase/tutorial/jndi/ldap/auth_mechs.html 它說簡單就是「明文」 – Loduwijk