一,先修改TOMCAT的配置文件server.xml ,在其中找到以下内容:
<!-- Define a SSL HTTP/1.1 Connector on port 443 -->
<!--
<Connector port="443" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />
-->
去掉注释。
二,到你的JDK的bin目录下,执行下面代码:
%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA (Windows)
$JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA (Unix)
//TOMCAT的初始密码为changit,如果你在生成KEY时修改了密码,则必须在server.xml中的Connector="443"中加上这个属性: keystorePass="你修改的密码"。
此时,启动TOMCAT,就可以访问https://localhost:443
三,在acegi Security中实现SSL,只须修改起配置文件(如:security.xml,一般为这个,或者是其他文件名)中的
<bean id="exceptionTranslationFilter" class="org.acegisecurity.ui.ExceptionTranslationFilter">
<property name="authenticationEntryPoint">
<bean class="org.acegisecurity.ui.webapp.AuthenticationProcessingFilterEntryPoint">
<property name="loginFormUrl" value="/public/requireLogin.jsp"/>
<!--<property name="forceHttps" value="false"/> -->
<!-- in order to enable the https -->
<property name="forceHttps" value="true"/>
</bean>
</property>
</bean>
//把其中的forceHttps的值改为true,这样就可以对那些需要安全访问的页面自动转为https://形式的URL。
接着,再修改:
<bean id="channelProcessingFilter" class="org.acegisecurity.securechannel.ChannelProcessingFilter">
<property name="channelDecisionManager" ref="channelDecisionManager"/>
<property name="filterInvocationDefinitionSource">
<value>
PATTERN_TYPE_APACHE_ANT
/admin/**=REQUIRES_SECURE_CHANNEL
/login*=REQUIRES_SECURE_CHANNEL
/j_security_check*=REQUIRES_SECURE_CHANNEL
/editProfile.html*=REQUIRES_SECURE_CHANNEL
/signup.html*=REQUIRES_SECURE_CHANNEL
/saveUser.html*=REQUIRES_SECURE_CHANNEL
/secure/**=REQUIRES_SECURE_CHANNEL
/**=REQUIRES_INSECURE_CHANNEL
</value>
</propert
//在其中加入你想要实现安全访问的页面的URL,/**这个一定要放在最后面。REQUIRES_SECURE_CHANNEL这个表示需要安全通道,REQUIRES_INSECURE_CHANNEL 这个表示不需要。
最后,再修改web.xml,在其中添加如下的过滤器:
<!-- in order to enable the ssl http -->
<filter>
<filter-name>Acegi Channel Processing Filter</filter-name>
<filter-class>org.acegisecurity.util.FilterToBeanProxy</filter-class>
<init-param>
<param-name>targetClass</param-name>
<param-value>org.acegisecurity.securechannel.ChannelProcessingFilter</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Acegi Channel Processing Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
这样,就可以通过Acegi Security实现SSL访问了。
分享到:
相关推荐
通过上述详细步骤的介绍,开发者可以了解到如何从零开始配置SSL环境、整合CAS Server与Acegi Security,最终实现安全且高效的单点登录解决方案。这种整合方案在企业级应用中尤为常见,对于提高应用的安全性和便捷性...
在本文中,我们将深入探讨如何安装和配置CAS服务器以及客户端Acegi安全系统,以便实现单点登录(SSO)功能。CAS(Central Authentication Service)是一个由耶鲁大学开发的开源SSO解决方案,而Acegi Security System...
Acegi Security可以在任何支持Java的应用服务器上运行,包括但不限于Tomcat、JBoss、WebLogic等。它利用了Java EE平台提供的标准接口和技术,如Servlet API、JNDI等。 ##### 2.2 共享组件 Acegi Security引入了一...
- AceGI:AceGi Security,一个用于Spring Web应用的安全框架。 - CAS:Central Authentication Service,中心认证服务,提供单一登录解决方案。 - SSO:Single Sign-On,单点登录,用户只需登录一次就能访问所有...
cas.securityContext.serviceProperties.service=http://sso.ican.org/services/j_acegi_cas_security_check # Names of roles allowed to access the CAS service manager cas.securityContext.service...
6. 使用反向代理模块可实现多层SSO认证,每层可配置不同验证模式。 7. 支持多种存储用户信息的方式,如数据库、LDAP和XML。 8. 提供PHP和ASP的API接口。 9. 兼容JBoss 3.2.6和Jakarta Tomcat 5.0.27以上版本。 然而...
它还能够与JSTL相结合生成数据库驱动的动态Maps。 OAuth 实现框架 Agorava Agorava 是一个实现了 OAuth 1.0a 和 OAuth 2.0 的框架,提供了简单的方式通过社交媒体进行身份认证的功能。 Eclipse的JavaScript插件 JS...
它还能够与JSTL相结合生成数据库驱动的动态Maps。 OAuth 实现框架 Agorava Agorava 是一个实现了 OAuth 1.0a 和 OAuth 2.0 的框架,提供了简单的方式通过社交媒体进行身份认证的功能。 Eclipse的JavaScript插件 JS...
它还能够与JSTL相结合生成数据库驱动的动态Maps。 OAuth 实现框架 Agorava Agorava 是一个实现了 OAuth 1.0a 和 OAuth 2.0 的框架,提供了简单的方式通过社交媒体进行身份认证的功能。 Eclipse的JavaScript插件 JS...
它还能够与JSTL相结合生成数据库驱动的动态Maps。 OAuth 实现框架 Agorava Agorava 是一个实现了 OAuth 1.0a 和 OAuth 2.0 的框架,提供了简单的方式通过社交媒体进行身份认证的功能。 Eclipse的JavaScript插件 JS...
它还能够与JSTL相结合生成数据库驱动的动态Maps。 OAuth 实现框架 Agorava Agorava 是一个实现了 OAuth 1.0a 和 OAuth 2.0 的框架,提供了简单的方式通过社交媒体进行身份认证的功能。 Eclipse的JavaScript插件 JS...
它还能够与JSTL相结合生成数据库驱动的动态Maps。 OAuth 实现框架 Agorava Agorava 是一个实现了 OAuth 1.0a 和 OAuth 2.0 的框架,提供了简单的方式通过社交媒体进行身份认证的功能。 Eclipse的JavaScript插件 JS...
它还能够与JSTL相结合生成数据库驱动的动态Maps。 OAuth 实现框架 Agorava Agorava 是一个实现了 OAuth 1.0a 和 OAuth 2.0 的框架,提供了简单的方式通过社交媒体进行身份认证的功能。 Eclipse的JavaScript插件 JS...
它还能够与JSTL相结合生成数据库驱动的动态Maps。 OAuth 实现框架 Agorava Agorava 是一个实现了 OAuth 1.0a 和 OAuth 2.0 的框架,提供了简单的方式通过社交媒体进行身份认证的功能。 Eclipse的JavaScript插件 JS...
它还能够与JSTL相结合生成数据库驱动的动态Maps。 OAuth 实现框架 Agorava Agorava 是一个实现了 OAuth 1.0a 和 OAuth 2.0 的框架,提供了简单的方式通过社交媒体进行身份认证的功能。 Eclipse的JavaScript插件 JS...
它还能够与JSTL相结合生成数据库驱动的动态Maps。 OAuth 实现框架 Agorava Agorava 是一个实现了 OAuth 1.0a 和 OAuth 2.0 的框架,提供了简单的方式通过社交媒体进行身份认证的功能。 Eclipse的JavaScript插件 JS...
它还能够与JSTL相结合生成数据库驱动的动态Maps。 OAuth 实现框架 Agorava Agorava 是一个实现了 OAuth 1.0a 和 OAuth 2.0 的框架,提供了简单的方式通过社交媒体进行身份认证的功能。 Eclipse的JavaScript插件 JS...
它还能够与JSTL相结合生成数据库驱动的动态Maps。 OAuth 实现框架 Agorava Agorava 是一个实现了 OAuth 1.0a 和 OAuth 2.0 的框架,提供了简单的方式通过社交媒体进行身份认证的功能。 Eclipse的JavaScript插件 JS...
它还能够与JSTL相结合生成数据库驱动的动态Maps。 OAuth 实现框架 Agorava Agorava 是一个实现了 OAuth 1.0a 和 OAuth 2.0 的框架,提供了简单的方式通过社交媒体进行身份认证的功能。 Eclipse的JavaScript插件 JS...