AtlasFederatedAuth
사용자 지정 리소스
AtlasFederatedAuth
사용자 지정 리소스는 Atlas 조직에 대해 페더레이션 인증 을 구성합니다.
AtlasFederatedAuth
사용자 지정 리소스 를 만들면 Atlas Kubernetes Operator 가 연합 인증 API 리소스 를 사용하여 연합의 조직 구성을업데이트 합니다. 조직 구성에서는 조직 및 역할 매핑과 같은 Atlas 조직 에 대한 페더레이션 설정을 지정합니다.
중요
Custom Resource(사용자 정의 리소스)는 더 이상 기본적으로 객체를 삭제하지 않음
Atlas Kubernetes Operator 는 사용자 지정 리소스 구성 파일을 관리 하여 Atlas 구성을 2.0 관리하지만, Atlas Kubernetes Operator Kubernetes 에서 삭제 한 사용자 지정 리소스가 더 이상 ( 기본값) Atlas 에서 삭제되지 않습니다. 대신 Atlas Kubernetes Operator 는 Atlas 에서 해당 리소스 관리를 중지할 뿐입니다. 예를 예시 , Kubernetes 에서
AtlasProject
Custom Resource(사용자 지정 리소스)를 삭제 하면 기본값 으로 Atlas Kubernetes Operator 는 더 이상 Atlas 에서 해당 프로젝트 를 자동으로 삭제하지 않습니다. 이러한 동작 변경은 우발적이거나 예기치 않은 삭제를 방지하기 위한 것입니다. 이 동작을 Atlas Kubernetes Operator 이전에 사용된 기본값 으로 되돌리는 방법 등 자세한 내용을 학습 보세요.,2 0 새 기본값: Atlas Kubernetes Operator 2 의 삭제 보호0 기능을참조하세요. .마찬가지로, Atlas Kubernetes Operator 를 사용하여 Kubernetes 의 Atlas 프로젝트 에서 팀을 제거 하는 경우 Atlas Kubernetes Atlas Kubernetes Operator 는 Atlas 에서 팀을 삭제 하지 않습니다.
기본값 Atlas 구성 값을 암시적으로 사용하지 않으려면 원하는 구성 세부 정보를 명시적으로 정의하세요. 경우에 따라 Atlas 기본값을 상속하면 조정 루프가 발생하여 사용자 지정 리소스 가
READY
상태 를 달성하지 못할 수 있습니다. 예를 예시AtlasDeployment
사용자 지정 리소스 에 원하는 자동 확장 동작을 명시적으로 정의하면 포함된 예시 와 같이 사용자 지정 리소스 의 정적 인스턴스 크기가 자동 확장이 활성화된 Atlas 배포서버 서버에 반복적으로 적용되지 않도록 할 수 있습니다.autoScaling: diskGB: enabled: true compute: enabled: true scaleDownEnabled: true minInstanceSize: M30 maxInstanceSize: M40
이 리소스를 사용하려면 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
유형: 문자열
필수 사항
불투명한 시크릿 의 이름
password
Atlas Kubernetes Operator가 Atlas에 연결 하는 데 사용하는 조직 ID 및 API 키 가 포함된 단일 필드를 포함합니다. 시크릿을 생성 할 때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.namespace 매개변수를 지정합니다.
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