1.org.acegisecurity.providers.encoding.md5passwordencoder å±äºåªä¸ªjar
2.org.acegisecurity.AccessDeniedException: Access is denied
3.spring security简介
4.casåç¹ç»å½
org.acegisecurity.providers.encoding.md5passwordencoder å±äºåªä¸ªjar
æ ·ä¾ï¼
import java.io.IOException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class Test {
public static void main(String[] args) throws IOException{
String plainText = "asdf";
try {
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(plainText.getBytes());
byte b[] = md.digest();
int i;
StringBuffer buf = new StringBuffer("");
for (int offset = 0; offset < b.length; offset++) {
i = b[offset];
if (i < 0)
i += ;
if (i < )
buf.append("0");
buf.append(Integer.toHexString(i));
}
System.out.println("result: " + buf.toString());// ä½çå å¯
System.out.println("result: " + buf.toString().substring(8, ));// ä½çå å¯
} catch (NoSuchAlgorithmException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
org.acegisecurity.AccessDeniedException: Access is denied
appName: 'channel', name: '/channel', context-path: '/channel'] Servlet failed with Exception
org.acegisecurity.AccessDeniedException: Access is denied
ç±äºåºç¨channelçååæ¯/channel å 容路å¾ä¹æ¯/channel åºç°ç¨åºè®¿é®æç»
解å³åæ³ï¼æ£æ¥/channel对åºçservletåwebé ç½®
spring security简介
Spring Security 是一款安全框架,它的前身是 Acegi Security。由 Spring 项目组开发,专为基于 J2EE 的企业级应用提供全面安全解决方案。尤其适用于使用 Spring 框架构建的 J2EE 解决方案。Spring Security 旨在确保应用的企业卡网源码安全性,提供认证和授权服务,增强应用的安全策略。 在安全认证方面,Spring Security 提供了多种认证方法,包括但不限于:基于 HTTP 的认证、基于客户端的认证、基于数据库的golang 源码分析工具认证以及基于 LDAP 的认证等。每种认证方式都有其特定的使用场景,可以根据实际需求进行选择和配置。 Spring Security 的授权功能同样强大,它允许开发人员自定义权限管理规则,实现细粒度的访问控制。通过角色和权限的源码与模板区别组合,可以灵活地控制用户对资源的访问权限,从而提高应用的安全性。 Spring Security 还支持多种身份验证机制,如基本认证、HTTP 基础认证、OAuth、源码全局文件在哪OpenID 等,为开发者提供了丰富的选择空间。这些机制可以在不同的应用场景中灵活应用,满足不同需求。 此外,Spring Security 还提供了丰富的极乐净土js源码过滤器和拦截器,用于控制用户访问的入口和出口。这些组件可以帮助开发者实现复杂的访问控制逻辑,如登录检查、权限验证、退出机制等,进一步增强了应用的安全防护能力。 总之,Spring Security 是一个功能全面、灵活可配置的安全框架,适用于构建高度安全的企业级应用。它不仅提供基本的认证和授权服务,还支持多种安全机制和访问控制逻辑,能够有效保护应用免受各种安全威胁。扩展资料
Spring Security是一个能够为基于Spring的企业应用系统提供描述性安全访问控制解决方案的安全框架。它提供了一组可以在Spring应用上下文中配置的Bean,充分利用了Spring IoC(依赖注入,也称控制反转)和AOP(面向切面编程)功能,为应用系统提供声明式的安全访问控制功能,减少了为企业系统安全控制编写大量重复代码的工作。casåç¹ç»å½
é¦å åçä½ ç¬¬ä¸ä¸ªé®é¢ï¼å®å ¨è¯ä¹¦æ¯tomcatæè apacheç¨äºå¼å¯sslå®å ¨çsocketé¾æ¥ä½¿ç¨çï¼ä¹å°±æ¯æ¯æhttpsåè®®çãä¸è¬æ们é½ç¨tomcatä½ä¸ºåºç¨æå¡å¨ï¼è¿æ ·å°±éè¦tomcaté¦å æ¯æhttpsåè®®ï¼å¼å¯httpså¾ç®åï¼æ¾ä¸ä¸å®æ¹çææ¡£èµæï¼æå¨è¿éç®å说ä¸ä¸ï¼é¦å å¨é¨ç½²tomcatçæºå¨ä¸ä¸ºjdkï¼ç¡®åç说æ¯jreï¼ä¸è¿é常æ们é½å¨tomcatçæå¡å¨ä¸å®è£ jdkèä¸æ¯jreï¼çæè¯ä¹¦ï¼ä½¿ç¨jreèªå¸¦çkeytoolå·¥å ·æ¥çæå³å¯ï¼çæè¯ä¹¦çè¿ç¨ä¸æ³¨æä¸ç¹ï¼å°±æ¯CN项ï¼ä¹å°±æ¯ç¬¬ä¸ä¸ªå段ï¼æ¯æå¡å¨çååï¼æ¯å¦æ¬æºæµè¯çè¯å¯ä»¥ç¨localhostã使ç¨ä»¥ä¸è¯å¥
1. keytool -keystore keystore -alias acegisecurity -genkey -keyalg RSA -validity -storepass password -keypass password
What is your first and last name?ï¼è¿ä¸ªå°±æ¯CN项ï¼åçlocalhostå³å¯
å ¶ä»é便填åå³å¯ã
2. keytool -export -v -rfc -alias acegisecurity -file acegisecurity.txt -keystore keystore -storepass password
è¿ä¸æ¥æ¯å¯¼åºkeyã
3. å¤å¶ acegisecurity.txt å° %JAVA_HOME%\jre\lib\security
4. å¤å¶ keystore å° %CATALINA_HOME %
5. æ§å¶å°çªå£ï¼å¦ææ¯Windowsç³»ç»å°±æ¯dosçªå£ï¼ä¸è¿å ¥ %JAVA_HOME%\jre\lib\security
6. keytool -import -v -file acegisecurity.txt -keypass password - keystore cacerts -storepass changeit -alias acegisecurity
åèææºä¸å¯¼å ¥è¯ä¹¦
æ¥ä¸æ¥ï¼ç¨ç¼è¾å¨æå¼%CATALINA_HOME%/conf/server.xmlï¼æ¾å°<Connector port="" maxHttpHeaderSize=""
maxThreads="" minSpareThreads="" maxSpareThreads=""
enableLookups="false" disableUploadTimeout="true"
acceptCount="" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />
è¿ä¸è¡é»è®¤æ¯è¢«æ³¨éæçï¼åæ¶æ³¨éï¼å¹¶å å ¥keystoreFile="keystore" keystorePass="password"è¿ä¸¤ä¸ªå±æ§ï¼æ³¨ækeystoreFileå±æ§å¯ä»¥ä½¿ç¨keystoreæ件çç»å¯¹è·¯å¾ï¼ä¹å¯ä½¿ç¨åºäº%CATALINA_HOME%ç¯å¢åéçç¸å¯¹è·¯å¾ï¼keystorePassæ¯è®¿é®keystoreçå¯ç ï¼åºåä¸é¢å¶ä½è¯ä¹¦æ¶è®¾å®çå¯ç ä¿æä¸è´ã
访é®https://localhost:ï¼åºå¼¹åºä¸ä¸ªå¯¹è¯æ¡ï¼åç¥ç¨æ·æ£è¦è®¿é®çç«ç¹çè¯ä¹¦ä¸å®å ¨ï¼æ¯å¦æ¥åï¼ç¡®è®¤æ¥åï¼åºå¯çå°é£åªçæå¯ç±çå°ç«ã
éè¿ä»¥ä¸æ¥éª¤å°±ä¸ºtomcaté ç½®äºsslã
é ç½®äºsslï¼ç¶åå°±æ¯æcas serverçwaré¨ç½²å°è¿ä¸ªtomcatä¸å°±å¯ä»¥äºï¼å°æ¤ï¼ä½ çcasæå¡å¨å°±ç®é¨ç½²æåäºï¼ä½æ¯ï¼cas serveré£ä¸ªwaré»è®¤æ¯ä½¿ç¨user.propertiesä¸çé£ä¹å 个ç¨æ·å认è¯ï¼è¦å®ç°ä¸åç±»åç认è¯æ¹å¼è¿éè¦èªå·±å¼åï¼è¿éä¸å ·ä½è®²äºï¼å¯ä»¥åèå®æ¹ææ¡£ï¼ä¹å¯ä»¥é®æãåµåµï¼ï¼
é¨ç½²äºcasæå¡ï¼æ¥ä¸æ¥å°±æ¯æ¥å ¥client applicationäºã
æ¥å ¥applicationæä¸ç§æ¹å¼ï¼ä¸ç§æ¯ä½¿ç¨acegisecurityï¼å¾å¥½ç¨ï¼ä½æ¯å¾å¤æï¼ä¸ç§æ¯ä½¿ç¨casæä¾çcas clientï¼ç®åå¿«æ·ï¼éåºåç§æ¶å£ç¯å¢ï¼ååï¼æåä¸ç§æ¯lamçä¸ä¸ªå¼æºé¡¹ç®ï¼æ²¡è¯è¿ï¼ä¸æ¢è¯´æä¹æ ·ãå两ç§ä¸æç½å¯ä»¥æ¾å®æ¹ææ¡£ï¼ä¹å° é®æï¼ååã
就第ä¸ä¸ªé®é¢è¯´çè¾è¯¦ç»ï¼å®å¨æå太å¤ï¼æç¹ç´¯äºãåé¢çæç¹ç²ç³ï¼ä¸è¿å¯¹äºæå¿ç人æç¸ä¿¡è¿æ¯å¾åç¨çãæ»ç»äºå¾ä¹ çä¸è¥¿ï¼å¸æå¯¹ä½ æ帮å©ã