Notice
Recent Posts
Recent Comments
Link
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

WON.dev

security-context.xml 본문

SPRING/chapter04_MVC

security-context.xml

GAWON 2023. 7. 18. 09:58
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:context="http://www.springframework.org/schema/context"
	xmlns:security="http://www.springframework.org/schema/security"
	xsi:schemaLocation="http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security.xsd
		http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
		http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd">
	
	<bean id="customAccessDenied" class="org.joonzis.security.CustomAccessDeniedHandler"></bean>
	<bean id="customLoginSuccess" class="org.joonzis.security.CustomLoginSuccessHandler"></bean>
	<bean id="bcryptPasswordEncoder" class="org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder"></bean>
	<bean id="customUserDetailService" class="org.joonzis.security.CustomUserDetailService"></bean>
	
	<!-- 이동하는 경로 -->
	 <security:http auto-config="true" use-expressions="true">
	
		<security:intercept-url pattern="/sample/all" access="permitAll"/>
		<security:intercept-url pattern="/sample/member" access="hasRole('ROLE_MEMBER')"/> <!-- hasRole은 MEMBER에 권한을 가지고있는지 물어보는것 -->
		<security:intercept-url pattern="/sample/admin" access="hasRole('ROLE_ADMIN')"/> <!-- hasRole은 ADMIN에 권한을 가지고있는지 물어보는것 -->
		
		<!-- <security:form-login login-page="/customLogin" authentication-success-handler-ref="customLoginSuccess"/> 로그인 핸들러 경로를 만든것  -->	
		<security:form-login login-page="/customLogin"/>   <!-- 로그인 -->
		
		<security:logout logout-url="/customLogout" invalidate-session="true" delete-cookies="remember-me"/> <!-- 로그아웃 -->
		
		<!--<security:access-denied-handler error-page="/accessError"/> -->	<!-- 접근 제한 처리 -->
		
			
		<security:csrf disabled="true"/>	
	
		<!-- DB를 이용한 자동 로그인(일주일) -->
		<security:remember-me data-source-ref="dataSource" token-validity-seconds="604800"/>
	</security:http>
	
	<!--인증절차 권한 -->
	<security:authentication-manager>
		<security:authentication-provider user-service-ref="customUserDetailService">
		<!--<security:jdbc-user-service--> 	
		<!--data-source-ref="dataSource"
			users-by-username-query="select userid, userpw, enabled from tbl_member where userid=?"
			authorities-by-username-query="select userid, auth from tbl_member_auth where userid=?"/>-->
		
		<!--<security:user-service>-->
        <!--<security:user name="member" password="{noop}1234" authorities="ROLE_MEMBER"/>-->
        <!--<security:user name="admin" password="{noop}admin" authorities="ROLE_MEMBER, ROLE_ADMIN"/> //한계정에 하위권한을 준것(다중 권한가능) --> 
        <!--</security:user-service>-->
			<security:password-encoder ref="bcryptPasswordEncoder"/>
		</security:authentication-provider>	
	</security:authentication-manager>
	

</beans>

'SPRING > chapter04_MVC' 카테고리의 다른 글

list.jsp  (0) 2023.07.18
get.jsp  (0) 2023.07.18
root-context.xml  (0) 2023.07.18
servlet-context.xml  (0) 2023.07.18
reply.js  (0) 2023.07.18