복붙노트

[SPRING] 간단한 봄 보안 예제를 찾고 있습니다 [닫힌]

SPRING

간단한 봄 보안 예제를 찾고 있습니다 [닫힌]

저는 스프링 보안 (Java)에 익숙하지 않고 다음과 같은 좋은 예제를 찾고 있습니다.

내 프로젝트는 현재 스프링 MVC로 작업 중이며 최대 절전 모드입니다. loginAPI + loginDAO를 구축 했으므로 이제 보안을 결합하고 일부 페이지를 보안 화해야합니다.

나는 자습서를 찾았지만 많은 것들이 매우 복잡하다.

해결법

  1. ==============================

    1.잘. 이것은 지금까지 내가 본 최고의 것이라고 생각한다! http://krams915.blogspot.com/2010/12/spring-security-mvc-integration_18.html

    잘. 이것은 지금까지 내가 본 최고의 것이라고 생각한다! http://krams915.blogspot.com/2010/12/spring-security-mvc-integration_18.html

  2. ==============================

    2.Spring Security에서 Single-Sign-On (예 : CAS) 구현을 찾을 수 있습니다. 그것은 당신의 목적을 완벽하게 다룰 것입니다.

    Spring Security에서 Single-Sign-On (예 : CAS) 구현을 찾을 수 있습니다. 그것은 당신의 목적을 완벽하게 다룰 것입니다.

    체크 아웃 : -

    http://static.springsource.org/spring-security/site/docs/3.0.x/reference/cas.html

    https://wiki.jasig.org/display/CASC/Using+the+CAS+Client+3.1+with+Spring+Security

  3. ==============================

    3.이것은 또한 훌륭한 예입니다.

    이것은 또한 훌륭한 예입니다.

    http://www.mkyong.com/spring-security/spring-security-form-login-example/ http://krams915.blogspot.pt/2010/12/spring-security-3-mvc-using-simple-user.html

    둘 다 잘 문서화되어 있으며 제안을 위해 쉽게 수정할 수 있습니다. Krams는 Spring Security를 ​​사용하여 LDAP에 대해 이야기합니다.

  4. ==============================

    4.Spring Security의 수석 개발자가이 비디오를 아직 보지 않았다면. 실제로 스프링 시큐리티 사이트에서 언급되었지만 놓치기 쉽습니다. 비록 내가 동의하지만 좋은 봄 보안 예제는 오기가 어렵다.

    Spring Security의 수석 개발자가이 비디오를 아직 보지 않았다면. 실제로 스프링 시큐리티 사이트에서 언급되었지만 놓치기 쉽습니다. 비록 내가 동의하지만 좋은 봄 보안 예제는 오기가 어렵다.

  5. ==============================

    5.MKyong의 봄 보안 튜토리얼

    MKyong의 봄 보안 튜토리얼

    Spring Security에서 (XML과 Annotation을 사용하여) 데이터베이스 인증을 수행하는 방법.

    사용 된 기술 :

    Spring 3.2.8.RELEASE 스프링 보안 3.2.3.RELEASE Spring JDBC 3.2.3.RELEASE 이클립스 4.2 JDK 1.6 메이븐 3 Tomcat 6 또는 7 (Servlet 3.x) MySQL 서버 5.6

    SecurityConfig.java

    package com.mkyong.config;
    
    import javax.sql.DataSource;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
    import org.springframework.security.config.annotation.web.builders.HttpSecurity;
    import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
    import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
    
    @Configuration
    @EnableWebSecurity
    public class SecurityConfig extends WebSecurityConfigurerAdapter {
    
        @Autowired
        DataSource dataSource;
    
        @Autowired
        public void configAuthentication(AuthenticationManagerBuilder auth) throws Exception {
    
          auth.jdbcAuthentication().dataSource(dataSource)
            .usersByUsernameQuery(
                "select username,password, enabled from users where username=?")
            .authoritiesByUsernameQuery(
                "select username, role from user_roles where username=?");
        }   
    
        @Override
        protected void configure(HttpSecurity http) throws Exception {
    
          http.authorizeRequests()
            .antMatchers("/admin/**").access("hasRole('ROLE_ADMIN')")
            .and()
              .formLogin().loginPage("/login").failureUrl("/login?error")
              .usernameParameter("username").passwordParameter("password")
            .and()
              .logout().logoutSuccessUrl("/login?logout")
            .and()
              .exceptionHandling().accessDeniedPage("/403")
            .and()
              .csrf();
        }
    }
    

    Spring-security.xml

    <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.2.xsd">
    
        <!-- enable use-expressions -->
        <http auto-config="true" use-expressions="true">
    
            <intercept-url pattern="/admin**" access="hasRole('ROLE_ADMIN')" />
    
            <!-- access denied page -->
            <access-denied-handler error-page="/403" />
    
            <form-login 
                login-page="/login" 
                default-target-url="/welcome" 
                authentication-failure-url="/login?error" 
                username-parameter="username"
                password-parameter="password" />
            <logout logout-success-url="/login?logout"  />
            <!-- enable csrf protection -->
            <csrf/>
        </http>
    
        <!-- Select users and user_roles from database -->
        <authentication-manager>
          <authentication-provider>
            <jdbc-user-service data-source-ref="dataSource"
              users-by-username-query=
                "select username,password, enabled from users where username=?"
              authorities-by-username-query=
                "select username, role from user_roles where username =?  " />
          </authentication-provider>
        </authentication-manager>
    
    </beans:beans>
    
  6. from https://stackoverflow.com/questions/4899518/looking-for-a-simple-spring-security-example by cc-by-sa and MIT license