EGL LDAP 액세스를 지원하는 J2EE 보안 설정

EGL LDAP 액세스를 지원하는 J2EE 보안 샘플을 설정하려면 다음 지시사항을 따르십시오. 샘플을 설정하려면 데이터를 가져오고 J2EE 보안을 구성하고 샘플을 실행하십시오.

시작하기 전에

EGL LDAP 액세스를 지원하는 J2EE 보안 샘플을 사용하려면 LDAP 준수 서버를 사용해야 합니다. LDAP 준수 서버가 없는 경우, 개방형 소스 서버(예: ApacheDS)와 해당 서버에 대한 액세스를 제공하는 클라이언트(예: Apache Directory Studio)를 사용할 수 있습니다. 세부사항은 LDAP 준수 소프트웨어 구성을 참조하십시오.

이 태스크 정보

이러한 설정 지시사항은 ApacheDS 및 Apache Directory Studio와 관련됩니다. 다른 LDAP 준수 서버를 사용하는 경우 서버에 따라 구성이 다를 수 있습니다.

프로시저

  1. 데이터를 가져오십시오.
    1. 작업공간으로 샘플 프로젝트를 가져오려면 EGL LDAP 액세스를 지원하는 J2EE 보안 페이지에서 샘플 가져오기를 클릭하십시오. 작업공간 마이그레이션 도구가 필요한 마이그레이션을 수행할 수 있도록 허용하십시오.
    2. 샘플 프로젝트에서 다음 두 파일을 각각 연 후에 컨텐츠가 서버에 대해 적합한지 확인하십시오.
      • EGLSource/libraries/LdapLoginLib.egl (다음 providerURL 항목을 변경해야 할 수도 있음):
        providerUrl String = "ldap://localhost:389/o=sample";
      • EGLSource/libraries/UserObjectLib.egl
    3. 프로젝트에 있는 SampleCompany.ldif 파일의 샘플 데이터를 디렉토리 서버로 가져오십시오.
      • 기존 LDAP 준수 서버를 사용하는 경우. 다음 위치에 있는 SampleCompany.ldif 파일에서 샘플 데이터를 가져오십시오.
        workspace/SecureLDAPSample/
        참고: workspace는 EGL 제품 작업공간의 완전한 경로 이름(예: C:/MyWorkspace)입니다.
      • 개방형 소스 Apache 소프트웨어를 데모용으로 사용할 경우, Apache Directory Studio를 사용하여 샘플 데이터 가져오기의 지시사항에 따라 ApacheDS 디렉토리 서버에 샘플 데이터를 가져오십시오.
  2. J2EE 보안을 구성하십시오. 웹 기반의 컨테이너 관리 J2EE 보안 설정에 대한 일반 정보는 "J2EE 컨테이너 관리 보안 사용"을 참조하십시오.
    1. J2EE 보안용 WebSphere Application Server를 설정하십시오.
      1. WebSphere Application Server(예: 버전 8.0)의 인스턴스를 작성하고 서버를 시작하십시오.
      2. 서버를 마우스 오른쪽 단추로 클릭하고 관리 > 관리 콘솔 실행을 선택하십시오.
      3. 기본 관리 콘솔에서 보안 > 글로벌 보안을 펼친 후 보안되는 관리, 애플리케이션 및 인프라를 클릭하십시오.
      4. 관리 보안 사용애플리케이션 보안 사용을 선택하고 Java 2 보안을 사용하여 로컬 자원에 대한 애플리케이션 액세스 제한은 선택 취소하십시오.
      5. 사용 가능한 영역 정의 섹션에서 독립형 LDAP 레지스트리를 선택하십시오. 현재 범주로 설정을 클릭하십시오.
      6. 독립형 LDAP 레지스트리 특성에 액세스하십시오.
        1. 구성을 클릭하십시오.
        2. 독립형 LDAP 레지스트리 특성 창의 추가 특성 탭에서 고급 LDAP(Lightweight Directory Access Protocol) 사용자 레지스트리 설정을 클릭하십시오.
        3. 사용자 필터의 경우 (&(uid=%v)(objectclass=person))을 입력하고 확인을 클릭하십시오.
      7. 기본 관리 사용자 이름에 msmith를 입력하십시오.
      8. 자동으로 생성된 서버 ID를 선택하십시오.
      9. LDAP 바인드 기준을 입력하고 확인적용을 클릭하십시오. 개방형 소스 Apache 소프트웨어를 데모용으로 사용할 경우, 테이블에 나열된 기준을 사용하십시오. 그렇지 않으면 기본값을 사용하십시오.
        표 1. LDAP 바인드 기준
        바인드 기준
        LDAP 서버 유형 사용자 정의
        호스트 localhost
        포트 389
        기본 식별 이름(DN) o=sample
        바인드 식별 이름 uid=msmith,ou=people,o=sample
        바인드 비밀번호 pass
      10. 창 맨 위의 메시지 상자에서 마스터 구성에 직접 저장을 클릭하십시오.
        중요사항: 관리 보안을 사용 가능으로 설정했기 때문에 사용자 ID msmith 및 비밀번호 pass를 사용하여 WebSphere Application Server에 로그인해야 합니다. 관리 보안이 더 이상 필요하지 않을 경우, 이 샘플을 실행한 후 관리 보안을 해제하십시오.
      11. 관리 콘솔을 종료하고 서버를 중지하십시오.
    2. WebSphere Application Server의 인스턴스를 설정하십시오.
      1. 서버를 마우스 오른쪽 단추로 클릭하고 열기를 선택하십시오.
      2. 자동 연결 설정을 지정하거나 서버 연결 유형을 RMI에서 SOAP로 변경하십시오. 기본 포트를 사용하십시오.
      3. 보안 아래에서 이 서버에서 보안 사용을 선택하십시오. 사용자 ID는 msmith를 입력하고, 비밀번호는 pass를 입력하십시오. SSL 데이터 교환 중에 자동으로 서버 인증 신뢰가 선택되어 있는지 확인하십시오.
        중요사항: 인증 오류와 불필요한 루핑을 방지하려면 사용자 ID와 비밀번호가 관리 콘솔에 입력한 신임 정보와 정확하게 일치하는지 확인하십시오.
      4. 변경사항을 저장하십시오.
    3. EGL LDAP 액세스를 지원하는 J2EE 보안 샘플을 다운로드하십시오.
      J2EE 보안용으로 프로젝트 SecureLDAPSample에 대한 배치 디스크립터(WebContent/WEB-INF/web.xml)가 구성되었습니다.
      • 보안 탭에서 AllRole 보안 역할이 추가되었습니다.
      • Constraint1 보안 제한조건이 추가되었습니다. 제한조건은 J2EE 보안에 의해 보안 설정되는 이 프로젝트의 자원과 해당 자원에 액세스할 수 있는 역할을 지정합니다. Constraint1은 이 프로젝트에서 All Role 보안 역할을 가진 사용자만이 WebContent (“/*”) 아래 정의된 JSP 페이지 또는 자원에 액세스할 수 있도록 지정합니다.
      • 페이지 탭에서, 인증 메소드가 FORM으로 설정되었습니다. 이는 양식 기반 인증이 사용됨을 나타냅니다. 로그인 페이지와 오류 페이지가 프로젝트에 정의되었으며 양식 기반 인증에 사용하도록 지정되었습니다.
      SecureLDAPSampleEAR 프로젝트의 배치 디스크립터 EarContent/META-INF/application.xml이 J2EE 보안을 위해 다음과 같이 구성되어 있습니다.
      • 보안 탭에서 AllRole 보안 역할이 추가되었습니다.
      • WebSphere 바인딩 아래에서 모든 인증된 사용자가 AllRole에 맵핑되도록 선택되었습니다. 그 결과 SampleCompany 디렉토리의 모든 사용자 ID가 AllRole에 맵핑되며 이 웹 애플리케이션을 실행할 수 있습니다.
      관리 보안 실행에 문제가 있을 경우 관리 콘솔 대신 명령행에서 작업하여 관리 보안을 사용 불가능으로 설정할 수 있습니다. 명령행에서 관리 보안을 사용 불가능으로 설정하려면 다음을 수행하십시오.
      1. 명령 프롬프트에서 다음을 입력하십시오.
        WebSphere_home\bin\wsadmin.bat -conntype NONE
        참고: WebSphere_home은 WebSphere Application Server에 대한 설치 디렉토리의 완전한 경로 이름입니다.
      2. 시스템 프롬프트가 다시 표시되면 securityoff를 입력하십시오.
      3. 완료되면 quit를 입력하십시오.
      4. Application Server를 다시 시작하십시오.
  3. 샘플을 실행하십시오.
    1. SecureLDAPSample 프로젝트를 정리하십시오.
    2. 코드를 생성하려면 SecureLDAPSample.eglbld에 있는 SecureLDAPSampleWebBuildOptions 빌드 디스크립터를 사용하십시오.
    3. WebSphere Application Server의 인스턴스를 마우스 오른쪽 단추로 클릭하십시오. 프로젝트 추가 및 제거를 클릭하십시오.
    4. SecureLDAPSampleEAR을 서버에 추가하고 완료를 클릭하십시오.
    5. 보안 구성을 완료하려면 WebSphere Application Server를 시작하십시오.
      1. 서버를 마우스 오른쪽 단추로 클릭하고 관리 > 관리 콘솔 실행을 선택하십시오.
      2. 애플리케이션을 펼치고 엔터프라이즈 애플리케이션을 클릭하십시오. 엔터프라이즈 애플리케이션 페이지가 표시됩니다.
      3. SecureLDAPSampleEAR을 클릭하십시오. 애플리케이션 구성 페이지가 표시됩니다.
      4. 웹 모듈 특성 섹션에서 세션 관리를 클릭하십시오. 세션 관리 페이지가 표시됩니다.
      5. 일반 특성 섹션에서 보안 통합을 클릭하십시오.

      동일한 서버 인스턴스에서 다시 샘플을 실행할 경우 보안 구성을 반복할 필요가 없습니다.

    6. WebSphere Application Server를 다시 시작하십시오.
    7. SecureLDAPSample의 WebContent 폴더에서 welcome.jsp를 마우스 오른쪽 단추로 클릭하십시오. 실행 도구를 선택하고 서버에서 실행을 선택하십시오.
    8. 로그인 페이지에서 사용자 ID ajones 및 비밀번호 pass를 입력하여 샘플 회사 고객으로 인증한 후 확인을 클릭하십시오. 샘플 회사 시작 페이지가 열립니다. ajones에 대한 데이터를 표시하거나 업데이트할 수 있습니다.
    9. 업데이트를 클릭하십시오.
    10. 일부 데이터를 변경하고 업데이트 및 표시를 클릭하십시오. 변경사항이 디렉토리에 커미트됩니다. 새 데이터가 페이지에 표시됩니다.
    11. 서버와 Workbench를 다시 시작하십시오.
    12. 서버에서 welcome.jsp를 실행하고 사용자 ID msmith 및 비밀번호 pass를 사용하여 샘플 회사 직원으로 로그인하십시오. 데이터를 표시하거나 업데이트할 수 있습니다.

피드백