Notice
Recent Posts
Recent Comments
Link
«   2024/06   »
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
Tags
more
Archives
Today
Total
관리 메뉴

WON.dev

security-context.xml 본문

SPRING/chapter08_Security

security-context.xml

GAWON 2023. 7. 13. 10:50
<?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>
	<!-- 이동하는 경로 -->
	<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:logout logout-url="/customLogout" invalidate-session="true"/><!-- 로그아웃 -->
		
		<!--<security:access-denied-handler error-page="/accessError"/> -->	<!-- 접근 제한 처리 -->
		<security:access-denied-handler ref="customAccessDenied"/>
			
		<security:csrf disabled="true"/>	
	</security:http>
	
	<!--인증절차 권한 -->
	<security:authentication-manager>
		<security:authentication-provider>
			<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:authentication-provider>	
	</security:authentication-manager>
	

</beans>