2013-10-07 46 views

回答

0

導航到Glassfish管理控制檯,然後導航到服務器設置 - >網絡監聽器。在那裏你可以設置聽衆使用SSL。默認情況下,有三個監聽器,4848用於管理控制檯,8080用於一般HTTP監聽,8181用於安全http監聽。有幾件事情,你可以在這裏做

  • 要啓用監聽器或編輯偵聽器SSL檢查安全選項

  • 要禁用聽衆取消

  • 在SSL選項卡上填寫的SSL信息

+0

您能否提供更多詳細信息? –

+0

@KorayTugay答案已更新 – fareed

+0

文檔位於:http://docs.oracle.com/cd/E26576_01/doc.312/e24928/http_https.htm#ggnfu –

3

以下是使用JAAS表單身份驗證的示例:

web.xml上的代碼塊定義的網址是什麼啓用了SSL:

<login-config> 
    <auth-method>FORM</auth-method> 
    <realm-name>userauth</realm-name> 
    <form-login-config> 
     <form-login-page>/login.jsf</form-login-page> 
     <form-error-page>/loginError.jsf</form-error-page> 
    </form-login-config>     
</login-config> 

<security-constraint> 
    <display-name>ConstraintSSL</display-name> 
    <web-resource-collection> 
     <web-resource-name>protected</web-resource-name> 
     <description/> 
     <url-pattern>/*</url-pattern> 
     <http-method>GET</http-method> 
     <http-method>POST</http-method> 
     <http-method>HEAD</http-method> 
     <http-method>PUT</http-method> 
     <http-method>OPTIONS</http-method> 
     <http-method>TRACE</http-method> 
     <http-method>DELETE</http-method> 
    </web-resource-collection> 

    <user-data-constraint>   
     <transport-guarantee>CONFIDENTIAL</transport-guarantee> 
    </user-data-constraint>   

</security-constraint> 

現在你的應用服務器(GlassFish中)在這個例子中配置您的身份驗證領域「USERAUTH」:

 create-auth-realm --classname com.sun.enterprise.security.ee.auth.realm.jdbc.JDBCRealm 
--property jaas-context=jdbcRealm:datasource-jndi=oracleXE10gJDBCResource:user- 
table=TB_USER:user-name-column=ID_USER:password-column=PASSWORD:group- 
table=TB_USER_GROUP_USER:group-name-column=ID_GROUP:group_table_user-name- 
column=ID_GROUP:digest-algorithm=MD5 userauth 

在此示例中,我創建了一個基於JDBC的領域,並在用戶表上創建了名爲「TB_USER」的MD5加密密碼以及組表名。您可以創建自己的身份驗證領域,它可以是文件,jdbc或其他JAAS類型(請參閱每個特定的JAAS文檔)。

現在,您的應用的任何請求都應使用SSL。

Glassfish將重定向到SSL端口(默認8181),並且您的瀏覽器將顯示默認的SSL信任證書警報窗口(如果您使用自簽名證書),詢問您是否信任該連接,並接受您應該看到頁面在SSL模式下正確呈現 - https