2.8. 보안 하위 시스템

보안 하위 시스템은 애플리케이션에 대한 보안 인프라를 제공하며 Jakarta Authentication API를 기반으로 합니다. 하위 시스템은 현재 요청과 연결된 보안 컨텍스트를 사용하여 인증 관리자, 권한 부여 관리자, 감사 관리자 및 매핑 관리자의 기능을 관련 컨테이너에 노출합니다.

인증 및 권한 부여 관리자는 인증 및 권한 부여를 처리합니다. 매핑 관리자는 정보를 애플리케이션에 전달하기 전에 주체, 역할 또는 속성에서 정보를 추가, 수정 또는 삭제하는 작업을 처리합니다. 감사 관리자를 사용하면 사용자가 보안 이벤트를 보고하는 방법을 제어하도록 provider 모듈을 구성할 수 있습니다.

대부분의 경우 관리자는 보안 하위 시스템의 구성 업데이트와 관련하여 보안 도메인을 설정하고 구성하는 데만 중점을 두어야 합니다. 보안 도메인 외부에서 변경해야 하는 유일한 보안 요소는 deep-copy-subject-mode 입니다. 자세한 복사 제목 모드에 대한 자세한 내용은 보안 관리 섹션을 참조하십시오.

2.8.1. 보안 도메인

보안 도메인은 하나 이상의 애플리케이션에서 인증, 권한 부여, 감사 및 매핑을 제어하는 데 사용하는 Jakarta Authentication 선언적 보안 구성 집합입니다. 기본적으로 4개의 보안 도메인, jboss-ejb-policy,jboss-web-policy,기타jaspitest 가 포함되어 있습니다. jboss-ejb-policyjboss-web-policy 보안 도메인은 JBoss EAP 인스턴스의 기본 권한 부여 메커니즘입니다. 애플리케이션의 구성된 보안 도메인이 인증 메커니즘을 정의하지 않는 경우 사용됩니다. 이러한 보안 도메인은 다른 항목과 함께 권한 부여를 위해 내부적으로 사용되며 올바른 작업에 필요합니다. jaspitest 보안 도메인은 개발 목적으로 포함된 간단한 Jakarta Authentication 보안 도메인입니다.

보안 도메인은 인증, 권한 부여, 보안 매핑 및 감사를 위한 구성으로 구성됩니다. 보안 도메인은 JBoss EAP 보안 하위 시스템의 일부이며 도메인 컨트롤러 또는 독립 실행형 서버에서 중앙에서 관리합니다. 사용자는 애플리케이션 요구 사항을 수용하는 데 필요한 만큼의 보안 도메인을 생성할 수 있습니다.

cache -type 특성을 사용하여 보안 도메인에서 사용할 인증 캐시 유형을 구성할 수도 있습니다. 이 속성이 제거되면 캐시가 사용되지 않습니다. 이 속성에 허용되는 값은 default 또는 infinispan 입니다.

Elytron과 PicketBox 보안 도메인 간 비교

배포는 하나의 Elytron 보안 도메인 또는 하나 이상의 레거시 PicketBox 보안 도메인과 연결되어야 합니다. 배포를 둘 다 연결하지 않아야 합니다. 구성이 올바르지 않습니다.

배포가 둘 이상의 Elytron 보안 도메인과 연결되어 있는 경우 예외가 발생하지만 배포를 여러 레거시 보안 도메인과 연결할 수 있습니다.

참고

PicketBox로 작업할 때 보안 도메인은 기본 ID 저장소에 대한 액세스와 권한 부여 결정을 위한 매핑을 모두 캡슐화합니다. 따라서 다양한 저장소를 사용하는 PicketBox 사용자는 서로 다른 소스에 대해 다양한 보안 도메인을 사용해야 합니다.

Elytron에서는 이 두 함수가 분리되어 있습니다. 저장소에 대한 액세스는 보안 영역에서 처리하고 권한 부여를 위한 매핑은 보안 도메인에서 처리합니다.

