2013-10-07 61 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