Atlas Kubernetes Operator(AKO)는 AtlasFederatedAuth Custom Resource 를 사용하여 MongoDB Atlas에서 페더레이션 인증 을 구성하는 기능을 제공합니다.
연합 인증 사용하면 자격 증명 공급자(자격 증명 공급자)를 사용하여 시스템 간에 사용자 자격 증명 연결할 수 있습니다. 두 가지 핵심 목적을 제공합니다.
Atlas UI 에 대한 사용자 액세스 관리합니다(리소스를 보고, 만들고, 구성할 수 있는 권한 제한).
Atlas 클러스터에 대한 액세스 인증하고 권한을 부여합니다(휴먼 사용자 및 애플리케이션용).
AtlasFederatedAuth Custom Resource(사용자 지정 리소스)를 통해 두 기능을 동시에 구성할 수 있습니다.
참고
Atlas Kubernetes Operator는 Atlas에서 기존 IdP 를 생성하는 것이 아니라 Atlas 조직에서 기존 IdP의 구성을 지원합니다. AKO와 함께 이 리소스 사용하려면 먼저 이 절차를 완료해야 합니다.
ID 제공자 관리에서 UI 액세스를 위한 SAML 자격 증명 공급자를 생성하는 방법을 알아보세요.
외부 ID제공자 애플리케이션 구성에서 워크포스(OIDC)의 클러스터 액세스 위한 자격 증명 공급자를 생성하는 방법을 알아보세요.
외부 ID 제공자 준비하기에서 애플리케이션/ 워크로드 (OAuth)에 대한 클러스터 액세스 위한 자격 증명 공급자를 생성하는 방법을 알아보세요.2.0
Atlas UI Access (SAML)
Atlas 액세스 (또는 UI 액세스)를 사용하면 조직 소유자가 자격 증명 공급자 에서의 역할을 기반으로 Microsoft Entra ID 또는 Google Workspace와 같은 조직의 사용자에게 Atlas에서 자동으로 역할을 부여할 수 있습니다.
참고
연합 자격 증명 공급자 가 활성화되면 Atlas 다른 모든 인증 방법을 비활성화합니다.
UI 액세스 자격 증명 공급자 를 생성하고 이를 조직과 연결한 후에 Atlas Kubernetes Operator 사용하여 구성할 수 있습니다.
이 예제는 다음을 수행합니다:
지정된 시크릿에 연결된 조직에 대해 페더레이션 인증 활성화합니다.
my-org-domain.com을(를) 승인된 도메인으로 추가합니다.조직에 대한 도메인 제한을 활성화합니다.
SSO 에 대한 디버깅을 비활성화합니다.
인증 후 사용자에게
Organization Member역할을 부여합니다.조직의
Organization Owner역할을 매핑하고org-admin이라는 IdP 그룹에 역할 매핑을 적용합니다.이름이
dev-project인 조직의 프로젝트에 대한Organization Project Creator및Project Owner역할을 매핑하고dev-team라는 IdP 그룹에 역할 매핑을 적용합니다.
참고
spec.roleMappings.roleAssignments 매개변수에는 현재 조직 또는 조직의 프로젝트 내 조직 역할 하나 이상 포함되어야 합니다.
예시:
cat <<EOF | kubectl apply -f - apiVersion: atlas.mongodb.com/v1 kind: AtlasFederatedAuth metadata: name: atlas-default-federated-auth namespace: mongodb-atlas-system spec: enabled: true connectionSecretRef: name: my-org-secret namespace: mongodb-atlas-system domainAllowList: - my-org-domain.com domainRestrictionEnabled: true ssoDebugEnabled: false postAuthRoleGrants: - ORG_MEMBER roleMappings: - externalGroupName: org-admin roleAssignments: - role: ORG_OWNER - externalGroupName: dev-team roleAssignments: - role: ORG_GROUP_CREATOR - projectName: dev-project role: GROUP_OWNER EOF
AtlasFederatedAuth 리소스 구성에 대한 추가 정보는 AtlasFederatedAuth Custom Resource(사용자 지정 리소스)에서 확인할 수 있습니다.
Atlas 클러스터 액세스(OIDC/OAuth 2.0)
클러스터 액세스를 통해 조직 소유자는 자격 증명 공급자(OIDC 또는 OAuth 2.0 사용)를 사용하여 자격 증명 공급자의 역할 을 기반으로 Atlas의 데이터베이스 클러스터에 대한 데이터 액세스를 제공할 수 있습니다. 이 기능 액세스 인간 사용자에게 부여되는지, 아니면 애플리케이션 에 부여되는지 여부에 따라 더욱 구별될 수 있습니다.
워크로드 는 애플리케이션용입니다. 외부 애플리케이션이 OAuth 2.0을 사용하여 Azure 의 서비스 주체 또는 Google Cloud의 서비스 계정과 같은 프로그래밍 ID를 통해 인증할 수 있도록 합니다.
Workforce 는 사용자를 위한 것입니다. OIDC를 사용하여 Microsoft Entra ID 또는 Okta와 같은 외부 자격 증명 공급자를 통해 데이터베이스에 대한 인증 및 권한 부여를 허용합니다.
AKO를 통한 Atlas 클러스터 액세스를 활성화 하려면 AtlasFederatedAuth 리소스의 dataAccessIdentityProviderIds 필드에 자격 증명 공급자 ID를 추가합니다.
apiVersion: atlas.mongodb.com/v1 kind: AtlasFederatedAuth metadata: name: atlas-default-federated-auth namespace: mongodb-atlas-system spec: enabled: true dataAccessIdentityProviders: - 32b6e34b3d91647abb20e7b8 - 42d8v92k5a34184rnv93f0c1 connectionSecretRef: name: my-org-secret namespace: mongodb-atlas-system
AtlasFederatedAuth 리소스 구성에 대한 추가 정보는 AtlasFederatedAuth Custom Resource(사용자 지정 리소스)에서 확인할 수 있습니다.
인증 통해 조직 내에서 자격 증명 공급자 를 사용할 수 있으며, 이제 를 구성하고 필드 에 적절한 oidcAuthType ID 및 이름을 설정하여 AtlasDatabaseUser 에서 이 자격 증명 공급자 를 사용하여 클러스터 액세스 을 부여할 수 username 있습니다.
For 인력 액세스 의 경우
oidcAuthType필드USER로,databaseName필드admin,username필드<Atlas IdP ID>/IdP Username로 설정하다.워크로드 액세스 의
oidcAuthType경우 필드IDP_GROUPdatabaseName$external로,username필드, 필드 로 설정하다<Atlas IdP ID>/IdP Group Name.
apiVersion: atlas.mongodb.com/v1 kind: AtlasDatabaseUser metadata: name: my-workload-user namespace: mongodb-atlas-system spec: databaseName: $external roles: - roleName: "readWrite" databaseName: "my-database" projectRef: name: my-project username: idp-id-in-atlas/my-idp-group-name oidcAuthType: IDP_GROUP
apiVersion: atlas.mongodb.com/v1 kind: AtlasDatabaseUser metadata: name: my-workforce-user namespace: mongodb-atlas-system spec: databaseName: admin roles: - roleName: "readWrite" databaseName: "my-database" projectRef: name: my-project username: idp-id-in-atlas/my-idp-user-name oidcAuthType: USER
AtlasDatabaseUser 리소스 구성에 대한 추가 정보는 AtlasDatabaseUser Custom Resource(사용자 지정 리소스)에서 확인할 수 있습니다.