따라서 독립 PicketBox 보안 도메인이 필요한 배포에서 반드시 독립 Elytron 보안 도메인이 필요하지는 않습니다.

2.8.2. 보안 영역 및 보안 도메인 사용

보안 영역 및 보안 도메인을 사용하여 JBoss EAP에 배포된 웹 애플리케이션을 보호할 수 있습니다. 둘 중 하나를 사용해야 하는지 결정할 때 둘 사이의 차이를 이해하는 것이 중요합니다.

웹 애플리케이션 및 Jakarta Enterprise Beans 배포는 보안 도메인만 직접 사용할 수 있습니다. ID 저장소에서 전달된 ID 정보를 사용하여 로그인 모듈을 사용하여 실제 인증 및 권한 부여를 수행합니다. ID 정보에 보안 영역을 사용하도록 보안 도메인을 구성할 수 있습니다. 예를 들어, 다른 경우 애플리케이션에서 인증 및 권한 부여 정보를 가져오는 데 사용할 보안 영역을 지정할 수 있습니다. 외부 ID 저장소를 사용하도록 구성할 수도 있습니다. 웹 애플리케이션 및 Jakarta Enterprise Beans 배포는 인증을 위해 보안 영역을 직접 사용하도록 구성할 수 없습니다. 보안 도메인은 보안 하위 시스템의 일부이기도 하며 핵심 서비스 이후에 로드됩니다.

핵심 관리(예: 관리 인터페이스 및 Jakarta Enterprise Beans 원격 엔드포인트)만 보안 영역을 직접 사용할 수 있습니다. 인증 및 권한 부여 정보를 제공하는 ID 저장소입니다. 또한 핵심 서비스이며 하위 시스템을 시작하기 전에 로드됩니다. 기본으로 제공되는 보안 영역인 ManagementRealmApplicationRealm 은 간단한 파일 기반 인증 메커니즘을 사용하지만 다른 메커니즘을 사용하도록 구성할 수 있습니다.

2.8.3. 보안 감사

보안 감사는 보안 하위 시스템 내에서 발생하는 이벤트에 대한 응답으로 로그에 작성하는 등 이벤트 트리거를 나타냅니다. 감사 메커니즘은 인증, 권한 부여 및 보안 매핑 세부 정보와 함께 보안 도메인의 일부로 구성됩니다. 감사는 provider 모듈을 사용하여 보안 이벤트가 보고되는 방식을 제어합니다. JBoss EAP에는 여러 보안 감사 공급업체가 제공되지만 사용자 지정 제공자를 사용할 수 있습니다. JBoss EAP의 핵심 관리에는 별도로 구성되어 있으며 보안 하위 시스템의 일부가 아닌 자체 보안 감사 및 로깅 기능이 있습니다.

2.8.4. 보안 매핑

보안 매핑은 정보가 애플리케이션에 전달되기 전에 인증 또는 권한 부여가 발생한 후 인증 및 권한 부여 정보를 결합하는 기능을 추가합니다. 인증, 인증에 대한 주체 또는 주체 또는 역할이 아닌 속성인 자격 증명에 대한 역할은 모두 매핑될 수 있습니다. 역할 매핑은 인증 후 제목에 역할을 추가, 교체 또는 제거하는 데 사용됩니다. 주체 매핑은 인증 후 주체를 수정하는 데 사용됩니다. 자격 증명 매핑을 사용하여 애플리케이션에서 사용할 외부 시스템에서 속성을 변환할 수 있습니다. 자격 증명 매핑을 반대로 사용하여 외부 시스템에서 사용하도록 애플리케이션에서 속성을 변환할 수도 있습니다.

2.8.5. 암호 자격 증명 모음 시스템

