- 浏览: 264828 次
- 性别:
- 来自: 成都
文章分类
- 全部博客 (87)
- Java (6)
- Frameworks (1)
- JavaWeb (3)
- Spring (6)
- Hibernate (26)
- Maven (2)
- Plugin (1)
- Velocity (1)
- Freemarker (1)
- Spring security (18)
- Google (5)
- Guice (5)
- rmi (1)
- Annotation (1)
- Binding (1)
- commons-fileupload (3)
- fileupload (3)
- ehcache (1)
- ApplicationContext (1)
- Resource (1)
- Validator (1)
- PropertyEditor (1)
- one-to-many (5)
- cascade (2)
- MessageSource (1)
- Serialize (1)
- Serializable (1)
- delete (1)
- delete-orphan (1)
- fetch (1)
- one-to-one (1)
- join (4)
- DomainObject (1)
- CRUD (1)
- composite-element (1)
- Hibernate ORM (14)
- dynamic-insert (1)
- dynamic-update (1)
- Search (1)
- DDD (0)
- Job (0)
- element (1)
- Unique (1)
- Group (1)
- tomcat (1)
- https (1)
- mysql (1)
最新评论
-
xurunchengof:
[url][url][url][img][img][img][ ...
Spring Security 3多用户登录实现之三 验证过滤器 -
Wind_ZhongGang:
yo8237233 写道你这样的话如果上传文件超过了50000 ...
Spring集成Commons fileupload,文件上传 -
yo8237233:
你这样的话如果上传文件超过了50000000就会报异常
Spring集成Commons fileupload,文件上传 -
zhuzhiguosnail:
Wind_ZhongGang 写道lianglaiyang 写 ...
Spring Security 3多用户登录实现一 -
曾老师:
?????
Spring Security 3用户登录实现之十 用户切换
Spring security框架集成了多种流行的安全认证服务,为我们提供了多种多样的安全认证服务。在这里讨论一下它为我们提供的HTTP Basic认证服务。要实现HTTP Basic认证服务,需要实现这几步:
一。导入Spring security相关jar包
<dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-core</artifactId> <version>3.0.5.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-core-tiger</artifactId> <version>2.0.5.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-config</artifactId> <version>3.0.5.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-acl</artifactId> <version>3.0.5.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-taglibs</artifactId> <version>3.0.5.RELEASE</version> </dependency>
二。在web.xml配置filter
<filter> <filter-name>springSecurityFilterChain</filter-name> <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class> </filter> <filter-mapping> <filter-name>springSecurityFilterChain</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
三。配置spring-security.xml文件
<?xml version="1.0" encoding="UTF-8"?> <beans:beans xmlns="http://www.springframework.org/schema/security" xmlns:beans="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.0.xsd"> <!--<global-method-security pre-post-annotations="enabled">--> <!--<!– AspectJ pointcut expression that locates our "post" method and applies security that way--> <!--<protect-pointcut expression="execution(* bigbank.*Service.post*(..))" access="ROLE_TELLER"/>--> <!--–>--> <!--</global-method-security>--> <http use-expressions="true"> <intercept-url pattern="/secure/extreme/**" access="hasRole('ROLE_SUPERVISOR')" requires-channel="https"/> <intercept-url pattern="/secure/**" access="isAuthenticated()"/> <!-- Disable web URI authorization, as we're using <global-method-security> and have @Secured the services layer instead <intercept-url pattern="/listAccounts.html" access="isRememberMe()" /> <intercept-url pattern="/post.html" access="hasRole('ROLE_TELLER')" /> --> <intercept-url pattern="/**" access="isAuthenticated()"/> <!--<form-login/>--> <!--<logout/>--> <!--<remember-me/>--> <http-basic/> <!-- Uncomment to enable X509 client authentication support <x509 /> --> <!-- Uncomment to limit the number of sessions a user can have --> <!--<session-management invalid-session-url="/timeout.jsp">--> <!--<concurrency-control max-sessions="1" error-if-maximum-exceeded="true"/>--> <!--</session-management>--> </http> <!-- Usernames/Passwords are rod/koala dianne/emu scott/wombat peter/opal --> <authentication-manager> <authentication-provider> <password-encoder hash="md5"/> <user-service> <user name="rod" password="a564de63c2d0da68cf47586ee05984d7" authorities="ROLE_SUPERVISOR, ROLE_USER, ROLE_TELLER"/> <user name="dianne" password="65d15fe9156f9c4bbffd98085992a44e" authorities="ROLE_USER,ROLE_TELLER"/> <user name="scott" password="2b58af6dddbd072ed27ffc86725d7d3a" authorities="ROLE_USER"/> <user name="peter" password="22b5c9accc6e1ba628cedc63a72d57f8" authorities="ROLE_USER"/> </user-service> </authentication-provider> </authentication-manager> </beans:beans>
这样就可以使用Spring security提供的HTTP Basic认证服务。但这也有很多的缺点,首要就是用户账号的安全性低,其次因为是在配置文件中添加用户账户的,所以局限性太强,如果想要添加大量的用户这种实现方式就不行了。以后我会再讨论Spring security为我们提供的其它认证服务。
发表评论
-
Spring Security 之 Session Management
2013-01-06 11:43 5632Spring Security为我们提供了Sess ... -
Spring Security 之 Digest Authentication
2013-01-04 16:22 0<?xml version=" ... -
Spring Security 之 Basic Authentication
2013-01-04 11:58 2056Spring Security实现Basic A ... -
Spring Security 3用户登录实现之十二 授权判断
2012-11-29 15:38 2259Spring Security在验证用户登录后的另 ... -
Spring Security 3多用户登录实现之十一 退出
2012-11-19 21:41 2665Spring Security的退出功能由Logou ... -
Spring Security 3用户登录实现之十 用户切换
2012-11-17 18:15 6357部分情况下用户希望能够在不知道其它用户账号及密码的 ... -
Spring Security 3多用户登录实现之九 基于持久化存储的自动登录
2012-11-17 00:40 6320Spring Security实现自动登录的基本流 ... -
Spring Security 3多用户登录实现之八 基于Cookie的自动登录
2012-11-15 22:44 11042Spring Security为我们提供了两种方式的自 ... -
Spring Security 3多用户登录实现之七 用户验证失败处理改进
2012-11-11 11:24 8998验证登录失败后的处理的常见处理是返回到登录页面,并 ... -
Spring Security 3多用户登录实现之六 用户验证后处理
2012-11-11 00:42 4248验证用户后主要有这样两种走向,一种是验证失败,一种 ... -
Spring Security 3多用户登录实现之五 验证用户凭证
2012-11-11 00:42 4984有了用户凭证后, 如何验证用户的凭证是否正确呢, 这就需 ... -
Spring Security 3多用户登录实现之四 用户凭证
2012-11-10 20:00 5117前讲讲到AuthenticationFilt ... -
Spring Security 3多用户登录实现之三 验证过滤器
2012-11-10 19:58 15183当填写完成登录表单提交后,首先会被对应的提交表单提起 ... -
Spring Security 3多用户登录实现之二 多登录界面展示
2012-11-10 19:58 9818接前讲,首先针对一个多种用户类型的登录需求,需要先 ... -
Spring Security 3多用户登录实现一
2012-11-10 19:57 5106使用Spring Security 3 来实现多种 ... -
Spring security customize password encoder
2011-07-29 22:21 2452Spring security为我们 ... -
Spring security防用户重复登录
2011-07-28 23:28 3992使用Spring security如何防止用户的重复登录呢 ... -
Spring security用户权限数据库配置
2011-07-28 22:11 6577关于安全性服务,有两个重要的概念需要理解,一是认证,即判断 ...
相关推荐
- `Web-spring-security-web.jar`:提供了 Web 应用相关的安全功能,如 HTTP 认证、过滤器等。 - `Config-spring-security-config.jar`:支持基于 XML 和 Java 的安全配置。 - `LDAP-spring-security-ldap.jar`:...
- **验证机制**:Spring Security 提供了多种验证方式,包括但不限于基于表单的认证、基于 HTTP Basic 的认证等。 - **在请求之间保存 SecurityContext**:Spring Security 使用 HttpSession 来在不同的 HTTP 请求...
SpringBoot结合Spring Security实现登录认证是企业级应用开发中常见的安全框架组合,它们为Web应用程序提供了强大的安全性。本文将深入探讨这两个技术的核心概念、配置以及如何整合以实现用户登录认证功能。 ...
springsecurity是一个功能强大且高度可定制的身份验证和访问控制框架。springsecurity是一个专注于为Java应用程序提供身份验证和授权的框架。与所有Spring项目一样,Spring安全性的真正威力在于它可以很容易地扩展以...
- `spring-security-rest-digest-auth` 和 `spring-security-rest-basic-auth` 分别演示了这两种常见的HTTP认证方法。Basic认证使用Base64编码的用户名和密码,而Digest认证更安全,因为它在传输过程中不暴露明文...
它可能会详细介绍SpringSecurity的核心组件,如过滤器链(Filter Chain)、安全上下文(Security Context)以及不同类型的认证方式,如表单登录(Form Login)、HTTP基本认证(HTTP Basic Authentication)等。...
首先,Spring Security的核心概念包括认证(Authentication)和授权(Authorization)。认证是指确认用户身份的过程,通常涉及用户名和密码的验证。授权则决定了认证后的用户能访问哪些资源或执行哪些操作。Spring ...
- Spring Security支持多种认证方式,如HTTP Basic、Form Login、JWT等,可以根据需求选择合适的策略。 2. **OAuth 2.0**: - OAuth 2.0是一个授权框架,允许第三方应用在用户授权下访问其存储在另一服务提供商上...
Spring Security提供了多种认证机制,如HTTP Basic、Form Login、Remember Me服务等,可以根据应用场景灵活选择。 2. 授权:授权决定了用户对资源的访问权限。Spring Security通过Access Decision Manager(访问...
Spring Security 提供了多种认证方式,如表单登录、HTTP基本认证、OAuth2等。 - **授权**:定义了哪些认证过的用户可以访问哪些资源。Spring Security 使用访问决策管理器(Access Decision Manager)和访问决策...
- 此命名空间还支持各种过滤器链,如`form-login`(用于处理表单登录)和`http-basic`(用于HTTP基本认证)。 2. **`security` 命名空间**: - `security` 命名空间提供了更高级的配置选项,如用户详情服务、权限...
默认的Spring Security登录页面是基于HTTP Basic认证的,但在实际应用中,我们通常需要提供更友好的用户体验。可以通过配置`form-login`元素来自定义登录页面。这允许我们指定登录表单的URL和提交地址,以及处理登录...
基本认证是HTTP协议中的一种认证方式,Spring Security提供了相应的配置方法和编程实现方式。 #### 标签库 Spring Security标签库允许在JSP页面中展示安全相关的元素,比如登陆状态、认证信息、访问控制列表等。 #...
2. **认证机制**:SpringSecurity支持多种认证方式,如HTTP Basic、Form Login、OAuth2等。在这个例子中,可能使用了Form Login,通过`http.formLogin()`配置登录页面和处理登录请求的控制器。 3. **会话管理**:...
- **Filter Chain**: Spring Security的核心在于其过滤器链,它处理HTTP请求,执行认证和授权过程。这些过滤器包括`DelegatingFilterProxy`、`ChannelProcessingFilter`、`SecurityContextPersistenceFilter`、`...
- 配置Spring Security的WebSecurityConfigurerAdapter,关闭默认的CSRF保护,并指定不进行HTTP Basic认证。 - 在`configure(HttpSecurity http)`方法中,定义允许匿名访问的资源和需要认证的URL。 3. **创建JWT...
2. **身份验证(Authentication)**:Spring Security提供了多种认证机制,如基于表单的登录、基于HTTP Basic的认证等。通过源码分析,可以了解这些机制的实现细节,如AuthenticationProvider、...
这通常通过集成SpringSecurity的HTTP Basic认证或Token-based认证实现。 在学习过程中,你可能会接触到SpringSecurity的实战项目,比如创建自定义认证和授权逻辑,实现基于角色的访问控制(RBAC),以及处理各种...
通过配置 Spring Security,可以很容易地在应用中启用 Basic 认证。 **4.2 编程实现 Basic 客户端** 客户端也需要支持 Basic 认证,这通常涉及在 HTTP 请求头中添加 Base64 编码的凭证。 --- ##### 第13章:标签...