1.3. 추가 구성 요소
JBoss EAP를 사용하여 Kerberos SSO를 활성화하려면 Kerberos 구성 요소 외에도 몇 가지 다른 항목이 필요합니다.
1.3.1. SPNEGO 링크 복사링크가 클립보드에 복사되었습니다!
SPNEGO( Simple and protecteded GSSAPI Negotiation Mechanism )는 웹 애플리케이션에서 사용하기 위한 Kerberos 기반 SSO(Single Sign-On) 환경을 확장하는 메커니즘을 제공합니다.
SPNEGO는 클라이언트 애플리케이션에서 서버에 자신을 인증하는 데 사용하는 인증 방법입니다. 이 기술은 클라이언트 애플리케이션과 서버가 서로 통신하려고 할 때 사용되지만 다른에서 지원하는 인증 프로토콜은 확실하지 않습니다. SPNEGO는 클라이언트 애플리케이션과 서버 간의 일반적인 GSSAPI 메커니즘을 결정한 다음 모든 추가 보안 작업을 디스패치합니다.
웹 브라우저와 같은 클라이언트 컴퓨터에 있는 애플리케이션이 웹 서버에서 보호된 페이지에 액세스하려고 하면 서버에서 권한 부여가 필요한지 응답합니다. 그러면 애플리케이션이 Kerberos KDC에서 서비스 티켓을 요청합니다. 티켓이 획득되면 애플리케이션은 SPNEGO 형식이 지정된 요청으로 래핑하고 브라우저를 통해 웹 애플리케이션으로 다시 보냅니다. 배포된 웹 애플리케이션을 실행하는 웹 컨테이너는 요청의 압축을 풀고 티켓 인증을 시도합니다. 인증에 성공하면 액세스 권한이 부여됩니다.
SPNEGO는 Microsoft Active Directory의 핵심적인 일부인 Red Hat Enterprise Linux 및 Kerberos 서버에 포함된 Kerberos 서비스를 비롯한 모든 종류의 Kerberos 공급자와 함께 작동합니다.
1.3.2. JBoss Negotiation 링크 복사링크가 클립보드에 복사되었습니다!
JBoss Negotiation은 JBoss EAP에서 SPNEGO를 지원하기 위해 인증자 및 Jakarta Authentication 로그인 모듈을 제공하는 JBoss EAP와 함께 제공되는 프레임워크입니다. JBoss 협상은 레거시 보안 하위 시스템 및 레거시 코어 관리 인증에서만 사용됩니다. Jakarta Authentication 로그인 모듈에 대한 자세한 내용은 JBoss EAP 보안 아키텍처 가이드의 선언적 보안 및 자카르타 인증 및 보안 도메인 섹션을 참조하십시오.
JBoss 협상을 사용하여 REST 웹 서비스와 같은 특정 애플리케이션의 보안을 설정할 때 시간 제한 기간 동안 하나 이상의 세션을 만들고 열린 상태로 유지할 수 있습니다. 이 기간 동안 클라이언트에서 요청을 수행할 때 기본값은 30분입니다. 이는 기본 인증을 사용하여 애플리케이션 보안에 대한 예상되는 동작과 다르며, 이 동작은 열린 세션이 되지 않습니다. JBoss Negotiation은 session을 사용하여 협상/커넥션 상태를 유지하도록 구현되어 이러한 세션을 생성할 것으로 예상됩니다.