JBoss EAP에는 중요한 문자열을 암호화하고 암호화된 키 저장소에 저장하고 애플리케이션 및 확인 시스템에 대해 암호를 해독하는 암호 자격 증명 모음이 있습니다. XML 배포 설명자 등의 일반 텍스트 구성 파일에서 암호 및 기타 중요한 정보를 지정해야 하는 경우가 있습니다. JBoss EAP 암호 자격 증명 모음을 사용하여 일반 텍스트 파일에 사용할 중요한 문자열을 안전하게 저장할 수 있습니다.

2.8.6. 보안 도메인 구성

보안 도메인은 도메인 컨트롤러 또는 독립 실행형 서버에서 중앙에서 구성됩니다. 보안 도메인을 사용하는 경우 개별적으로 보안을 구성하는 대신 애플리케이션이 보안 도메인을 사용하도록 구성할 수 있습니다. 이를 통해 사용자와 관리자는 선언 보안을 활용할 수 있습니다.

예제

이러한 유형의 구성 구조로 이점을 얻는 일반적인 시나리오 중 하나는 테스트 및 생산 환경 간에 애플리케이션을 이동하는 프로세스입니다. 애플리케이션에 개별적으로 보안이 구성된 경우(예: 테스트 환경에서 프로덕션 환경으로 승격) 새 환경으로 승격할 때마다 업데이트해야 할 수 있습니다. 해당 애플리케이션이 보안 도메인을 사용하는 경우 개별 환경의 JBoss EAP 인스턴스에 현재 환경에 맞게 올바르게 구성된 보안 도메인이 있어 애플리케이션이 보안 도메인을 사용하여 컨테이너에서 적절한 보안 구성을 제공할 수 있습니다.

2.8.6.1. 로그인 모듈

JBoss EAP에는 보안 도메인 내에 구성된 대부분의 사용자 관리 역할에 적합한 여러 개의 번들 로그인 모듈이 포함되어 있습니다. 보안 하위 시스템은 관계형 데이터베이스, LDAP 서버 또는 플랫 파일에서 사용자 정보를 읽을 수 있는 몇 가지 핵심 로그인 모듈을 제공합니다. 이러한 핵심 로그인 모듈 외에도 JBoss EAP는 사용자 지정 요구에 대한 사용자 정보와 기능을 제공하는 다른 로그인 모듈을 제공합니다.

일반적으로 사용되는 로그인 모듈 요약

