ADC

Configurar las funciones de IAM de AWS en la instancia de NetScaler VPX

Las aplicaciones que se ejecutan en una instancia de Amazon EC2 deben incluir credenciales de AWS en las solicitudes de API de AWS. Puede almacenar las credenciales de AWS directamente en la instancia de Amazon EC2 y permitir que las aplicaciones de esa instancia las usen. Sin embargo, debe administrar las credenciales y asegurarse de que las transfieran de forma segura a cada instancia y actualizar cada instancia de Amazon EC2 cuando llegue el momento de rotar las credenciales. Eso es mucho trabajo adicional.

En su lugar, puede y debe usar una función de administración de identidades y accesos (IAM) para administrar las credenciales temporales de las aplicaciones que se ejecutan en una instancia de Amazon EC2. Cuando usa un rol, no tiene que distribuir credenciales a largo plazo (como un nombre de usuario y una contraseña o claves de acceso) a una instancia de Amazon EC2. En cambio, la función proporciona permisos temporales que las aplicaciones pueden usar cuando realizan llamadas a otros recursos de AWS. Cuando lanza una instancia de Amazon EC2, especifica un rol de IAM para asociarlo a la instancia. Las aplicaciones que se ejecutan en la instancia pueden entonces usar las credenciales temporales proporcionadas por la función para firmar las solicitudes de API.

La función de IAM asociada a su cuenta de AWS debe tener los siguientes permisos de IAM para varios casos.

HA se empareja con direcciones IPv4 en la misma zona de AWS:

"ec2:DescribeInstances",
"ec2:AssignPrivateIpAddresses",
"iam:SimulatePrincipalPolicy",
"iam:GetRole"
<!--NeedCopy-->

Ha emparejado con direcciones IPv6 en la misma zona de AWS:

"ec2:DescribeInstances",
"ec2:AssignIpv6Addresses",
"ec2:UnassignIpv6Addresses",
"iam:SimulatePrincipalPolicy",
"iam:GetRole"
<!--NeedCopy-->

HA se empareja con direcciones IPv4 e IPv6 en la misma zona de AWS:

"ec2:DescribeInstances",
"ec2:AssignPrivateIpAddresses",
"ec2:AssignIpv6Addresses",
"ec2:UnassignIpv6Addresses",
"iam:SimulatePrincipalPolicy",
"iam:GetRole"
<!--NeedCopy-->

La alta disponibilidad se empareja con direcciones IP elásticas en diferentes zonas de AWS:

"ec2:DescribeInstances",
"ec2:DescribeAddresses",
"ec2:AssociateAddress",
"ec2:DisassociateAddress",
"iam:SimulatePrincipalPolicy",
"iam:GetRole"
<!--NeedCopy-->

La alta disponibilidad se empareja con direcciones IP privadas en diferentes zonas de AWS:

"ec2:DescribeInstances",
"ec2:DescribeRouteTables",
"ec2:DeleteRoute",
"ec2:CreateRoute",
"ec2:ModifyNetworkInterfaceAttribute",
"iam:SimulatePrincipalPolicy",
"iam:GetRole"
<!--NeedCopy-->

HA se empareja con direcciones IP privadas e IP elásticas en diferentes zonas de AWS:

"ec2:DescribeInstances",
"ec2:DescribeAddresses",
"ec2:AssociateAddress",
"ec2:DisassociateAddress",
"ec2:DescribeRouteTables",
"ec2:DeleteRoute",
"ec2:CreateRoute",
"ec2:ModifyNetworkInterfaceAttribute",
"iam:SimulatePrincipalPolicy",
"iam:GetRole"
<!--NeedCopy-->

Escalado automático de backend de AWS:

"ec2:DescribeInstances",
"autoscaling:*",
"sns:CreateTopic",
"sns:DeleteTopic",
"sns:ListTopics",
"sns:Subscribe",
"sqs:CreateQueue",
"sqs:ListQueues",
"sqs:DeleteMessage",
"sqs:GetQueueAttributes",
"sqs:SetQueueAttributes",
"iam:SimulatePrincipalPolicy",
"iam:GetRole"
<!--NeedCopy-->

Puntos a tener en cuenta:

  • Si usa cualquier combinación de las funciones anteriores, use la combinación de permisos de IAM para cada una de las funciones.
  • Si usa la plantilla de Citrix CloudFormation, la función de IAM se crea automáticamente. La plantilla no permite seleccionar una función de IAM ya creada.
  • Cuando inicia sesión en la instancia VPX a través de la GUI, aparece un mensaje para configurar los privilegios necesarios para la función de IAM. Ignore la solicitud si ya configuró los privilegios.
  • Una función de IAM es obligatoria tanto para implementaciones independientes como para implementaciones de alta disponibilidad.

