[英]Glassfish 3.1.2 JDBCRealm configuration
您好我讀過Glassfish 3.1.2的JDBCRealm有一個新的密碼加密算法字段。 它是為了什么? 谷歌搜索類似的主題,但似乎沒有明確的答案已經發表。
總之,我有一個jdbc領域在glassfish 3中工作,當我升級到3.1.2時,相同的配置不起作用。 根據前面的線程,我已經將JaasContext設置為jdbcDigestRealm(除了jdbcRealm也不起作用),將摘要算法設置為MD5(我在第3版中使用了MD5並且它有效)。 對於密碼加密算法我嘗試'空白'和'十六進制',兩者都不起作用。
有人可以告訴我應該如何配置。 根據http://jugojava.blogspot.hk/2011/02/jdbc-security-realm-with-glassfish-and.html,我的憑證表基於帶有MD5哈希密碼的mysql。
我成功地使其適用於以下設置。 我對目前(錯誤)的理解添加了一些評論。
希望它會有所幫助。
PS:如果有人鏈接到REAL文檔(不是官方文檔,此時完全沒用),請點擊這里鏈接。
今天我花了一些時間玩這個(Java EE 7,Ubuntu 12.04上的Glassfish 4)。 事實證明,不需要Realm頁面上的大多數字段。 以下字段是建立與數據庫的成功連接所需的唯一字段。
領域名稱 - 任何名稱,只要您在web.xml中使用相同的名稱
JAAS上下文 - 任何名稱
JNDI - 任何名稱(我使用jdbc / DB名稱)
用戶表 - 包含所有用戶的表
“用戶名”列 - users表中包含用戶名的列
密碼 - 包含散列密碼的列(SHA 256)
組表 - 包含組的表
組名列 - 組表中包含組名的列
我把其他一切都留空了。 我的數據庫密碼列使用SHA 256進行了哈希密碼。
我通過在“密碼加密”字段中填寫隨機文本並保存它來測試這一點。 重新部署我的應用程序並重新啟動Glassfish 4.仍然有效。 這意味着該字段仍然存在但不再被讀取。
PS - 第一個答案中提到的真實文檔仍然很差。
首先要做的事情。 你的日志輸出是多少? 你的“不工作問題”有什么症狀? 是否出現了基本身份驗證彈出窗口? 你懂嗎
No login module configured for jdbcDigestRealm
或其他錯誤信息?
如果不成功登錄嘗試沒有任何日志輸出,請更改安全日志級別。
我有兩個jdbcRealm
問題的jdbcRealm
。 第一個存在於使用GF 3.1.1創建的域中,該域在將GF服務器更新到3.1.2.2版本后繼續工作。 然后我在這台服務器上創建了一個新域。 使用jdbcRealm
配置新域。 除了3.1.1配置屏幕下不存在的“密碼加密算法”外,3.1.1配置的所有參數都相同。 當我嘗試使用我的Web應用程序登錄時,我不斷收到日志文件中的“jdbcrealm.invaliduserreason [#]”錯誤。
我能夠解析並成功登錄我的應用程序的唯一方法是將AES添加到“密碼加密算法”字段中。 我保存了更改並重新啟動了服務器,我再一次能夠從jdbcRealm
連接成功驗證用戶身份。
這里有一個更詳細的指南 - > http://is.gd/Jx6Gnp
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.