LDAP 로그인 모듈
Ldap 로그인 모듈은 LDAP 서버에 대해 인증하는 로그인 모듈 구현입니다. 보안 하위 시스템은 Java Naming 및 Directory Interface 초기 컨텍스트를 사용하여 제공하는 사용자 및 역할에 대해 baseCtxDNrolesCtxDN 트리를 검색할 권한이 있는 bind DN인 연결 정보를 사용하여 LDAP 서버에 연결합니다. 사용자가 인증을 시도하면 LDAP 로그인 모듈이 LDAP 서버에 연결하고 사용자의 자격 증명을 LDAP 서버에 전달합니다. 인증에 성공하면 사용자의 역할로 채워진 JBoss EAP 내에 해당 사용자에 대해 InitialLDAPContext 가 생성됩니다.
LdapExtended 로그인 모듈
LdapExtended 로그인 모듈은 사용자와 인증에 바인딩할 관련 역할을 검색합니다. 역할 쿼리를 재귀적으로 지정하고 DN에 따라 계층적 역할 구조를 탐색합니다. 로그인 모듈 옵션에는 선택한 LDAP Java Naming 및 Directory Interface 공급자에서 지원하는 모든 옵션이 포함됩니다.
UsersRoles 로그인 모듈
UsersRoles 로그인 모듈은 Java 속성 파일에서 로드된 여러 사용자 및 사용자 역할을 지원하는 간단한 로그인 모듈입니다. 이 로그인 모듈의 주요 목적은 애플리케이션과 함께 배포된 속성 파일을 사용하여 여러 사용자와 역할의 보안 설정을 쉽게 테스트하는 것입니다.
데이터베이스 로그인 모듈
Database 로그인 모듈은 인증 및 역할 매핑을 지원하는 JDBC 로그인 모듈입니다. 이 로그인 모듈은 사용자 이름, 암호 및 역할 정보가 관계형 데이터베이스에 저장된 경우 사용됩니다. 이는 예상되는 형식의 주체 및 역할을 포함하는 논리 테이블에 대한 참조를 제공하여 작동합니다.
인증서 로그인 모듈
인증서 로그인 모듈은 X509 인증서를 기반으로 사용자를 인증합니다. 이 로그인 모듈의 일반적인 사용 사례는 웹 계층의 CLIENT-CERT 인증입니다. 이 로그인 모듈은 인증만 수행하고 보안 웹 또는 Jakarta Enterprise Beans 구성 요소에 대한 액세스를 완전히 정의하기 위해 권한 부여 역할을 획득할 수 있는 다른 로그인 모듈과 결합되어야 합니다. 이 로그인 모듈의 두 하위 클래스인 CertRolesLoginModule 및 DatabaseCertLoginModule 은 속성 파일 또는 데이터베이스에서 권한 부여 역할을 가져오도록 동작을 확장합니다.
ID 로그인 모듈
ID 로그인 모듈은 하드 코딩된 사용자 이름을 모듈에 대해 인증된 모든 주체에 연결하는 간단한 로그인 모듈입니다. 주체 옵션으로 지정한 이름을 사용하여 SimplePrincipal 인스턴스를 만듭니다. 이 로그인 모듈은 서비스에 고정 ID를 제공해야 하는 경우에 유용합니다. 이는 지정된 주체 및 관련 역할과 연결된 보안을 테스트하는 데 개발 환경에서도 사용할 수 있습니다.
RunAs 로그인 모듈
RunAs 로그인 모듈은 인증 기간 동안 run-as 역할을 스택에 푸시하는 도우미 모듈입니다. 그런 다음 스택에서 run-as 역할을 커밋 또는 중단 단계에서 시작합니다. 이 로그인 모듈의 목적은 인증을 수행하기 위해 보안 리소스에 액세스해야 하는 다른 로그인 모듈에 대한 역할을 제공하는 것입니다(예: 보안 Jakarta Enterprise Bean에 액세스하는 로그인 모듈). 설정된 역할로 실행해야 하는 로그인 모듈보다 RunAs 로그인 모듈을 구성해야 합니다.
클라이언트 로그인 모듈
Client 로그인 모듈은 호출자 ID 및 자격 증명을 설정할 때 JBoss 클라이언트에서 사용할 로그인 모듈 구현입니다. 이렇게 하면 새 SecurityContext 가 생성되고 주체 및 자격 증명을 할당하며 SecurityContextThreadLocal 보안 컨텍스트로 설정합니다. 클라이언트 로그인 모듈은 현재 스레드의 호출자를 설정하기 위해 클라이언트가 지원되는 유일한 메커니즘입니다. 독립 실행형 클라이언트 애플리케이션과 서버 환경 모두 보안 환경이 JBoss EAP 보안 하위 시스템을 투명하게 사용하도록 구성되지 않은 JBoss Jakarta Enterprise Beans 클라이언트 역할을 하며 클라이언트 로그인 모듈을 사용해야 합니다.
주의

이 로그인 모듈은 인증을 수행하지 않습니다. 서버에서 후속 인증을 위해 제공된 로그인 정보만 서버 Jakarta Enterprise Beans 호출 계층에 복사합니다. JBoss EAP 내에서 이는 in-JVM 호출의 사용자 ID를 전환하는 경우에만 지원됩니다. 원격 클라이언트가 ID를 설정하는 데 지원되지 않습니다.

