Sun Java Enterprise System 2005Q4 기술 개요

인증 및 단일 사인 온

Java ES 인증 및 권한 부여 서비스는 Access Manager에 의해 제공됩니다. Access Manager는 Directory Server의 정보를 사용하여 기업에서 사용자와 Java ES 웹 서비스 또는 기타 웹 기반 서비스 간의 상호 작용을 중개합니다.

Access Manager는 정책 에이전트라는 외부 구성 요소를 사용합니다. 정책 에이전트는 Access Manager에서 보안하는 서비스 또는 자원을 호스트하는 웹 서버에 플러그 인됩니다. 정책 에이전트는 Access Manager 대신 보안된 자원에 대한 사용자의 요청을 중개합니다. Portal Server 및 Communications Express와 같은 일부 Java ES 구성 요소의 경우 Access Manager 하위 구성 요소에서 정책 에이전트의 기능을 제공합니다( Sun Java System Access Manager 7 2005Q4 참조).

인증

Access Manager에는 기업에서 HTTP 또는 HTTPS를 통해 웹 서비스에 대한 액세스를 요청하는 사용자의 아이디를 확인하기 위한 인증 서비스가 포함되어 있습니다. 예를 들어, 동료 전화 번호를 조회해야 하는 회사 직원은 브라우저를 사용하여 회사의 온라인 전화 번호부로 이동합니다. 전화번호부 서비스에 로그인하려면 사용자 아이디와 비밀번호를 입력해야 합니다.

인증 순서는 그림 3–2에 나와 있습니다. 정책 에이전트는 전화 번호부 로그온 요청을 중개하며(1), 요청을 인증 서비스에 전송합니다(2). 인증 서비스는 Directory Server에 저장된 정보에 대하여 사용자 아이디 및 비밀번호를 확인합니다(3). 로그인 요청이 유효하면 사용자가 인증되며 (4), (5) 및 (6) 회사 전화 번호부가 해당 직원에게 표시됩니다(7). 로그인 요청이 유효하지 않으면 오류가 생성되며 인증이 실패합니다.

또한 인증 서비스는 HTTPS에서 인증서 기반 인증도 지원합니다.

그림 3–2 인증 순서

웹 브라우저, 정책 에이전트, 인증 서비스, 세션 서비스 및 Directory Server를 포함하여 인증 순서를 보여주는 다이어그램.

단일 사인 온

이전 단락에서 설명된 인증 시나리오에서 중요한 단계를 강조합니다. 사용자의 인증 요청이 확인되면 그림 3–2와 같이 Access Manager’의 세션 서비스가 사용됩니다(4). 세션 서비스에서 세션 토큰을 생성합니다. 세션 토큰에는 사용자의 아이디 정보 및 토큰 아이디가 들어 있습니다(5). 세션 토큰은 인증 요청을 한 브라우저로 해당 토큰을 쿠키로 전송하는(7) 정책 에이전트로 다시 전송됩니다(6).

인증된 사용자가 다른 보안 서비스에 액세스하려고 하면 브라우저는 세션 토큰을 해당 정책 에이전트에 전달합니다. 정책 에이전트는 세션 서비스에서 사용자의 이전 인증이 아직 유효한지 확인하고, 사용자 아이디 및 비밀번호를 재입력하라는 요청 없이 두 번째 서비스에 대한 액세스 권한을 해당 사용자에게 부여합니다.

따라서, 사용자가 한 번만 사인 온하면 Java Enterprise System에서 제공하는 여러 웹 기반 서비스에 인증됩니다. 단일 사인 온 인증은 사용자가 명시적으로 로그아웃하거나 세션이 만료될 때까지 유효합니다.