Docs Menu
Docs Home
/ /
MongoDB Atlas Kubernetes 演算子
/

AtlasFederatedAuth カスタム リソース

AtlasFederatedAuthカスタム リソースは、Atlas 組織のフェデレーティッド認証を構成します。

AtlasFederatedAuthカスタム リソースを作成すると、Atlas Kubernetes Operator はフェデレーション認証 API リソースを使用してフェデレーションの組織構成を更新します。 組織構成では、組織ロールのマッピングなど、Atlas 組織のフェデレーション設定を指定します。

重要

カスタム リソースはデフォルトでオブジェクトを削除しなくなりました

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カスタム リソースを構成します。

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

: string

必須

Atlas Kubernetes Operator が組織のフェデレーティッド認証を構成するために使用するAtlasFederatedAuthカスタム リソースを識別する名前。

metadata.namespace

: string

任意

AtlasFederatedAuthカスタム リソースを配置する名前空間。

spec.enabled

タイプ: ブール値

必須

組織に対してフェデレーティッド認証を有効にするかどうかを決定するフラグ。 デフォルトはfalseです。

spec.connectionSecretRef.name

: string

必須

Atlas Kubernetes Operator が Atlas への接続に使用する組織IDとAPIキーを持つ単一の フィールドを含む opaque シークレットの名前。passwordシークレットを作成するときは、orgIDpublicApiKeyprivateApiKey フィールドを指定します。

シークレットの API キーにはOrganization Ownerロールが必要です。 シークレットに 権限がある場合にのみ、 Organization OwnerAtlasProjectカスタム リソース から同じシークレットを使用できます。

Atlas Kubernetes Operator atlas.mongodb.com/type=credentialsは、不要な シークレット の監視を回避するために、ラベル のシークレットのみを監視します。

次の例ではシークレットにラベルを付けます。

kubectl label secret the-user-password atlas.mongodb.com/type=credentials

注意

デフォルトでは 、Atlas Kubernetes Operator は カスタム リソース AtlasProjectと同じ名前空間に接続シークレットを保持します。シークレットを別の名前空間に保存するには、spec. connectionSecretRef を指定します。名前空間パラメータ。

spec.connectionSecretRef.namespace

: string

任意

Atlas Kubernetes Operator が Atlas に接続するために使用する組織IDとAPIキーのシークレットを含む名前空間。このパラメーターを省略または指定しない場合、Atlas Kubernetes Operator は カスタム AtlasProjectリソースと同じ名前空間に接続シークレットを保持します。

spec.domainAllowList

タイプ: 文字列の配列

任意

メールアドレスに基づいて組織に参加できるユーザーを制限する承認済みドメイン。

spec.domainRestrictionEnabled

タイプ: ブール値

必須

接続済み組織に対してドメイン制限が有効になっているかどうかを示すフラグ。 デフォルトはfalseです。

このパラメータをtrueに設定すると、Atlas はフェデレーション外の組織に属するユーザーのリストを返します。 詳細については、「ユーザー競合 」を参照してください。

spec.ssoDebugEnabled

タイプ: ブール値

任意

IdP で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 パラメーターには、現在の組織内の少なくとも 1 つの組織ロールまたは組織内のプロジェクトを含める必要があります。

spec.roleMappings.externalGroupName

: string

必須

このロール・マッピングが適用される IdP グループを識別する、人間に判読可能なユニークなラベル。

spec.roleMappings.roleAssignments

タイプ: オブジェクトの配列

任意

Atlas のロールと、各ロールに関連付けられたグループおよび組織の一意の識別子。 このパラメーターには、現在の組織内の少なくとも 1 つの組織ロールまたは組織内のプロジェクトを含める必要があります。

spec.roleMappings.roleAssignments.projectName

: string

任意

ロールを関連付ける組織内の Atlas プロジェクト。

spec.roleMappings.roleAssignments.role

: string

任意

Atlas が特定の API キー、ユーザー、またはチームに付与する特権のコレクションを識別する、人間が判読可能なラベル。 これらのロールには、組織レベルとプロジェクト レベルの特権が含まれます。

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

戻る

AtlasDataFederation

項目一覧