El operador de Kubernetes de Atlas admite el uso de la autenticación federada para tu organización Atlas.
Nota
No puede utilizar Atlas Kubernetes Operator para configurar un IdP. Para configurar un IdP, consulte Configurar la autenticación y autorización de la implementación de la base de datos.
Una vez que configure su IdP, podrá administrar las asignaciones de roles que autentican a los usuarios para usar su IdP.
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 proveedorde identidad (IdP) existente vinculado a Atlas. Para saber cómo vincular un IdP a Atlas, consulte Administrar proveedores de identidad.
Un secretoCon claves API que el operador de Kubernetes de Atlas puede usar para conectarse a Atlas. Las claves API deben tener el
Organization Ownerrol.Al menos un rol dentro de una organización Atlas activa o de los proyectos de la organización.
Actualizar la configuración de una organización
Para configurar la autenticación federada a través del operador Atlas Kubernetes, actualice la configuración de la organización para su federación especificando el AtlasFederatedAuth recurso personalizado.
El siguiente ejemplo configura un recurso personalizado AtlasFederatedAuth que hace lo siguiente:
Habilita la autenticación federada para la organización vinculada al secreto especificado.
Agrega
my-org-domain.comcomo dominio aprobado.Habilita la restricción de dominio para la organización.
Deshabilita la depuración para SSO.
Otorga el rol a los usuarios después de la
Organization Memberautenticación.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
Organization Project Creatorroles y para un proyecto en la organización denominadaProject Ownerdev-projecty aplica la asignación de roles a un grupo de IdPdev-teamdenominado.
Para obtener más información, consulte Parámetros.
Nota
El parámetro spec.roleMappings.roleAssignments debe incluir al menos un rol de organización dentro de la organización actual o 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
El operador Atlas Kubernetes devuelve el recurso personalizado e incluye una sección de estado que se parece 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.