2014-03-27 2 views
1

OpenAM + J2EE tomcat 에이전트로 Java 서블릿을 보호하려고합니다. OpenAM의 OpenDJ를 사용하여이 부분을 작동 시켰습니다.OpenAM에서 LDAP 인증 모듈 인스턴스를 구성하는 방법

이제 LDAP 서버를 인증하려고하는데 OpenAM 용 LDAP 모듈 인스턴스를 추가했지만 사용자의 uid/password를 사용하려고하면 "이 조직에 프로필이 없습니다"라는 메시지가 나타납니다. LDAP 저장소.

이 설명에서 OpenAM 관리 가이드를 확인한 것은 다소 간단합니다. OpenAM 용으로 구성된 데이터 저장소를 사용하지 않고이 작업을 수행 할 수 있는지 궁금합니다. LDAP 인증을 구성하여 상기 인증 체인 및 개인 인증 모듈 구성

  • 사용자 프로파일 조회
  • 에 기초

    • 확인 자격 :

    답변

    2

    OpenAM의 로그인 처리가 두 단계로 이루어진다 모듈에서 인증 부분을 처리했지만 사용자 데이터 저장소를 구성하지 않았으므로 프로필 조회가 실패합니다 (데이터 저장소 탭 참조). 구성된 데이터 저장소를 사용하면 배포 전반에 걸쳐 추가 사용자 세부 정보가 노출 될 수 있습니다 (예 : SAML 어설 션의 사용자 속성 포함 또는 에이전트와 함께 HTTP 헤더에 매핑). 따라서 데이터 저장소가 구성된 대부분의 시나리오가 필요합니다.

    그래도 데이터 저장소를 구성하지 않으려면 액세스 제어 -> < 영역> 인증 -> 모든 핵심 설정 -> 사용자 프로필 모드로 이동하여 사용자 프로필 조회 실패를 방지 할 수 있습니다 Ignore (무시)로 설정하십시오.

    +0

    매력적이었습니다. 피터에게 감사드립니다. – user3466814

    +1

    사용자 프로필 검사를 해제 한 후 OpenAM을 통해 LDAP 서버에 대해 인증 할 수있었습니다. 여기에 다음과 같은 문제가 있습니다. 성공적인 인증 후에 사용자의 그룹 회원 자격을 어떻게 확인합니까?내가 인증하는 LDAP 저장소에 1 백만 명의 사용자가 있고 인증 된 후에 사용자를 보호하려는 자원으로 특정 그룹에 속하게 만 부여하려한다고 가정합니다. OpenAM에 데이터 저장소가 구성되어 있지 않으면이 종류의 인증이 가능합니까? 그렇다면 어떻게? – user3466814

    0

    이것은 인증과 관련이 없지만 인증과 관련되어 있습니다 ... 적절한 정책을 구성해야합니다 ... OpenAM 문서를 참조하십시오.

    에이전트는 권한을 부여 할 것이고, OpenAM은 사용자가 보호 된 리소스에 액세스 할 권한이 있는지 여부를 결정합니다.

    +0

    Bernhard에게 감사의 말을 전합니다. J2EE 정책을 구성하고 "제목"필드를 편집했습니다. OpenAM이 LDAP 디렉토리에서 실제로 그룹 정보 (OU = mygroup ...)를 검색했습니다. 이제 모든 것이 작동합니다. – user3466814

    0

    Bernhard가 지적한 것처럼 인증은 사용자에게 액세스 권한을 부여하는 프로세스의 일부일뿐입니다. 그는 정책을 사용하여 액세스를 제어하는 ​​것을 언급합니다.

    다른 방법은 인증 된 사용자가 프로그래밍 방식으로 원하는 그룹의 구성원인지 확인하는 것입니다. 이는 OpenAM에서 알 수없는 리소스 (예 : 특정 데이터)에 대한 액세스 제어를 원할 때 유용 할 수 있습니다.

    예를 들어 다른 그룹이 데이터베이스의 테이블에있는 다른 행에 액세스하도록하려는 경우를 가정 해 봅시다. 사용자와 관련된 그룹 정보를 검색하여 데이터베이스 쿼리에 추가하여 반환되는 데이터를 제한 할 수 있습니다.

    사용자 모듈을 사용하여 정책에서 데이터베이스의 정보를 리소스로 사용할 수 있도록 OpenAM을 사용하여이 작업을 수행 할 수 있지만이 세분화 된 액세스 제어를 수행하는 것이 훨씬 간단하다는 것을 알았습니다. 귀하의 코드, 그리고 가능성이 훨씬 빠릅니다.