본문으로 건너뛰기

14.2 보안 도메인

보안 도메인은 JBoss EAP 6의 보안 서브시스템의 일부이다. 보안 설정은 모든 관리 도메인의 도메인 컨트롤러나 스탠드얼론 모드에서 관리 할 수 있도록 한다.

보안 도메인은 인증, 인가, 맵핑, 감사의 설정으로 구성된다. 보안 도메인은 Java 인증 및 권한 서비스(JAAS)의 보안을 구현한다.

인증은 사용자 신원을 확인하는 것을 말한다. 보안에서는 사용자를 Principle이라고 한다. 인증 및 권한 부여는 다르지만, 인증 모듈의 대부분은 권한에 대해서도 처리한다.

권한은 허가 또는 금지된 작업에 대한 정보가 포함된 보안 정책이다. 보안에서는 역할이라고 한다.

보안 맵핑은 정보를 애플리케이션에 전달하기 전에 서브젝트(주체) 및 역할 특성에 대해 정보를 추가, 편집, 삭제하는 기능이다.

감사는 보안 관련 이벤트를 보고하는 방법을 설정한다.

애플리케이션에서 보안 도메인을 사용하면 애플리케이션의 보안 모듈이나 프로그래밍으로 처리하던 부분을 제거할 수 있다. 애플리케이션에는 어떤 보안 도메인을 사용한다는 설정만 하면 된다.

보안 서브시스템 중 가장 많이 사용되는 것이 보안 도메인이며, 기본적으로 jboss-ejb-policy, jboss-web-policy, other의 3개 보안도메인이 설정되어있다.

보안 도메인이 지원하는 보안의 종류와 사용할 수 있는 모듈들은 다음과 같다.

보안의 종류설명모듈
인증(Authentication)서브젝트(주체)를 식별하여 진짜가 맞는지 검증한다. 가장 일반적인 인증 방식은 사용자 아이디와 패스워드를 사용하는 방식이다. 사용자 정보를 Principle이라고 한다.•Client •Certificate •Database •Identity •Ldap •Kerberos외
인가(Authorization)자원에 대한 접근 권한을 검증하는 역할을 한다. Principle에 대해 제공할 수 있는 보안 역할(Role)이다•DenyAll •PermitAll •Delegating •Web •JACC •XACML
맵핑(Mapping)인증, 인가가 실행된 후 애플리케이션에 전달되기 전 인증, 인가 정보를 Principle이나 역할(Role), 보증서(Credential) 등 정보와 맵핑한다.•PropertiesRoles •SimpleRoles •DeploymentRoles •DatabaseRoles •LdapRoles
감사(Audit)보안 서브시스템 내에서 발생한 이벤트를 로그에 기록하는 등의 작업을 한다.•LogAuditProvider

표 2. 보안 도메인의 보안의 종류와 모듈