SPNEGO 로그인 모듈
SPNEGO 로그인 모듈은 KDC를 사용하여 호출자 ID 및 자격 증명을 설정하는 로그인 모듈 구현입니다. 이 모듈은 SPNEGO를 구현하며 JBoss 협상 프로젝트의 일부입니다. 이 인증은 LDAP 서버와의 협력을 허용하기 위해 AdvancedLdap 로그인 모듈과 체인된 구성에서 사용할 수 있습니다. 이 로그인 모듈을 사용하려면 웹 애플리케이션에서 NegotiationAuthenticator 도 활성화해야 합니다.
RoleMapping 로그인 모듈
RoleMapping 로그인 모듈은 인증 프로세스의 최종 결과인 역할을 하나 이상의 선언적 역할에 매핑하는 기능을 지원합니다. 예를 들어 인증 프로세스가 John에게 ldapAdmin 및 testAdmin 역할이 있고, 액세스를 위해 web.xml 또는 ejb-jar.xml 파일에 정의된 선언적 역할이 admin 인 경우, 이 로그인 모듈은 ldapAdmin 및 testAdmin 역할을 John에 매핑합니다. RoleMapping 로그인 모듈은 이전에 매핑된 역할의 매핑을 변경할 때 로그인 모듈 구성에 선택적 모듈로 정의해야 합니다.
로그인 모듈 원격화
Remoting login 모듈은 현재 인증되고 있는 요청이 원격 연결을 통해 수신되었는지 확인합니다. 원격 인터페이스를 사용하여 요청이 수신된 경우 해당 요청은 인증 프로세스 중에 생성된 ID와 연결됩니다.
RealmDirect 로그인 모듈
RealmDirect 로그인 모듈을 사용하면 기존 보안 영역을 인증 및 권한 결정에 사용할 수 있습니다. 이 모듈에서는 인증 결정을 내리고 사용자 역할을 매핑하기 위해 참조된 영역을 사용하여 ID 정보를 조회합니다. 예를 들어 JBoss EAP와 함께 제공되는 사전 구성된 기타 보안 도메인에는 RealmDirect 로그인 모듈이 있습니다. 이 모듈에서 영역을 참조하지 않으면 기본적으로 ApplicationRealm 보안 영역이 사용됩니다.
사용자 지정 모듈
JBoss EAP 보안 프레임워크와 함께 번들된 로그인 모듈이 보안 환경의 요구 사항을 충족하지 못하는 경우 사용자 지정 로그인 모듈 구현이 작성될 수 있습니다. AuthenticationManager에는 주체 주체 집합의 특정 사용 패턴이 필요합니다. Jakarta Authentication Subject 클래스의 정보 스토리지 기능과 이러한 기능을 사용하여 AuthenticationManager와 호환되는 로그인 모듈을 작성하려면 필요한 기능을 완벽하게 이해해야 합니다.

인증되지 않은Identity 로그인 모듈 옵션도 일반적으로 사용됩니다. 요청이 인증된 형식으로 수신되지 않는 경우도 있습니다. 인증되지 않은 ID는 관련된 인증 정보가 없는 요청에 특정 ID(예: 게스트 )를 할당하는 로그인 모듈 구성 옵션입니다. 이를 통해 보호되지 않은 서블릿이 특정 역할이 필요하지 않은 Jakarta Enterprise Beans에서 메서드를 호출할 수 있습니다. 이러한 주체는 관련 역할이 없으며 선택되지 않은 권한 제한 조건과 연결된 보안되지 않은 Jakarta Enterprise Beans 메서드에만 액세스할 수 있습니다.

2.8.6.2. 암호 스택

인증 중에 자격 증명 확인 및 역할 할당을 제공하는 각 로그인 모듈에서 여러 로그인 모듈을 함께 스택에 연결할 수 있습니다. 이는 많은 사용 사례에서 작동하지만, 자격 증명 확인 및 역할 할당이 여러 사용자 관리 저장소로 분할되는 경우도 있습니다.

