OneLogin VLDAP로 사용자 인증 및 권한 부여 구성
이 페이지의 내용
참고
MongoDB 8.0 부터 LDAP 인증 및 권한 부여 는 더 이상 사용되지 않습니다. 이 기능 은 사용할 수 있으며 MongoDB 8 의 수명 기간 동안 변경 없이 계속 작동합니다. LDAP 는 향후 주요 출시하다 에서 제거될 예정입니다.
자세한 내용은 LDAP 사용 중단을 참조하세요.
참고
다음 배포에서는 이 기능 사용할 수 없습니다.
M0
무료 클러스터Flex 클러스터
서버리스 인스턴스(지원 중단됨)
M2/M5
공유 클러스터(더 이상 사용되지 않음)
자세히 학습 제한을 참조하세요.
이 가이드 에서는 Atlas 가 OneLogin 에서 데이터베이스 사용자( Atlas 사용자가 아님)를 인증하고 권한을 부여하도록 활성화 하는 방법을 보여줍니다. , 타사 LDAP 제공자
LDAP 인증만 활성화하거나 LDAP 인증과 권한 부여를 모두 활성화할 수 있습니다.
LDAP 인증만 활성화하는 경우 개별 사용자를 Atlas에 추가하고 추가하는 각 사용자에게 데이터베이스 액세스 권한을 할당합니다.
LDAP 인증 및 권한 부여를 활성화하는 경우 Atlas에 사용자 그룹을 추가하고 각 그룹에 데이터베이스 액세스 권한을 할당할 수 있습니다. 사용자는 자신이 속한 LDAP 그룹으로부터 데이터베이스 액세스 권한을 상속받습니다.
Atlas는 OneLogin에서 데이터베이스 사용자 인증 및 권한 부여를 지원합니다.
제한 사항
LDAP 통합을 활성화하려면
M10
이상의 Atlas 클러스터를 배포해야 합니다. LDAP 통합은 Atlas Enterprise 기능입니다.Atlas는 기존 LDAP 디렉토리에서 동기화된 사용자 인증 및 권한 부여를 지원하지 않습니다.
Atlas는 데이터베이스 사용자를 위한 싱글 사인온 통합을 지원하지 않습니다. Atlas 관리 웹 인터페이스의 싱글 사인온 통합에 대해 자세히 알아보려면 Configure Federated Authentication(연합 인증 구성)을 참조하세요.
필요한 액세스 권한
LDAP 사용자 또는 그룹을 관리하려면 Atlas에 대한 Organization Owner
또는 Project Owner
액세스 권한이 있어야 합니다.
절차
LDAP 인증을 위한 OneLogin 구성
다음 절차에서는 Atlas 인증을 위해 OneLogin을 구성합니다.
OneLogin LDAP 서비스를 설정합니다.
OneLogin LDAP 서비스 설정에 대해 자세히 알아보려면 OneLogin 설명서를 참조하세요.
중요
계정에 대해 VLDAP 서비스를 활성화하려면 OneLogin 지원팀에 문의해야 할 수 있습니다.
<onelogin-instance-id>
을 기록합니다. 구성 프로세스 중 여러 위치에서 이 정보를 제공해야 합니다.인스턴스 이름은 OneLogin 계정에 로그인할 때 사용하는 URL에 있습니다.
https://<onelogin-instance-id>.onelogin.com
IP 액세스 목록에 IP 주소를 추가합니다.
OneLogin에서 Authentication 을 클릭한 다음 VLDAP 를 클릭합니다. Allow access by IP address 필드에 다음을 추가하여 IP 액세스 목록에 추가합니다.
Atlas cluster에 있는 각 노드의 IP 주소입니다. Atlas가 생성하는 호스트 이름으로 cluster에 있는 각 호스트의 IP를 가져오려면
nslookup
을(를) 사용하세요.nslookup cluster0-shard-00-00-example.mongodb.net 참고
노드의 IP 주소가 변경된 경우 새 IP 주소로 IP 액세스 목록을 업데이트해야 합니다.
(선택 사항) LDAP 연결 문제를 해결하기 위해
ldapsearch
명령을 실행할 수 있는 시스템의 IP 주소입니다.
바인드 사용자를 생성합니다.
새 OneLogin 사용자 만들기 Atlas 바인드 사용자로 사용합니다. 바인드 사용자는 계정을 쿼리하고 데이터베이스 사용자가 Atlas 데이터베이스에 연결할 때 데이터베이스 사용자의 자격 증명을 인증하는 데 사용하는 OneLogin 사용자입니다.
바인드 사용자를 만들 때 Email 및 Username 필드는 필수입니다. 이 두 필드에 동일한 이메일 주소를 입력해야 합니다.
중요
바인드 사용자에 대해 자신의 사용자 계정을 사용하지 마세요.
다음 템플릿을 사용하여 바인드 사용자의 전체 고유 이름(DN)을 결정합니다.
cn=<bind-user-email>,ou=users,dc=<onelogin-instance-id>,dc=onelogin,dc=com 예를 들어
<bind-user-email>
가bind@example.com
이고<onelogin-instance-id>
가mdb-example
인 경우 바인드 사용자의 DN은 다음과 같습니다.cn=bind@example.com,ou=users,dc=mdb-example,dc=onelogin,dc=com
바인드 사용자에게 권한을 할당합니다.
OneLogin에서 바인드 사용자에게 Manage users
, Manage group
또는 Super user
권한을 할당합니다.
참고
바인드 사용자에게 Manage group
권한을 부여하는 경우 그룹을 선택해야 합니다. Atlas는 이 그룹에 속한 LDAP 사용자만 인증하고 권한을 부여할 수 있습니다.
OneLogin 사용자 페이지로 이동합니다.
사용자 바인드를 클릭합니다.
Add Privilege를 클릭합니다.
사용자에게 부여할 권한을 선택한 다음 Continue 을(를) 클릭합니다.
Save User를 클릭합니다.
OneLogin에서 데이터베이스 사용자를 생성합니다.
아직 존재하지 않는 경우 데이터베이스 액세스 권한을 부여하려는 사용자를 OneLogin에서 생성합니다.
OneLogin 사용자 페이지로 이동합니다.
New User를 클릭합니다.
사용자의 세부 정보를 입력합니다.
데이터베이스 사용자를 만들 때 Email 및 Username 필드는 필수입니다. 이 두 필드에 동일한 이메일 주소를 입력합니다.
참고
더하기 기호(
+
)가 포함된 이메일 주소는 입력하지 마세요. Atlas LDAP 통합 시 더하기 기호가 포함된 이메일 주소와 관련하여 문제가 발생할 수 있습니다.Save User를 클릭합니다.
LDAP 인증을 위한 Atlas 구성
다음 절차에 따라 Atlas는 OneLogin LDAP 에서 데이터베이스 사용자를 인증할 수 있습니다.
AtlasGo Atlas 에서 프로젝트 의 Advanced 페이지로 고 (Go) 합니다.
아직 표시되지 않은 경우 탐색 표시줄의 Organizations 메뉴에서 프로젝트가 포함된 조직을 선택합니다.
아직 표시되지 않은 경우 내비게이션 바의 Projects 메뉴에서 프로젝트를 선택합니다.
사이드바에서 Security 제목 아래의 Advanced를 클릭합니다.
고급 페이지가 표시됩니다.
LDAP Authentication 옆에 있는 버튼을 On으로 전환합니다.
참고
이 기능을 활성화하면 추가 비용이 발생할 수 있습니다. Advanced Security(고급 보안)를 참조하세요.
AtlasGo Atlas 에서 프로젝트 의 Database Access 페이지로 고 (Go) 합니다.
아직 표시되지 않은 경우 탐색 표시줄의 Organizations 메뉴에서 프로젝트가 포함된 조직을 선택합니다.
아직 표시되지 않은 경우 내비게이션 바의 Projects 메뉴에서 프로젝트를 선택합니다.
사이드바에서 Security 제목 아래의 Database Access를 클릭합니다.
데이터베이스 액세스 페이지가 표시됩니다.
Atlas 에 LDAP 사용자 추가
참고
LDAP 권한 부여를 활성화하려면 이 단계를 건너뛰 세요.
OneLogin LDAP 에서 managed 사용자를 Atlas에 추가합니다.
딸깍 하는 소리 Add New Database User.
LDAP User를 클릭합니다.
다음 중 하나를 수행합니다:
User to DN Mapping을 입력하지 않은 경우 LDAP 사용자의 전체 DN을 입력합니다. 다음 템플릿을 따릅니다.
cn=<user-name>,ou=users,dc=<onelogin-instance-id>,dc=onelogin,dc=com 예를 들어
<user-name>
가jane@example.com
이고<onelogin-instance-id>
가mdb-example
인 경우 바인드 사용자의 DN은 다음과 같습니다.cn=jane@example.com,ou=users,dc=mdb-example,dc=onelogin,dc=com User to DN Mapping 을 입력한 경우 매핑에 필요한 사용자 이름 또는 이메일 주소를 입력합니다.
사용자에게 부여할 데이터베이스 액세스 수준을 선택합니다.
Add User를 클릭합니다.
LDAP 권한 부여를 위한 OneLogin 구성
참고
LDAP인증을 활성화하지 않으려면 이 섹션을건너뛰 세요.
다음 절차에서는 OneLogin LDAP 데이터베이스 액세스 그룹에 속한 사용자에게 권한을 부여하도록 Atlas를 구성합니다.
중요
권한 부여를 활성화하기 전에 LDAP로 인증을 활성화해야 합니다.
LDAP 권한 부여를 활성화하고 구성하면 LDAP 인증에 대해서만 구성된 데이터베이스 사용자는 더 이상 데이터베이스에 액세스할 수 없습니다.
LDAP 권한 부여를 위한 Atlas 구성
참고
LDAP인증을 활성화하지 않으려면 이 섹션을건너뛰 세요.
다음 절차에서는 OneLogin 데이터베이스 액세스 그룹을 Atlas에 추가하고 Atlas에서 데이터베이스 사용자 권한 부여를 활성화합니다.
AtlasGo Atlas 에서 프로젝트 의 Database Access 페이지로 고 (Go) 합니다.
아직 표시되지 않은 경우 탐색 표시줄의 Organizations 메뉴에서 프로젝트가 포함된 조직을 선택합니다.
아직 표시되지 않은 경우 내비게이션 바의 Projects 메뉴에서 프로젝트를 선택합니다.
사이드바에서 Security 제목 아래의 Database Access를 클릭합니다.
데이터베이스 액세스 페이지가 표시됩니다.
데이터베이스 액세스 LDAP 그룹을 Atlas에 추가합니다.
생성한 각 OneLogin 데이터베이스 그룹을 Atlas에 추가합니다. 추가한 그룹의 구성원은 그룹에 부여된 데이터베이스 조치를 수행할 수 있는 권한이 있습니다.
딸깍 하는 소리 Add New Database User.
LDAP Group을 클릭한 다음 User to DN Mapping을 활성화한 경우에도 데이터베이스 사용자가 포함된 그룹의 전체 DN을 입력합니다 . 다음 템플릿을 따릅니다.
cn=<group-name>,ou=groups,dc=<onelogin-instance-id>,dc=onelogin,dc=com 예를 들어
<group-name>
가db-read
이고<onelogin-instance-id>
가mdb-example
인 경우 바인드 사용자의 DN은 다음과 같습니다.cn=db-read,ou=groups,dc=mdb-example,dc=onelogin,dc=com
이 그룹의 사용자에게 부여할 데이터베이스 액세스 수준을 선택합니다.
Add User를 클릭합니다.
AtlasGo Atlas 에서 프로젝트 의 Advanced 페이지로 고 (Go) 합니다.
아직 표시되지 않은 경우 탐색 표시줄의 Organizations 메뉴에서 프로젝트가 포함된 조직을 선택합니다.
아직 표시되지 않은 경우 내비게이션 바의 Projects 메뉴에서 프로젝트를 선택합니다.
사이드바에서 Security 제목 아래의 Advanced를 클릭합니다.
고급 페이지가 표시됩니다.
Query Template에 쿼리 템플릿을 입력합니다.
사용자가 작업을 수행하려고 하면 Atlas는 LDAP 쿼리 템플릿을 실행하여 인증된 사용자가 속한 LDAP 그룹을 가져옵니다. Atlas는 쿼리가 작업을 수행할 권한이 있는 그룹을 하나 이상 반환하는 경우 작업을 허용합니다. 쿼리에서 작업을 수행할 권한이 있는 그룹을 반환하지 않는 경우 Atlas는 작업을 허용하지 않습니다.
Atlas는 쿼리를 실행할 때 {USER}
자리 표시자에서 인증된 사용자 이름을 대체합니다. 쿼리는 Server Hostname에 지정된 호스트에 상대적입니다.
쿼리 형식은 RFC4515 를 준수해야 합니다. 및 RFC .4516
다음 Query Template 을(를) 입력합니다.
{USER}?memberOf?base
참고
다른 쿼리 템플릿도 작동할 수 있습니다.
다음을 사용하여 클러스터에 연결 mongosh
다음 절차에서는 LDAP 인증(그리고 활성화된 경우 LDAP 권한 부여)이 올바르게 구성되었는지 확인합니다.
참고
LDAP 인증이 활성화된 경우 데이터베이스 사용자는 클라이언트에 대한 연결 문자열에서 다음 매개변수를 재정의해야 합니다.
authSource
필수$external
authenticationMechanism
필수PLAIN
AtlasGo Atlas 에서 프로젝트 의 Clusters 페이지로 고 (Go) 합니다.
아직 표시되지 않은 경우 탐색 표시줄의 Organizations 메뉴에서 원하는 프로젝트가 포함된 조직을 선택합니다.
아직 표시되지 않은 경우 탐색 표시줄의 Projects 메뉴에서 원하는 프로젝트를 선택합니다.
아직 표시되지 않은 경우 사이드바에서 Clusters를 클릭합니다.
Clusters(클러스터) 페이지가 표시됩니다.
Atlas에 추가한 사용자 자격 증명을 사용하여 클러스터에 연결합니다.
mongosh
를 사용하여 클러스터에 연결합니다. 연결 string 을 복사하려면 다음을 수행합니다.
Connect를 클릭합니다.
LDAP을 클릭한 다음 Copy를 클릭합니다.
사용자 DN 및 비밀번호와 함께 문자열을 붙여넣고 편집합니다.
참고
User to DN Mapping(DN 매핑에 대한 사용자)가 활성화되지 않은 경우 사용자의 전체 DN으로 클러스터에 연결합니다.
LDAP 연결 문제 해결
참고
OneLogin 연결 문제를 해결하기 전에 ldapsearch
을(를) 실행 중인 호스트 를 IP 액세스 목록에 추가하세요.
ldapsearch
를 통해 Atlas를 사용하도록 구성한 쿼리 템플릿이 예상한 대로 사용자 DN을 반환하는지 확인하세요. LDAP 인증은 작동하지만 LDAP 권한 부여가 작동하지 않는 경우 쿼리 템플릿이 올바른 사용자 DN을 반환하지 않을 수 있습니다.
다음 ldapsearch
템플릿을 사용합니다.
ldapsearch -H 'ldaps://ldap.us.onelogin.com:636' -D '<bind_user_dn>' -w '<bind_user_pwd>' -b 'dc=<onelogin_instance_id>,dc=onelogin,dc=com' -s sub
예를 들어 bind-user-dn
이 cn=jane@example.com,ou=users,dc=mdb-example,dc=onelogin,dc=com
이고 <onelogin-instance-id>
가 mdb-example
인 경우 다음 명령을 사용합니다.
ldapsearch -H 'ldaps://ldap.us.onelogin.com:636' -D 'cn=jane@example.com,ou=users,dc=mdb-example,dc=onelogin,dc=com' -w '<REDACTED>' -b 'dc=mdb-example,dc=onelogin,dc=com' -s sub
참고
다른 쿼리 템플릿도 작동할 수 있습니다.