Ops Manager 프로젝트에 OIDC 인증 활성화
이 페이지의 내용
- 외부 ID 공급자 애플리케이션 구성
- Ops Manager에 새 애플리케이션을 등록합니다.
- Redirect URL 값을
http://localhost:27097/redirect
로 설정합니다. - groups 클레임을 추가하거나 활성화합니다.
- 선택 사항: MongoDB 클라이언트가 더 나은 사용자 경험을 위해 토큰을 새로 고치도록 하려면 토큰 새로 고침을 허용합니다.
- 선택 사항: 액세스 토큰 수명(
exp
클레임)을 구성하여 데이터베이스 연결 세션 시간과 일치시킵니다. - Azure AD를 ID 공급자로 구성하기
- 전제 조건
- 절차
- OIDC 인증 구성
- OIDC 인증 구성
- Revoke JWKS
Ops Manager를 사용하면 Ops Manager 에이전트를 포함한 모든 클라이언트가 MongoDB deployment에 연결하는 데 사용하는 인증 메커니즘을 구성할 수 있습니다. 각 프로젝트에 대해 여러 인증 메커니즘을 활성화할 수 있지만 에이전트에 대해서는 하나의 메커니즘만 선택해야 합니다.
MongoDB Enterprise 는 OIDC를 사용한 인증을 허용합니다. OIDC 로 인증하려면 를 사용하려면 먼저 Azure AD , Okta 및 Ping Identity와 같은 OIDC 표준을 지원하는 IdP 에 OIDC 또는 OAuth 애플리케이션을 등록해야 합니다.
외부 ID 공급자 애플리케이션 구성
OIDC 애플리케이션 등록 단계는 IdP에 따라 달라질 수 있습니다.등록 프로세스를 진행하며 다음 항목을 완료하도록 하세요.
애플리케이션을 등록한 후에는 OIDC IdP 구성의 다음 단계에서 사용할 issuer
, clientId
및 audience
값을 저장합니다.
Azure AD 를 ID 제공자로 구성
OIDC 또는 OAuth 애플리케이션을 Azure AD에 등록하려면 다음을 따릅니다:
애플리케이션을 등록합니다.
App registrations(으)로 이동합니다.
Azure Portal Azure Active Directory에서 계정, Atlas Search를 클릭하고 를 클릭합니다.
좌측 탐색의 Manage 섹션에서 App registrations을 클릭합니다.
New registration를 클릭합니다.
다음 값을 적용합니다.
필드값NameOM Database - OIDCSupported Account TypesAccounts in this organizational directory only (single tenant)Redirect URI- Public client/native (mobile & desktop)-http://localhost:27097/redirect
Register를 클릭합니다.
애플리케이션 등록에 대해 자세히 알아보려면 Azure 설명서를 참조하세요.
그룹 클레임을 추가합니다.
Token Configuration(으)로 이동합니다.
좌측 탐색의 Manage 섹션에서 Token Configuration을 클릭합니다.
Add groups claim를 클릭합니다.
Edit groups claim 0} 모달에서 을 Security 선택합니다.
선택하는 그룹은 Azure 환경에서 구성한 그룹 유형에 따라 다릅니다. 적절한 그룹 정보를 전송하려면 다른 그룹 유형을 선택해야 할 수도 있습니다.
0} Customize token properties by type 섹션에서 만 선택했는지 확인합니다.Group ID
Group Id를 선택하면 Azure에서 보안 그룹의 객체 ID를 보냅니다.
Add를 클릭합니다.
그룹 클레임 추가에 대해자세히 알아보려면 Azure 설명서를 참조하세요.
매니페스트를 업데이트합니다.
좌측 탐색의 Manage 섹션에서 Manifest을 클릭합니다.
0}을 accessTokenAcceptedVersion
null
에서2
로 업데이트합니다.숫자
2
는 Microsoft의 액세스 토큰 버전 2를 나타냅니다. 다른 애플리케이션에서는 이를 Active Directory에서 관리하는 사용자 ID의 서명된 증명으로 사용합니다. 버전 2는 토큰이 MongoDB가 이해할 수 있는 JSON 웹 토큰인지 확인합니다.Save를 클릭합니다.
선택적 클레임을 추가하는 방법에 대해 자세히 알아보려면 Azure 설명서를 참조하세요.
메타데이터를 기억하세요.
왼쪽 탐색에서 Overview을 클릭합니다.
Application (client) ID 값을 복사합니다.
상단 탐색에서 Endpoints을 클릭합니다.
/.well-known/openid-configuration
부분을 제외한 OpenID Connect metadata document 값을 복사합니다.OpenID Connect metadata document URL을 따라가서
issuer
의 값을 복사하여 이 값을 검색할 수도 있습니다.
다음 표는 Ops Manager 구성 속성에서 이러한 Azure AD UI 값이 매핑되는 것을 보여 줍니다.
Azure AD UI | Ops Manager 구성 속성 |
---|---|
Application (client) ID | Client ID Audience |
OpenID Connect metadata document (without /.well-known/openid-configuration) | Issuer URI. |
전제 조건
OIDC 인증을 활성화하려면 다음을 수행해야 합니다.
mongosh
1.9.1 이상을 사용하세요.MongoDB 7.0 이상을 사용하세요.
MongoDB Agent로 다른 인증 메커니즘을 하나 이상 구성합니다.
참고
MongoDB Agent는 OIDC 를 통해 cluster에 연결할 수 없습니다. MongoDB Agent에 대한 추가 인증 메커니즘을 활성화해야 합니다. Ops Manager가 모니터링 또는 백업을 관리하지 않는 경우 대체 인증 메커니즘을 사용하도록 수동으로 구성해야 합니다.
절차
참고
프로젝트의 인증 및 TLS 설정을 재설정 하려면 먼저 Ops Manager가 프로젝트에서 관리하는 모든 MongoDB 배포 를 관리 해제합니다.
OIDC 인증 구성
Security Settings 배포서버를 위한 대화 상자로 이동합니다.
이미 표시되어 있지 않은 경우 탐색 모음의 Organizations 메뉴에서 원하는 프로젝트가 포함된 조직을 선택합니다.
이미 표시되어 있지 않은 경우 Projects 탐색 모음의 프로젝트 메뉴에서 원하는 프로젝트를 선택합니다.
아직 표시되지 않은 경우 사이드바에서 Deployment 클릭하세요.
Security 탭을 클릭합니다.
Settings 탭을 클릭합니다.
다음 작업 중 하나를 수행합니다.
이 프로젝트에 대한 TLS, 인증 또는 권한 부여 설정을 처음 구성하는 경우 Get Started을(를) 클릭합니다.
이 프로젝트에 대한 TLS 인증 또는 권한 부여 설정을 이미 구성한 경우 Edit을(를) 클릭합니다.
선택 사항: TLS 설정을 지정합니다.
필드 | 작업 |
---|---|
MongoDB deployment TLS(전송 계층 보안) | 이 슬라이더를 ON(으)로 전환합니다. |
TLS CA 파일 경로 | TLS 인증 기관 파일은 인증 기관의 루트 인증서 체인을 포함하는 인증서 파일의 암호화된 비공개 키는 MongoDB 프로세스를 실행하는 모든 호스트에서 TLS 인증 기관 파일의 파일 경로를 입력합니다.
이렇게 하면 프로젝트의 MongoDB 프로세스에 대한 배포서버의 각 호스트에 지정된 경로에 TLS 인증 기관이 있는지 테스트하려면 Validate을(를) 클릭하세요. |
클라이언트 인증서 모드 | TLS 지원 MongoDB deployment에 연결할 때 클라이언트 애플리케이션 또는 MongoDB Agent가 TLS 인증서를 제시해야 하는지 여부를 선택합니다. 각 MongoDB deployment는 연결을 시도할 때 이러한 클라이언트 호스트의 인증서를 확인합니다. 클라이언트 TLS 인증서를 요구하도록 선택한 경우 인증서가 유효한지 확인하세요. 허용되는 값은 다음과 같습니다. |
Federated Auth (OIDC) 인증에는 TLS가 필요하지 않습니다.
OIDC 권한 부여 설정을 구성합니다.
다음 값을 입력합니다.
설정 | 필요성 | 값 |
---|---|---|
Audience | 필수 사항 | OIDC 제공자가 토큰을 대상으로 하는 대상을 지정합니다. |
Issuer URI | 필수 사항 | 등록된 IdP 애플리케이션에서 제공하는 발급자 값입니다. MongoDB는 이 URI를 사용하여 /.wellknown/open-id-configuration 엔드포인트에서 사용할 수 있는 OpenID Provider Configuration Document(OpenID 제공자 구성 문서)를 찾습니다. |
Client ID | 필수 사항 | 등록된 애플리케이션의 고유 식별자입니다. OIDC IdP에 등록한 앱의 clientId 값을 입력합니다. |
Requested Scopes | 옵션 | 사용자에게 권한 부여 엔드포인트에서 데이터를 요청할 수 있는 권한을 부여하는 토큰. 추가하려는 각 추가 범위에 대해 Add more scopes를 클릭합니다. |
User Claim | 옵션 | 사용자 보안 주체 ID를 포함하는 클레임의 식별자.IdP가 다른 클레임을 사용하지 않는 한 기본값을 그대로 사용합니다. 기본값: |
Groups Claim | 옵션 | 보안 주체의 IdP 사용자 그룹 구성원 자격 정보를 포함하는 클레임의 식별자.IdP에서 다른 클레임을 사용하거나 사용자 지정 클레임이 필요한 경우가 아니라면 기본값을 그대로 사용합니다. 기본값: |
OIDC 인증 구성
MongoDB는 OIDC 에 대한 데이터베이스 사용자를 명시적으로 생성하지 않습니다. 그룹을 기반으로 OIDC 사용자를 MongoDB 역할에 매핑합니다.
OIDC 그룹에 대한 데이터베이스 역할을 만들려면 다음을 수행합니다.
OIDC 역할을 만듭니다.
다음 필드를 입력합니다.
필드필요성설명Identifier필수 사항database 상자에
admin
을 입력합니다.name 상자에 IdP 의
projectId
및 그룹 이름을 슬래시/
로 구분하여 입력합니다.{projectId}/{group_name} Inherits From옵션역할 이름 및 데이터베이스 쌍 목록입니다. 이러한 쌍의 형식은roleName@dbName
입니다.Authentication Restrictions옵션IdP 에서 제한하려는 IP 주소 또는 CIDR 표기법의 목록입니다.Add Role를 클릭합니다.
Revoke JWKS
참고
이 기능을 사용하여 서명키를 순환하지 마세요.OIDC IdP 서명키를 순환하면 기존 액세스 토큰이 만료될 때 MongoDB가 자동으로 JWKS를 가져옵니다.
개인키가 손상된 경우 MongoDB 노드에 캐시된 JSON 웹 키 세트(JWKS)를 즉시 취소할 수 있습니다.