Crear un rol de IAM

Este procedimiento describe cómo crear una función de IAM para la función de escalado automático de back-end de AWS.

Nota:

Puede seguir el mismo procedimiento para crear cualquier función de IAM correspondiente a otras funciones.

  1. Inicie sesión en la consola de administración de AWS para EC2.
  2. Vaya a la página de instancias de EC2 y seleccione su instancia de ADC.

    Seleccione una instancia de ADC

  3. Vaya a Acciones > Seguridad > Modificar el rol de IAM.

    Actions

  4. En la página Modificar función de IAM, puede elegir una función de IAM existente o crear una función de IAM.

  5. Para crear un rol de IAM, siga estos pasos:

    1. En la página Modificar rol de IAM, haga clic en Crear un nuevo rol de IAM.

      Crear rol de IAM

    2. En la página Funciones, haga clic en Crear rol.

      Crear rol

    3. Seleccione el servicio AWS en el tipo de entidad de confianza y EC2 en Casos de uso comunes y, a continuación, haga clic en Siguiente.

      Entidad de confianza

    4. En la página Agregar permisos, haga clic en Crear directiva.

      Crear directiva

    5. Haga clic en la ficha JSON para abrir el editor de JSON.

      JSON

    6. En el editor de JSON, borre todo y pegue los permisos de IAM para la función que quiera usar.

      Por ejemplo, pegue los siguientes permisos de IAM para la función de escalado automático de back-end de AWS:

      {
          "Version": "2012-10-17",
          "Statement": [
              {
                  "Sid": "VisualEditor0",
                  "Effect": "Allow",
                  "Action": [
                      "ec2:DescribeInstances",
                      "autoscaling:\*",
                      "sns:CreateTopic",
                      "sns:DeleteTopic",
                      "sns:ListTopics",
                      "sns:Subscribe",
                      "sqs:CreateQueue",
                      "sqs:ListQueues",
                      "sqs:DeleteMessage",
                      "sqs:GetQueueAttributes",
                      "sqs:SetQueueAttributes",
                      "iam:SimulatePrincipalPolicy",
                      "iam:GetRole"
                  ],
                  "Resource": "\*"
              }
          ]
      }
      
      <!--NeedCopy-->
      

      Asegúrese de que el par clave-valor “Versión” que proporcione sea el mismo que AWS generó automáticamente.

    7. Haz clic en Siguiente: Revisar.

      Revise IAM

    8. En la ficha Revisar directiva, asigne un nombre válido a la directiva y haga clic en Crear directiva.

      Directiva de revisión

    9. En la página de administración de acceso a identidades, haga clic en el nombre de la directiva que creó. Amplíe la directiva para comprobar todo el JSON y haga clic en Siguiente.

      Gestión de acceso a identidades

    10. En la página Nombre, revisión y creación, asigne un nombre válido al rol.

      Revise la información de IAM

    11. Haz clic en Crear rol.

      Crear rol

  6. Repita los pasos: 1, 2 y 3. Seleccione el botón Actualizar y seleccione el menú desplegable para ver el rol que creó.

    Verificar Crear rol

  7. Haga clic en Actualizar rol de IAM.

    Actualizar el rol de IAM

Pruebe las directivas de IAM con el simulador de directivas de IAM

El simulador de directivas de IAM es una herramienta que permite probar los efectos de las directivas de control de acceso de IAM antes de ponerlas en producción. Es más fácil verificar y solucionar problemas de permisos.

  1. En la página de IAM, seleccione el rol de IAM que quiera probar y haga clic en Simular. En el siguiente ejemplo, “ADC_IAMRole” es el rol de IAM.

    Simulador de IAM

  2. En la consola del simulador de directivas de IAM, seleccione Directivas existentes como modo.

    Modo simulador de IAM

  3. En la ficha Usuarios, grupos y funciones, seleccione Funciones en el menú desplegable y elija una función existente.

    Seleccione el rol existente

  4. Después de seleccionar la función existente, seleccione la directiva existente que le corresponde.

    Seleccione la directiva existente

  5. Después de seleccionar la directiva, puede ver el JSON exacto en la parte izquierda de la pantalla. Seleccione las acciones que quiera en el menú desplegable Seleccionar acciones.

    Seleccione la directiva deseada

  6. Haga clic en Ejecutar simulación.

    Seleccione la directiva deseada

Para obtener información detallada, consulte la documentación de AWS IAM.

Otras referencias

Uso de una función de IAM para conceder permisos a las aplicaciones que se ejecutan en instancias de Amazon EC2

Configurar las funciones de IAM de AWS en la instancia de NetScaler VPX