AtlasFederatedAuth
사용자 지정 리소스는 Atlas 조직에 대해 페더레이션 인증 을 구성합니다.
AtlasFederatedAuth
사용자 지정 리소스 를 만들면 Atlas Kubernetes Operator 가 연합 인증 API 리소스 를 사용하여 연합의 조직 구성을업데이트 합니다. 조직 구성에서는 조직 및 역할 매핑과 같은 Atlas 조직 에 대한 페더레이션 설정을 지정합니다.
중요
Custom Resource(사용자 정의 리소스)는 더 이상 기본적으로 객체를 삭제하지 않음
Atlas Kubernetes Operator는 사용자 지정 리소스 구성 파일을 사용하여 Atlas 구성을 관리합니다. 다만 Atlas Kubernetes Operator 2.0부터는 Kubernetes에서 삭제한 사용자 지정 리소스가 더 이상 Atlas에서 삭제되지 않습니다. 대신 Atlas Kubernetes Operator에서는 이러한 리소스의 관리가 중단될 뿐입니다. 그 예로 Kubernetes에서 AtlasProject
사용자 지정 리소스를 삭제하는 경우, Atlas Kubernetes Operator는 Atlas에서 해당 프로젝트를 더 이상 자동으로 삭제하지 않음으로써 우발적이거나 예기치 못한 삭제를 방지할 수 있습니다. Atlas Kubernetes Operator 2.0 이전에 사용된 기본값으로 이 동작을 되돌리는 방법을 포함하여 자세한 내용은 새로운 기본값: Atlas Kubernetes Operator 2.0의 삭제 방지를 참조하세요.
이 리소스를 사용하려면 Atlas 조직에 연결된 기존 ID 제공자(IdP)가 있어야 합니다. 자세한 내용 은 Kubernetes의 연합 인증 활용을 참조하세요.
예시
다음 예시에서는 다음을 수행하는 AtlasFederatedAuth
사용자 지정 리소스를 구성합니다.
지정된 시크릿에 연결된 조직에 대해 페더레이션 인증 활성화합니다.
my-org-domain.com
을(를) 승인된 도메인으로 추가합니다.조직에 대한 도메인 제한을 활성화합니다.
SSO 에 대한 디버깅을 비활성화합니다.
인증 후 사용자에게
Organization Member
역할을 부여합니다.조직의
Organization Owner
역할을 매핑하고org-admin
이라는 IdP 그룹에 역할 매핑을 적용합니다.이름이
dev-project
인 조직의 프로젝트에 대한Organization Project Creator
및Project Owner
역할을 매핑하고dev-team
라는 IdP 그룹에 역할 매핑을 적용합니다.
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 status: conditions: - type: Ready status: True - type: RolesReady status: True - type: UsersReady status: True
참고
앞의 예에는 업데이트 프로세스를 설명하는 status
섹션이 포함되어 있습니다. 자세한 내용은 프로세스 생성 및 업데이트를 참조하세요.
매개변수
이 섹션에서는 AtlasFederatedAuth
사용자 지정 리소스에 사용할 수 있는 매개변수에 대해 설명합니다. 매개변수에 대한 자세한 설명은 Atlas 페더레이션 인증 API 리소스를 참조하세요.
해당 설명, 이 페이지의 예제, API 문서를 참조하여 사양을 사용자 지정하세요.
metadata.name
유형: 문자열
필수 사항
Atlas Kubernetes Operator가 조직에 대한 페더레이션 인증을 구성하는 데 사용하는
AtlasFederatedAuth
사용자 지정 리소스를 식별하는 이름입니다.
metadata.namespace
유형: 문자열
옵션
AtlasFederatedAuth
사용자 지정 리소스를 배포하려는 네임스페이스입니다.
spec.enabled
유형: 부울
필수 사항
조직에 대해 페더레이션 인증을 활성화할지 여부를 결정하는 플래그입니다. 기본값은
false
입니다.
spec.connectionSecretRef.name
유형: 문자열
필수 사항
Atlas Kubernetes Operator Atlas 에 연결하는 데 사용하는 조직 ID 및 API 키가 포함된 단일 필드 포함하는 불투명 시크릿의 이름입니다.
password
시크릿을 생성할 때orgID
,publicApiKey
,privateApiKey
필드를 지정합니다.시크릿의 API 키에는
Organization Owner
역할이 있어야 합니다. 시크릿에 권한이 있는 경우에만Organization Owner
AtlasProject
Custom Resource(사용자 지정 리소스 )에서 동일한 시크릿을 사용할 수 있습니다.Atlas Kubernetes Operator
atlas.mongodb.com/type=credentials
불필요한 시크릿을 감시하지 않기 위해 레이블이 있는 시크릿만 감시합니다.다음 예시에서는 시크릿에 레이블을 지정합니다.
kubectl label secret the-user-password atlas.mongodb.com/type=credentials 참고
기본값 으로 Atlas Kubernetes Operator
AtlasProject
Custom Resource(사용자 지정 리소스)와 동일한 네임스페이스 에 연결 비밀을 유지합니다. 다른 네임스페이스 에 시크릿을 저장 하려면 spec.connectionSecretRef를 지정합니다. 네임스페이스 매개변수입니다.
spec.connectionSecretRef.namespace
유형: 문자열
옵션
Atlas Kubernetes Operator Atlas 에 연결하는 데 사용하는 조직 ID 및 API 키가 포함된 시크릿이 포함된 네임스페이스입니다. 이 매개변수를 생략하거나 지정하지 않으면 Atlas Kubernetes Operator
AtlasProject
Custom Resource(사용자 지정 리소스)와 동일한 네임스페이스 에 연결 비밀을 유지합니다.
spec.domainAllowList
유형: 문자열 배열
옵션
이메일 주소를 기반으로 조직에 가입할 수 있는 사용자를 제한하는 승인된 도메인입니다.
spec.domainRestrictionEnabled
유형: 부울
필수 사항
연결된 조직에 대해 도메인 제한이 활성화되어 있는지 여부를 나타내는 플래그입니다. 기본값은
false
입니다.이 매개 변수를
true
로 설정하면 Atlas는 페더레이션 외부 조직에 속한 사용자 목록을 반환합니다. 자세한 내용은 사용자 충돌을 참조하세요.
spec.ssoDebugEnabled
유형: 부울
옵션
ID 제공자가 SSO 에 대해 디버그를 활성화했는지 여부를 나타내는 플래그입니다. 기본값은
false
입니다.
spec.postAuthRoleGrants
유형: 문자열 배열
옵션
인증 후 이 조직의 사용자에게 부여되는 Atlas 역할. 예시는 다음과 같습니다.
ORG_MEMBER
ORG_READ_ONLY
ORG_BILLING_ADMIN
ORG_GROUP_CREATOR
ORG_OWNER
ORG_BILLING_READ_ONLY
ORG_TEAM_MEMBERS_ADMIN
허용되는 값의 전체 목록은 페더레이션 인증 API 리소스를 참조하세요.
spec.roleMappings
유형: 객체 배열
옵션
이 조직에 구성된 역할 매핑입니다.
spec.roleMappings.roleAssignments 매개 변수에는 현재 조직 또는 조직의 프로젝트 내 조직 역할이 하나 이상 포함되어야 합니다.
spec.roleMappings.externalGroupName
유형: 문자열
필수 사항
이 역할 매핑이 적용되는 멱등 그룹을 식별하는 사람이 읽을 수 있는 고유한 레이블입니다.
spec.roleMappings.roleAssignments
유형: 객체 배열
옵션
Atlas 역할 및 각 역할과 연결된 그룹 및 조직의 고유 식별자입니다. 이 매개변수에는 현재 조직 또는 조직의 프로젝트 내 조직 역할이 하나 이상 포함되어야 합니다.
spec.roleMappings.roleAssignments.projectName
유형: 문자열
옵션
동일한 조직에 역할을 연결할 Atlas 프로젝트가 있어야 합니다.
spec.roleMappings.roleAssignments.role
유형: 문자열
옵션
Atlas가 특정 API 키, 사용자 또는 팀에 부여하는 권한 collection을 식별하는 인간 판독 가능 레이블. 이러한 역할에는 조직 및 프로젝트 수준 권한이 포함됩니다.
Atlas Kubernetes Operator에서는 다음 값을 허용합니다.
ORG_MEMBER
ORG_READ_ONLY
ORG_BILLING_ADMIN
ORG_GROUP_CREATOR
ORG_OWNER
ORG_BILLING_READ_ONLY
ORG_TEAM_MEMBERS_ADMIN
GROUP_AUTOMATION_ADMIN
GROUP_BACKUP_ADMIN
GROUP_MONITORING_ADMIN
GROUP_OWNER
GROUP_READ_ONLY
GROUP_USER_ADMIN
GROUP_BILLING_ADMIN
GROUP_DATA_ACCESS_ADMIN
GROUP_DATA_ACCESS_READ_ONLY
GROUP_DATA_ACCESS_READ_WRITE
GROUP_CHARTS_ADMIN
GROUP_CLUSTER_MANAGER
GROUP_SEARCH_INDEX_EDITOR