Atlas Kubernetes Operator admite el uso de Autenticación federada para su organización Atlas.
Nota
No puedes utilizar Atlas Kubernetes Operator para configurar un proveedor de identidad. Para configurar un proveedor de identidad, consulte Configurar Autenticación y Autorización en la Implementación de la Base de Datos.
Una vez que configure su proveedor de identidad, podrá gestionar las asignaciones de roles que autentican a los usuarios para utilizar su proveedor de identidad.
Para configurar la autenticación federada a través del operador Atlas Kubernetes, debe especificar y actualizar el AtlasFederatedAuth Recurso personalizado.
Cuando se crea el recurso personalizado AtlasFederatedAuth, el Atlas Kubernetes Operator utiliza el Recurso de API de Autenticación Federada para actualizar la configuración de la organización para la federación. En la configuración de la organización, se especifican los ajustes de federación para su organización de Atlas, como la organización y las asignaciones de roles.
El AtlasFederatedAuth recurso personalizado no es necesario para asignar usuarios de la base de datos a un IdP, ya sea de autenticación o de carga de trabajo o de personal. Puede usar el recurso personalizado AtlasDatabaseUser para administrar usuarios de la base de datos, donde especifica el método de autenticación utilizado para cada usuario. El recurso personalizado AtlasDatabaseUser debe configurarse junto con la autenticación federada para asociar usuarios y roles del IdP con usuarios y grupos de MongoDB.
El recurso AtlasFederatedAuth personalizado es opcional para utilizar cualquier autenticación federada, siempre que lo haya configurado en otra parte de Atlas.
Requisitos previos
Antes de poder usar Atlas Kubernetes Operator para configurar la autenticación federada, debe tener:
Un proveedor de identidad existente (IdP) vinculado a Atlas. Para saber cómo vincular un proveedor de identidad a Atlas, consulta Administrar proveedores de identidad.
Un secreto con claves API que el Atlas Kubernetes Operator puede usar para conectarse a Atlas. Las claves API deben tener el rol
Organization Owner.Al menos un rol dentro de una organización activa de Atlas o los proyectos de la organización.
Actualizar una configuración de la organización
Para configurar la autenticación federada a través del Atlas Kubernetes Operator, actualiza la configuración de la organización para tu federación especificando el AtlasFederatedAuth Custom recurso.
El siguiente ejemplo configura un recurso personalizado AtlasFederatedAuth que hace lo siguiente:
Habilita la autenticación federada para la organización vinculada al secreto indicado.
Agrega
my-org-domain.comcomo dominio aprobado.Activa la restricción de dominio para la organización.
Deshabilita la depuración para SSO.
Otorga el rol de
Organization Membera los usuarios tras autenticarse.Asigna el rol
Organization Ownerpara la organización y aplica la asignación de roles a un grupo de proveedor de identidad denominadoorg-admin.Asigna los roles de
Organization Project CreatoryProject Ownera un proyecto en la organización denominadadev-projecty aplica el mapeo de roles a un grupo de proveedor de identidad denominadodev-team.
Para obtener más información, consulte Parámetros.
Nota
El spec.roleMappings.roleAssignments el parámetro debe incluir al menos un rol de organización dentro de la organización actual o en los proyectos de la organización.
Ejemplo:
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 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 EOF
Para comprobar el estado del proceso de actualización, ejecuta el siguiente comando:
kubectl get atlasfederatedauth -o yaml
Atlas Kubernetes Operator devuelve el recurso personalizado e incluye una sección de estado similar al siguiente ejemplo:
status: conditions: - type: Ready status: True - type: RolesReady status: True - type: UsersReady status: True
Para obtener más información sobre los parámetros disponibles para este recurso, consulte AtlasFederatedAuth Recurso personalizado.