독립형 사용자 정의 레지스트리
독립형 사용자 정의 레지스트리는 제품에서 제공되는 대로 UserRegistry Java™ 인터페이스를 구현하는 고객 구현 레지스트리입니다. 고객 구현 레지스트리는 가상적으로 관계형 데이터베이스, 플랫 파일 등의 모든 계정 저장소 유형을 지원할 수 있습니다. 사용자 정의 사용자 레지스트리는 연합 저장소, 독립형 LDAP(Lightweight Directory Access Protocol) 레지스트리 또는 로컬 운영 체제 레지스트리 이외의 레지스트리 또는 저장소 양식이 이미 운영 체제에 있는 다양한 환경에서 제품 보안을 채택하는 경우에 상당한 융통성을 제공합니다.
WebSphere® Application Server 보안은 다양한 로컬 운영 체제 기반의 레지스트리 및 다양한 독립형 LDAP(Lightweight Directory Access Protocol) 기반의 레지스트리를 사용하는 구현을 제공합니다. 그렇지만 사용자 및 그룹 데이터가 다른 저장소 또는 사용자 정의 사용자 레지스트리(예: 데이터베이스)에 있고 이 정보를 로컬 운영 체제 저장소나 독립형 LDAP 레지스트리 구현으로 이동하는 것이 불가능한 상황이 있을 수 있습니다. 이런 상황에서 WebSphere Application Server 보안은 현재 레지스트리와 상호 작용하도록 구현할 수 있는 서비스 제공자 인터페이스(SPI)를 제공합니다. 사용자 정의 레지스트리 기능은 WebSphere Application Server에서 구현되지 않는 모든 사용자 레지스트리를 지원합니다.
SPI는 UserRegistry 인터페이스입니다. UserRegistry 인터페이스는 권한 부여 용도에 필요한 메소드의 콜렉션입니다. 이 메소드는 비밀번호나 인증서로 개별 사용자를 인증하고 권한 속성이라고 하는 사용자 정보를 수집합니다. 이 인터페이스는 사용자 및 그룹 정보를 포함하는 메소드도 포함하여 자원에 액세스를 제공할 수도 있습니다. 인터페이스에서 메소드를 구현할 때 UserRegistry 인터페이스로 조작하는 정보를 레지스트리 정보로 맵핑하는 방법도 결정해야 합니다.
이 인터페이스에는 제품 보안이 모든 보안 관련 태스크에 대해 레지스트리와 상호 작용하도록 구현에 대한 메소드 세트를 포함합니다. 제공되는 로컬 운영 체제 및 LDAP 레지스트리도 이 인터페이스를 구현합니다. 사용자 정의 사용자 레지스트리는 플러그 가능한 사용자 레지스트리 또는 짧게 사용자 정의 레지스트리라고도 합니다. 사용자 정의 사용자 레지스트리 구현은 스레드 안전해야 합니다.
사용자 정의 레지스트리 빌드는 소프트웨어 구현 노력입니다. 구현은 해당 조작을 위해 다른 WebSphere Application Server 자원(예: 데이터 소스)에 종속되지 않습니다.
사용자 정의 레지스트리 구현이 어떤 WebSphere Application Server 컴포넌트(예: 데이터 소스, 엔터프라이즈 Bean 등)에 종속되지 않도록 하십시오. 보안은 설정 중에 대부분의 다른 WebSphere Application Server 컴포넌트 전에 초기화되고 사용되기 때문에 이런 종속성이 있으면 안됩니다. 이전 구현이 이런 컴포넌트를 사용했었다면 종속성이 제거되도록 변경하십시오.
- 사용자 보안 이름
사용자 이름은 로컬 운영 체제 레지스트리의 사용자 이름과 유사합니다.
사용자 이름은 운영 체제 레지스트리의 사용자 프로파일과 유사합니다.
- 이 이름은 안전한 애플리케이션에서 프롬프트될 때 로그인에 사용됩니다. 기본적으로 EJB(Enterprise JavaBeans) getCallerPrincipal 메소드 및 getRemoteUser 및 getUserPrincipal 서블릿 메소드는 이 이름을 리턴합니다. 사용자 보안 이름은 userSecurityName, userName 또는 사용자 이름이라고도 합니다.
- WAS_UseDisplayName
- 이는
사용자 레지스트리의 사용자 정의 특성입니다. 이 특성은 getCallerPrincipal(), getUserPrincipal(),
RemoteUser() 메소드 리턴 값을 정의합니다. 다음은 WAS_UseDisplayName에
허용되는 값을 보여줍니다.
- false 이는 기본값입니다. 보안 이름이 리턴됩니다.
- true 표시 이름이 리턴됩니다. 이 설정에는 사용자 정의 특성 com.ibm.websphere.security.useLoggedSecurityName이 true로 설정되어야 합니다.
- 고유 사용자 ID
- 이 ID는 사용자의 고유 ID를 나타내며 UserRegistry 인터페이스에 필요합니다. 고유 ID는 Windows 시스템의 시스템 ID(SID), Linux 및 UNIX 시스템의 고유 ID(UID), LDAP(Lightweight Directory Authentication Protocol)의 식별 이름(DN)과 유사합니다. 이 ID는 uniqueUserId라고도 합니다. 고유 ID는 보호된 자원에 대한 권한 부여 의사결정을 작성하는 데 사용됩니다.
- 표시 사용자 이름
이 이름은 사용자를 설명하는 선택적 문자열입니다. 구현은 정보용으로만 표시 이름을 사용할 수 있습니다. 이 이름은 존재하거나 고유할 필요가 없습니다. 사용자 인터페이스는 표시 이름을 사용하여 사용자에 대한 자세한 정보를 표시할 수 있습니다.
표시 이름은 사용자 프로파일에 대한 텍스트 설명입니다.
- 그룹 보안 이름
- 보안 그룹을 나타내는 이 이름은 groupSecurityName, groupName, 그룹 이름이라고도 합니다.
- 고유 그룹 ID
- 고유 ID는 그룹의 ID입니다. 이 이름은 uniqueGroupId ID라고도 합니다.
- 표시 그룹 이름
- 표시 이름은 그룹을 설명하는 선택적 문자열입니다.
UserRegistry 인터페이스 주제는 구현해야 하는 인터페이스의 각 메소드를 설명합니다. 각 메소드 및 샘플에서 해당 사용법에 대한 설명 및 버전 4 인터페이스의 모든 변경사항이 제공됩니다. 관련 참조 절에서는 파일 기반의 레지스트리 샘플을 비롯하여 다른 모든 사용자 정의 사용자 레지스트리 문서에 대한 링크가 제공됩니다. 제공되는 샘플은 매우 단순하며 기능에 익숙해질 수 있도록 제공됩니다. 이 샘플을 실제 프로덕션 환경에서는 사용하지 마십시오.