인증 및 권한 부여

인증 및 권한 부여 지원은 다음에 의해 제공될 수 있습니다.
  • WebSphere® Application Server 또는 Apache Tomcat과 같은 애플리케이션 서버가 제공하는 웹 컨테이너 관리(JEE) 보안입니다.
  • 애플리케이션에서 작성된 애플리케이션 관리(사용자 정의) 보안입니다.
다음 경우 Rich UI 애플리케이션 보호를 위해 JEE 보안을 사용하는 것을 고려하십시오.
  • 전체 Rich UI 애플리케이션을 보안 설정해야 합니다.
  • Rich UI 애플리케이션 내에서 보안 관련 정보에 액세스할 필요가 없습니다.
  • 애플리케이션에서 보안 관련 코드를 작성하지 않으려고 합니다.
다음 경우 Rich UI 애플리케이션 보호를 위해 사용자 정의 보안을 사용하는 것을 고려하십시오.
  • Rich UI 애플리케이션의 일부 또는 모두에 대한 액세스를 제한해야 합니다.
  • 애플리케이션 내에서 사용자 ID나 비밀번호 또는 둘 모두에 액세스하려고 합니다.
  • Rich UI 애플리케이션의 인증을 EGL 싱글 사인온이라고 하는 프로세스에서 애플리케이션이 사용하는 기타 자원의 인증과 결합하려고 합니다. 세부사항은 "EGL 싱글 사인온"을 참조하십시오..

웹 컨테이너 관리(JEE) 보안

웹 컨테이너 관리 보안은 EGL 개발자가 비즈니스 로직에 초점을 맞추도록 허용하여 컨테이너에 대한 사용자 인증 및 권한 부여에 대한 책임을 넘겨줍니다.

JEE 인증의 두 공통 유형은 기본 및 양식 기반입니다. JEE 기본 인증(HTTP 기본 인증으로도 알려짐)에서 브라우저와 같은 클라이언트가 사용자 ID 및 비밀번호를 제공하지 않고 서버에서 웹 페이지를 요청하는 경우 서버가 401 응답 코드를 다시 전송합니다. 그런 다음 클라이언트는 사용자에게 기본 로그인 대화 상자를 표시하여 사용자 ID 및 비밀번호에 대해 사용자에게 프롬프트를 표시합니다. 클라이언트는 HTTP 헤더의 사용자 ID 및 비밀번호를 포함하여 서버에 요청을 재전송합니다. 사용자가 인증되면 서버가 요청된 페이지를 리턴합니다. 사용자 ID 및 비밀번호가 올바르지 않은 경우 서버가 401 응답 코드를 리턴하고 클라이언트가 사용자에게 다시 프롬프트를 표시합니다. JEE 양식 기반 인증에서 브라우저 제공 로그인 대화 상자 대신 애플리케이션의 룩앤필로 사용자 정의된 로그인 화면을 사용할 수 있습니다. 사용자 ID 및 비밀번호는 요청의 HTTP 헤더 대신 양식 데이터의 서버에 전달됩니다.

JEE 보안은 역할을 사용하여 자원에 대한 액세스를 관리합니다. 특정 자원에 대한 액세스가 특정 역할에 허용됩니다. 사용자 및 그룹은 적절한 역할에 맵핑됩니다. 예를 들어, 사용자 Bob은 역할 관리자에 맵핑될 수 있습니다.

JEE 권한 부여는 선언적 또는 프로그램이 될 수 있습니다. 보안 정보는 배치 디스크립터에서 지정되므로 선언적 권한 부여를 사용할 수 있습니다. 애플리케이션 서버는 특정 사용자가 역할에 지정되었는지 여부를 판별하고 해당 역할로 특정 자원에 액세스할 수 있는지 여부를 결정하기 위해 해당 배치 디스크립터에 액세스합니다. JEE 보안은 또한 isUserInRole()과 같은 API의 사용을 통해 프로그램 권한을 포함하지만 해당 함수를 Rich UI 애플리케이션 내에서 사용할 수 없습니다. 그러므로 Rich UI 애플리케이션은 선언적으로 또는 사용자 정의, 사용자 제공 코드를 통해 권한 부여를 수행해야 합니다.

LDAP(Lightweight Directory Access Protocol) 디렉토리 서버와 같은 사용자 레지스트리 또는 JEE 보안과 함께 사용되는 관계형 데이터베이스는 JEE 환경의 외부입니다. 시스템 관리자는 저장소에 새 사용자 추가와 같은 관리 태스크를 수행해야 합니다.

JEE 보안은 WebSphere Application Server 및 Apache Tomcat을 통해 사용 가능하지만 워크벤치에서는 사용할 수 없습니다. WebSphere 또는 Tomcat에 Rich UI 애플리케이션을 배치하여 보안을 적용하고 테스트해야 합니다.

JEE 보안이 사용자의 상황에 적합한지 판별하려면 이 장의 문서 및 애플리케이션 서버의 자세한 온라인 문서를 검토하십시오.

애플리케이션 관리(사용자 정의) 보안

웹 컨테이너 관리 보안이 사용자의 요구사항에 적합하지 않은 경우 Rich UI 애플리케이션으로 사용자 정의 보안을 빌드할 수 있습니다. 사용자 정의 보안에서 Rich UI 애플리케이션에 보안 관련 코드를 추가해야 하지만 JEE 보안 단독으로는 애플리케이션의 보안 모델을 표현하는 데 충분하지 않은 경우 이를 피할 수 없습니다. 원하는 경우 두 보안 양식을 결합할 수 있습니다.

사용자 정의 권한은 JEE 역할보다 세부 단위 레벨의 권한을 제공할 수 있습니다. 애플리케이션의 제한 파트에 액세스하기 전에 사용자 정의 보안을 사용하여 사용자를 인증하려고 할 수 있습니다.