Security란? 허가된 사용자만이 특정 웹페이지에 접근할 수 있도록 제한하는 보안 기능
- 인증(Authentication)
: 사용자가 웹 페이지에 접근할 때, JSP 컨테이너는 요청된 페이지에 보안 제약 사항이 있는지 확인하고, 사용자의 이름과 암호를 확인한다.
- 권한 부여(Authorization)
: 특정 사용자가 해당 페이지에 접근할 수 있는지 확인한다. (= 허가)
처리 방법
1) 선언적 시큐리티 : 코드 작성 없이 web.xml 파일에 보안 구성을 작성하여 사용자 인증을 수행한다.
2) 프로그래밍적 시큐리티 : request 내장 객체의 메소드를 통해 사용자의 권한을 부여한다.
① 선언적 시큐리티
- web.xml 파일은 보안 역할, 보안 제약 사항, 인증 처리 등을 설정하여 보안을 구성하는 파일이다.
- tomcat-user.xml에 등록된 역할들로 역할을 설정해야한다.
② 프로그래밍적 시큐리티
: 가장 많이 사용하는 메소드는 isUserRole(java.lang.String role); 이다. 반환 값은 boolean이며, 현재 사용자에 대한 인증을 확인한다.
그 외 아래와 같은 메소드가 존재한다.
- getRemoteuser() : 사용자의 인증 상태를 반환
- getAuthType() : 서블릿을 보호하는 인증방식의 이름 반환
- getProtocol() : 요청 프로토콜을 가져옴
- isSecure() : https 요청으로 접근하면 true 반환
- getUserPrinciple() : 현재 인증한 사용자를 포함하여 java.securityPrinciple 객체를 반환
'JAVA' 카테고리의 다른 글
Spring 컨테이너 (0) | 2021.01.14 |
---|---|
Mybatis (0) | 2021.01.13 |
JAVA 스터디 : JDBC 간단 설명 (0) | 2021.01.08 |
JAVA 스터디 : form 데이터 주고 받기 (0) | 2021.01.04 |
JAVA 스터디 : Request Mapping (0) | 2021.01.01 |