Docs Menu
Docs Home
/ /
Acceso al Atlas
/ / /

Configure integraciones unificadas de proveedores de nube

Algunas funciones de Atlas, incluidas la federación de datos y el cifrado en reposo, se autentican con Roles de AWS IAMCuando Atlas accede a los servicios deAWS, asume un rol de IAM.

Puede configurar un rol de IAM asumido para su cuenta de Atlas para usar con la API de administración de Atlas o la interfaz de usuario de Atlas si tiene la Rol Project Owner. Atlas admite acceso unificado solo para AWS.

Puede utilizar Atlas Kubernetes Operator para configurar el acceso unificado para una función de AWS IAM en AtlasProject Recurso personalizado.

Necesita la siguiente clave API pública, clave API privada y la información de ID de la organización para configurar el acceso del operador de Kubernetes de Atlas a Atlas.

  • Si deseas que el Atlas Kubernetes Operator cree un nuevo Proyecto de Atlas, otorga acceso programático a una organización. Si tu organización requiere una lista de acceso IP para la API de administración de Atlas, también deberás configurar la lista de acceso a la API.

    Importante

    Debes asignar la clave API a la Organization Project Creator rol organizacional o superior.

  • Si desea trabajar con un proyecto de Atlas existente, agregue el acceso al proyecto desdeun proyecto. Si su organización requiere una lista de acceso IP para la API de administración de Atlas, también debe configurarla.

    Importante

    Debe asignar al clave API el rol de proyecto Project Owner.

Para obtener más información, consulte Configurar el acceso a Atlas.

1
  1. Especifique un marcador de posición de valor vacío dentro del parámetro spec.cloudProviderIntegrations.iamAssumedRoleArn del AtlasProject recurso personalizado.

  2. Especifique AWS dentro del parámetro spec.cloudProviderIntegrations.providerName del AtlasProject recurso personalizado.

Ejemplo:

cat <<EOF | kubectl apply -f -
apiVersion: atlas.mongodb.com/v1
kind: AtlasProject
metadata:
name: my-project
spec:
name: Test Project
projectIpAccessList:
- ipAddress: "192.0.2.15"
comment: "IP address for Application"
cloudProviderIntegrations:
- providerName: "AWS"
iamAssumedRoleArn: ""
EOF

Importante

Complete todo este procedimiento para configurar el rol para el marcador de valor vacío antes de agregar cualquier rol de acceso adicional a su recurso personalizado AtlasProject.

2
  1. Ejecute el comando para recuperar el atlasAWSAccountArn que necesita para los siguientes pasos.

    kubectl get atlasprojects my-project -o=jsonpath='{.status.cloudProviderIntegrations.atlasAWSAccountArn.type}'
    arn:aws:iam::198765432109:root
  2. Ejecute el comando para recuperar el atlasAssumedRoleExternalId que necesita para los siguientes pasos.

    kubectl get atlasprojects my-project -o=jsonpath='{.status.cloudProviderIntegrations.atlasAssumedRoleExternalId.type}'
    1a234b56-c789-0d12-345e-67f89012345a
3

Puede utilizar un rol de IAM existente o crear un nuevo rol de IAM para acceso unificado.

Modifique la política de confianza de su rol de AWS IAM con la siguiente política de confianza personalizada. Reemplace las líneas resaltadas con los valores obtenidos en un paso anterior.

{
"Version":"2012-10-17",
"Statement":[
{
"Effect":"Allow",
"Principal":{
"AWS":"<atlasAWSAccountArn>"
},
"Action":"sts:AssumeRole",
"Condition":{
"StringEquals":{
"sts:ExternalId":"<atlasAssumedRoleExternalId>"
}
}
}
]
}

Cree el rol de AWS IAM con la siguiente política de confianza personalizada. Reemplace las líneas resaltadas con los valores obtenidos en un paso anterior.

{
"Version":"2012-10-17",
"Statement":[
{
"Effect":"Allow",
"Principal":{
"AWS":"<atlasAWSAccountArn>"
},
"Action":"sts:AssumeRole",
"Condition":{
"StringEquals":{
"sts:ExternalId":"<atlasAssumedRoleExternalId>"
}
}
}
]
}
4

En la Roles sección de la consola de administración de AWS, haga clic en el rol de IAM que editó o creó para acceder a Atlas. AWS muestra el ARN en la Summary sección.

5

Reemplaza el marcador de valor vacío del parámetro spec.cloudProviderIntegrations.iamAssumedRoleArn de AtlasProject Recurso Personalizado con el rol IAM AWS ARN del paso anterior.

Ejemplo:

cat <<EOF | kubectl apply -f -
apiVersion: atlas.mongodb.com/v1
kind: AtlasProject
metadata:
name: my-project
spec:
name: Test Project
projectIpAccessList:
- ipAddress: "192.0.2.15"
comment: "IP address for Application"
cloudProviderIntegrations:
- providerName: "AWS"
iamAssumedRoleArn: "arn:aws:iam::123456789012:role/aws-service-role/support.amazonaws.com/myRole"
EOF
6
  1. Ejecute el comando para recuperar el estado:

    kubectl get atlasprojects my-project -o=jsonpath='{.status.cloudProviderIntegrations}'
  2. Verifique el estado READY.

    • Si el estado CREATED es, Atlas creó el rol pero no lo ha autorizado dentro de AWS.

    • Si el estado es EMPTY_ARN, Atlas creó el rol, pero usted no ha especificado el spec.cloudProviderIntegrations.iamAssumedRoleArn.

    • Si el estado READY es, Atlas ha creado el rol y usted lo ha autorizado dentro de AWS.

Volver

Federado

En esta página