我想创建一个安全的登录/注销机制.我开始阅读以下文章,以了解要考虑的事项:
这些文章提出了一些好处,但我正在考虑以与Yahoo邮件登录页面类似的方式使用HTTPS.您知道...您输入http://mail.yahoo.com并重定向到HTTPS页面,例如**https://**login.yahoo.com/config/login,其中您插入了用户名和密码,验证凭据后,您将被重定向回带有生成session_idcookie 的HTTP页面,并且所有通信都在使用cookie的HTTP上.
我需要什么来实现这种行为?
我想为两个Java Web应用程序(一个使用Spring框架,一个使用Struts 1)执行此操作,但不知道如何将该HTTPS部分集成到应用程序中(我以前从未使用过HTTPS).
kgi*_*kis 16
首先,您需要为服务器启用SSL.对于Tomcat,您需要生成openSSL密钥库并将以下连接器添加到server.xml:
<Connector port="8443" scheme="https" secure="true" SSLEnabled="true"
keystoreFile="mykeystore" sslProtocol="TLS"
keystorePass="keystore password" />
Run Code Online (Sandbox Code Playgroud)
要将SSL集成到您的应用程序中,我建议使用Spring Security.它提供您想要的(通过HTTPS登录,然后重定向到HTTP).要实现它,您需要做的就是将forceHTTPS设置为true:
<bean id="authenticationProcessingFilterEntryPoint"
class="org.springframework.security.ui.webapp.AuthenticationProcessingFilterEntryPoint">
<property name="loginFormUrl" value="/pages/login.jsp" />
<property name="forceHttps" value="true"/>
</bean>
Run Code Online (Sandbox Code Playgroud)
当然,春季和春季安全确实有一个相当陡峭的学习曲线,但它是完全值得的.做一次,然后你可以在不到一个小时的时间内将它应用到新的应用程序.您可以在Spring和Struts应用程序中使用Spring Security.
Spring安全性曾经是Acegi的安全性.这篇文章将帮助您入门.
| 归档时间: |
|
| 查看次数: |
34782 次 |
| 最近记录: |