0
내 응용 프로그램에는 두 가지 역할이 있습니다. 하나의 역할은 데이터를 볼 수있는 역할이고 다른 역할은 admin입니다. 관리자 페이지에서 관리자는 데이터를 편집하고보기 페이지에서 게스트 역할을 수행 할 수 있습니다 데이터보기. URL에 액세스하려고하면 게스트 및 관리자 용 페이지보기 및 관리자가 모두 표시되지만 게스트는 관리자 페이지에 액세스해서는 안됩니다. 봄 보안의 특정 사용자에 대한 특정 URL에 대한 액세스
다음
내 봄 보안 파일입니다<b:beans xmlns="http://www.springframework.org/schema/security"
xmlns:b="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.xsd
http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security.xsd">
<http auto-config="true" use-expressions="true">
<!-- Adds Support for basic authentication -->
<intercept-url pattern="/admin" access="hasAnyRole('ROLE_USER')" />
<!-- <http-basic /> -->
<form-login login-page="/login" authentication-failure-url="/loginFailed" default-target-url="/view" />
<logout />
</http>
<authentication-manager>
<authentication-provider>
<user-service>
<user name="leader" password="1234" authorities="ROLE_ADMIN" />
<user name="sudheer" password="1234" authorities="ROLE_USER" />
</user-service>
</authentication-provider>
</authentication-manager>
</b:beans>
그리고 다음은 내 컨트롤러 클래스입니다 :
@RequestMapping(value="/admin", method=RequestMethod.GET)
public ModelAndView admin(){
ModelAndView model = new ModelAndView();
List<ApplicationTO> list=application.getApplicationList();
model.addObject("applicationList", list);
model.setViewName("admin");
return model;
}
@RequestMapping(value="/view", method=RequestMethod.GET)
public ModelAndView view(){
ModelAndView model = new ModelAndView();
List<ApplicationTO> list=application.getApplicationList();
model.addObject("applicationList", list);
model.setViewName("view");
return model;
}