사용자가 중앙 LDAP 서버에서 관리되고 애플리케이션별 역할이 애플리케이션의 관계형 데이터베이스에 저장되는 경우를 고려하십시오. password-stacking 모듈 옵션은 이 관계를 캡처합니다.

암호 스태킹을 사용하려면 각 로그인 모듈에서 <module -option> 섹션에 있는 FirstPass를 사용하도록 password- stacking 특성을 설정해야 합니다. 암호 스택에 대해 구성된 이전 모듈이 사용자를 인증한 경우 다른 모든 stacking 모듈은 사용자를 인증된 것으로 간주하고 권한 부여 단계에 대한 역할 집합을 제공하려는 경우에만 시도합니다.

password-stacking 옵션이 useFirstPass 로 설정된 경우 이 모듈은 먼저 로그인 모듈 공유 상태 맵에서 javax.security.auth.login.namejavax.security.auth.login.password 속성 이름으로 공유 사용자 이름과 암호를 찾습니다.

발견되면 이러한 속성이 주체 이름과 암호로 사용됩니다. 찾을 수 없는 경우 이 로그인 모듈에서 주체 이름과 암호를 설정하고 속성 이름 javax.security.auth.login.name 및 javax. security.auth.login.password 에 각각 저장됩니다.

2.8.6.3. 암호 해싱

대부분의 로그인 모듈은 클라이언트가 제공한 암호를 사용자 관리 시스템에 저장된 암호와 비교해야 합니다. 이러한 모듈은 일반적으로 일반 텍스트 암호로 작동하지만 일반 텍스트 암호가 서버 측에 저장되지 않도록 해시된 암호를 지원하도록 구성할 수 있습니다. JBoss EAP는 해싱 알고리즘, 인코딩 및 문자 집합을 구성하는 기능을 지원합니다. 또한 사용자 암호 및 저장 암호가 해시되는 시기를 정의합니다.

중요

Red Hat JBoss Enterprise Application Platform Common Criteria 인증 구성은 SHA-256보다 약한 해시 알고리즘을 지원하지 않습니다.

2.8.7. 보안 관리

보안 하위 시스템의 보안 관리 부분은 보안 하위 시스템의 높은 수준의 동작을 재정의하는 데 사용됩니다 . 각 설정은 선택 사항입니다. 이러한 설정은 깊은 복사 제목 모드를 제외하고는 변경되지 않습니다.

2.8.7.1. 깊은 복사 모드

기본적으로 심층 복사 제목 모드가 비활성화된 경우 보안 데이터 구조를 복사하면 전체 데이터 구조를 복사하는 대신 원본에 대한 참조가 됩니다. 이 동작은 더 효율적이지만 플러시 또는 로그아웃 작업을 통해 동일한 ID가 있는 여러 스레드가 주체를 지우는 경우 데이터 손상이 발생할 수 있습니다.

심층 복사 제목 모드가 활성화되면 데이터 구조의 전체 사본과 연결된 모든 데이터가 복제 가능으로 표시될 수 있습니다. 이 방법은 스레드 보안이 향상되지만 효율성이 떨어집니다.

2.8.8. 추가 구성 요소

2.8.8.1. 자카르타 인증

Jakarta Authentication은 Java 애플리케이션을 위한 플러그형 인터페이스이며 Jakarta Authentication 사양에 정의되어 있습니다. Jakarta Authentication 인증 외에도 JBoss EAP를 사용하면 Jakarta Authentication을 사용할 수 있습니다. Jakarta 인증 인증은 보안 도메인에서 로그인 모듈을 사용하여 구성되며 이러한 모듈이 스택될 수 있습니다. jaspitest 보안 도메인은 개발 목적으로 기본적으로 포함된 간단한 Jakarta Authentication 보안 도메인입니다.

웹 기반 관리 콘솔은 Jakarta 인증 모듈을 구성하기 위한 다음 작업을 제공합니다.

  • add
  • edit
  • 제거
  • reset

