AtlasFederatedAuth自定义资源为您的 Atlas 组织配置联合身份验证。
When you create the AtlasFederatedAuth custom resource, Atlas Kubernetes Operator uses the Federated Authentication API Resource to update the organization configuration for the federation. In the organization configuration, you specify federation settings for your Atlas organization such as organization and role mappings.
重要
自定义资源不再默认删除对象
Atlas Kubernetes Operator使用自定义资源配置文件来管理Atlas配置,但从Atlas Kubernetes Operator2.0 开始,您在Kubernetes中删除的自定义资源不再(默认)在Atlas中删除。相反, Atlas Kubernetes Operator只是停止管理Atlas中的这些资源。
AtlasProject示例,如果您在Kubernetes中删除 自定义资源,默认默认, Atlas Kubernetes Operator不再自动从Atlas中删除相应的项目。这种行为更改旨在帮助防止意外删除。 要学习;了解详情,包括如何将此行为恢复为在Atlas Kubernetes Operator.2 0之前使用的默认,请参阅新默认值: Atlas Kubernetes2 Operator.0 中的删除保护。同样,如果您使用Atlas Kubernetes Operator从Kubernetes中的Atlas项目中删除团队,则Atlas Kubernetes Operator不会从Atlas中删除团队。
显式定义所需的配置详细信息,以避免隐式使用默认Atlas配置值。 在某些情况下,继承Atlas默认值可能会导致协调循环,从而阻止自定义资源实现
READY状态。 示例,在AtlasDeployment自定义资源中显式定义所需的自动伸缩行为(如所包含的示例所示)可确保自定义资源中的静态实例大小不会重复应用于已启用自动伸缩的Atlas部署。autoScaling: diskGB: enabled: true compute: enabled: true scaleDownEnabled: true minInstanceSize: M30 maxInstanceSize: M40
要使用此资源,您必须有一个链接到您的Atlas组织的现有身份提供程序(身份提供程序)。要了解更多信息,请参阅使用Atlas Kubernetes Operator配置联合身份验证。
示例
以下示例配置了执行以下操作的AtlasFederatedAuth自定义资源:
将
my-org-domain.com添加为已批准的域。为组织启用域限制。
禁用SSO调试。
Grants the
Organization Memberrole to users after authenticating.Maps the
Organization Ownerrole for the organization and applies the role mapping to an IdP group namedorg-admin.Maps the
Organization Project CreatorandProject Ownerroles for a project in the organization nameddev-projectand applies the role mapping to an IdP group nameddev-team.
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 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
AtlasFederatedAuth 是 AtlasFederatedAuth API 的模式
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 字符串 | atlas.mongodb.com/v1 | true |
| 字符串 |
| true |
| 对象 | 有关 | true |
| 对象 |
| false |
| 对象 |
| false |
AtlasFederatedAuth.spec
AtlasFederatedAuthSpec 定义了 AtlasFederatedAuth 的目标状态。
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 对象 | 具有用于配置联合的 | false |
| []string | 代表可用于此组织中的数据访问的身份提供程序的唯一 ID 的集合。如果此字段缺少当前已连接的数据访问身份提供程序,则将断开连接。 | false |
| []string | 根据电子邮件地址限制用户加入组织的批准域。 | false |
| 布尔 | 防止联合中的用户访问联合外的组织以及创建新组织。此选项应用于整个联邦。 请访问https://www.mongodb.com/zh-cn/docs/atlas/security/federation-advanced-options/#restrict-user-membership-to-the-federation 更多信息默认:false | false |
| 布尔 | 默认:false | false |
| []string | 身份验证后向该组织中的用户授予的 Atlas 角色。 | false |
| []对象 | 将 | false |
| 布尔 | 默认:false | false |
AtlasFederatedAuth.spec.connectionSecretRef
带有用于配置联合的 API凭证的连接密钥。这些凭证必须具有 OrganizationOwner 权限。
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 字符串 | Kubernetes资源名称 | true |
| 字符串 | Kubernetes资源的命名空间 | false |
AtlasFederatedAuth.spec.roleMappings
RoleMapping 将外部群组从身份提供程序映射到Atlas中的角色。
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 字符串 |
| false |
| []对象 |
| false |
AtlasFederatedAuth.spec.roleMappings.roleAssignments
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 字符串 | 应在其中指定角色的同一组织中的Atlas项目。 | false |
| 字符串 | The | false |
AtlasFederatedAuth.status
AtlasFederatedAuthStatus 定义了观察到的 AtlasFederatedAuth 省/市/自治区。
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| []对象 | 条件是显示Atlas自定义资源当前省/市/自治区的列表 | true |
| 整型 |
| false |
AtlasFederatedAuth.status.conditions
条件描述了Atlas自定义资源在某一点的省/市/自治区。
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 字符串 | 条件的状态; True、False、未知之一。 | true |
| 字符串 | Atlas自定义资源条件的类型。 | true |
| 字符串 | 上次条件从一种状态转换为另一种状态的时间。以 | false |
| 字符串 | 提供有关转换的详细信息的 | false |
| 字符串 | 条件的最后一次转换的 | false |