JBoss EAP에 배포된 애플리케이션에는 Jakarta Authentication 보안 도메인을 사용하도록 배포 설명자에 특수 인증기를 구성해야 합니다.

2.8.8.2. 자카르타 인증

Jakarta Authorization은 컨테이너와 권한 부여 서비스 공급자 간의 계약을 정의하는 표준으로, 컨테이너에서 사용할 공급자를 구현합니다. 사양에 대한 자세한 내용은 Jakarta Authorization 1.1 Specification 을 참조하십시오.

JBoss EAP는 보안 하위 시스템의 보안 기능 내에서 Jakarta Authorization에 대한 지원을 구현합니다.

2.8.8.3. 자카르타 보안

Jakarta Security는 인증 및 ID 저장소를 위한 이식 가능한 플러그인 인터페이스와 프로그래밍 방식의 보안에 대한 액세스 지점을 제공하는 새로운 주입형 SecurityContext 인터페이스를 정의합니다. 이러한 API의 기본 제공 구현을 사용하거나 사용자 지정 구현을 정의할 수 있습니다. 사양에 대한 자세한 내용은 Jakarta Security Specification 을 참조하십시오.

Jakarta Security API는 elytron 하위 시스템에서 사용할 수 있으며 관리 CLI에서 활성화할 수 있습니다. 자세한 내용은 개발 가이드의 자카르타 보안 API 정보를 참조하십시오.

2.8.8.4. system-grained Authorization 및 XACML 정보

관리자가 모듈 액세스 권한을 부여하는 의사 결정 프로세스와 관련된 여러 변수와 변화하는 요구 사항에 맞게 세분화된 권한을 조정할 수 있습니다. 따라서 세분화된 권한 부여가 복잡해질 수 있습니다.

참고

웹 또는 Jakarta Enterprise Bean의 XACML 바인딩은 JBoss EAP에서 지원되지 않습니다.

JBoss EAP는 XACML을 매체로 사용하여 세분화된 권한 부여를 달성합니다. XACML은 세밀한 인증을 획득하는 복잡한 특성에 표준 기반 솔루션을 제공합니다. XACML은 정책 언어와 의사 결정을 위한 아키텍처를 정의합니다. XACML 아키텍처에는 일반 프로그램 흐름에서 요청을 가로채고 PDP(Policy Decision Point)를 요청하는 PEP(Policy Enforcement Point)가 포함되어 있습니다. PDP는 PEP에서 생성한 XACML 요청을 평가하고 정책을 통해 실행되어 다음 액세스 결정 중 하나를 수행합니다.

허용
액세스가 승인되었습니다.
거부
액세스가 거부됩니다.
INDETERMINATE
PDP에 오류가 있습니다.
NOAPPLICABLE
요청에 누락된 속성이 있거나 정책 일치 항목이 없습니다.

XACML에는 다음과 같은 기능이 있습니다.

  • XACML v2.0 라이브러리
  • JAXB v2.0 기반 개체 모델
  • XACML 정책 및 속성 저장 및 검색을 위한 ExistDB 통합

2.8.8.5. SSO

JBoss EAP는 undertowinfinispan 하위 시스템을 사용하여 클러스터형 SSO와 비클러스터형 SSO에 대한 기본 지원을 제공합니다. 여기에는 다음이 필요합니다.

  • 인증 및 권한 부여를 처리하는 구성된 보안 도메인입니다.
  • SSO infinispan 복제 캐시. 관리형 도메인의 hafull-ha 프로필에 있거나 독립 실행형 서버에는 standalone-ha.xml 또는 standalone-full-ha.xml 구성 파일을 사용하여 존재합니다.
  • cache-container 및 SSO 복제 캐시가 있어야 합니다.
  • The undertow 하위 시스템은 SSO를 사용하도록 구성해야 합니다.
  • SSO 정보를 공유할 각 애플리케이션은 동일한 보안 도메인을 사용하도록 구성해야 합니다.