Entornos de nube de AWS
Este artículo le guía a través de la configuración de su cuenta de AWS como una ubicación de recursos que puede utilizar con Citrix Virtual Apps and Desktops. La ubicación de recursos incluye un conjunto básico de componentes, ideal para una prueba de concepto u otra implementación que no requiera recursos distribuidos en varias zonas de disponibilidad. Una vez que complete estas tareas, podrá instalar VDA, aprovisionar máquinas, crear catálogos de máquinas y crear grupos de entrega.
Cuando complete las tareas de este artículo, su ubicación de recursos incluirá los siguientes componentes:
-
Una nube privada virtual (VPC) con subredes públicas y privadas dentro de una única zona de disponibilidad.
-
Una instancia que funciona como controlador de dominio de Active Directory y servidor DNS, ubicada en la subred privada de la VPC.
-
Una instancia que actúa como host de bastión en la subred pública de su VPC. Esta instancia se utiliza para iniciar conexiones RDP a las instancias de la subred privada con fines administrativos. Una vez que haya terminado de configurar su ubicación de recursos, puede apagar esta instancia para que ya no sea fácilmente accesible. Cuando deba administrar otras instancias en la subred privada, como las instancias VDA, puede reiniciar la instancia del host de bastión.
Limitación
A partir de Citrix Virtual Apps and Desktops 2203 LTSR y versiones posteriores, el complemento MCS AWS realiza una llamada a la API de AWS
DescribeInstanceTypes y, si esta tiene éxito, MCS utiliza el nombre de inventario creado a partir de la respuesta de la API.
Por lo tanto, cuando actualice de CVAD 1912 a 2203 o posterior, deshabilite el permiso
DefineInstanceType en AWS y, a continuación, actualice el catálogo existente mediante el comando Set-ProvScheme para que coincida con el esquema de nomenclatura de AWS. Luego, vuelva a añadir los permisos DescribeInstanceType una vez completada la actualización del catálogo y la oferta de servicio coincida con el esquema de nomenclatura de AWS.
Información general de la tarea
Configure una nube privada virtual (VPC) con subredes públicas y privadas. Cuando complete esta tarea, AWS implementará una puerta de enlace NAT con una dirección IP elástica en la subred pública. Esta acción permite que las instancias de la subred privada accedan a Internet. Las instancias de la subred pública son accesibles al tráfico público entrante, mientras que las instancias de la subred privada no lo son.
Configure grupos de seguridad. Los grupos de seguridad actúan como firewalls virtuales que controlan el tráfico de las instancias de su VPC. Agregue reglas a sus grupos de seguridad que permitan que las instancias de su subred pública se comuniquen con las instancias de su subred privada. También asocie estos grupos de seguridad a cada instancia de su VPC.
Cree un conjunto de opciones DHCP. Con una VPC de Amazon, los servicios DHCP y DNS se proporcionan de forma predeterminada, lo que afecta a la forma en que configura el DNS en su controlador de dominio de Active Directory. El DHCP de Amazon no se puede inhabilitar y el DNS de Amazon solo se puede utilizar para la resolución de DNS público, no para la resolución de nombres de Active Directory. Para especificar el dominio y los servidores de nombres que se entregan a las instancias a través de DHCP, cree un conjunto de opciones DHCP. El conjunto asigna el sufijo de dominio de Active Directory y especifica el servidor DNS para todas las instancias de su VPC. Para asegurarse de que los registros de host (A) y de búsqueda inversa (PTR) se registren automáticamente cuando las instancias se unan al dominio, configure las propiedades del adaptador de red para cada instancia que agregue a la subred privada.
Agregue un host de bastión y un controlador de dominio a la VPC. A través del host de bastión, puede iniciar sesión en las instancias de la subred privada para configurar el dominio y unir instancias al dominio.
Tarea 1: Configurar la VPC
-
En la consola de administración de AWS, seleccione VPC.
-
En el panel de VPC, seleccione Crear VPC.
-
Seleccione VPC y más.
-
En Puertas de enlace NAT ($), seleccione En 1 AZ o 1 por AZ.
-
En Opciones de DNS, deje Habilitar nombres de host de DNS seleccionado.
-
Seleccione Crear VPC. AWS crea las subredes públicas y privadas, la puerta de enlace a Internet, las tablas de enrutamiento y el grupo de seguridad predeterminado.
Tarea 2: Configurar grupos de seguridad
Esta tarea crea y configura los siguientes grupos de seguridad para su VPC:
-
Un grupo de seguridad público para asociar con las instancias de su subred pública.
-
Un grupo de seguridad privado para asociar con las instancias de su subred privada.
Para crear los grupos de seguridad:
-
En el panel de VPC, seleccione Grupos de seguridad.
-
Cree un grupo de seguridad para el grupo de seguridad público. Seleccione Crear grupo de seguridad e introduzca una etiqueta de nombre y una descripción para el grupo. En VPC, seleccione la VPC que creó anteriormente. Seleccione Sí, crear.
Configurar el grupo de seguridad público
-
En la lista de grupos de seguridad, seleccione el grupo de seguridad público.
-
Seleccione la ficha Inbound Rules y seleccione Edit para crear las siguientes reglas:
Tipo Origen Todo el tráfico Seleccione el grupo de seguridad privado. Todo el tráfico Seleccione el grupo de seguridad público. ICMP 0.0.0.0/0 22 (SSH) 0.0.0.0/0 80 (HTTP) 0.0.0.0/0 443 (HTTPS) 0.0.0.0/0 1494 (ICA/HDX) 0.0.0.0/0 2598 (Fiabilidad de sesión) 0.0.0.0/0 3389 (RDP) 0.0.0.0/0 -
Cuando termine, seleccione Guardar.
-
Seleccione la ficha Outbound Rules y seleccione Edit para crear las siguientes reglas:
Tipo Destino Todo el tráfico Seleccione el grupo de seguridad privado. Todo el tráfico 0.0.0.0/0 ICMP 0.0.0.0/0 -
Cuando termine, seleccione Guardar.
Configurar el grupo de seguridad privado
-
En la lista de grupos de seguridad, seleccione el grupo de seguridad privado.
-
Si no ha configurado el tráfico desde el grupo de seguridad público, debe establecer los puertos TCP; seleccione la ficha Inbound Rules y seleccione Edit para crear las siguientes reglas:
Tipo Origen Todo el tráfico Seleccione el grupo de seguridad privado. Todo el tráfico Seleccione el grupo de seguridad público. ICMP Seleccione el grupo de seguridad público. TCP 53 (DNS) Seleccione el grupo de seguridad público. UDP 53 (DNS) Seleccione el grupo de seguridad público. 80 (HTTP) Seleccione el grupo de seguridad público. TCP 135 Seleccione el grupo de seguridad público. TCP 389 Seleccione el grupo de seguridad público. UDP 389 Seleccione el grupo de seguridad público. 443 (HTTPS) Seleccione el grupo de seguridad público. TCP 1494 (ICA/HDX) Seleccione el grupo de seguridad público. TCP 2598 (Session Reliability) Seleccione el grupo de seguridad público. 3389 (RDP) Seleccione el grupo de seguridad público. TCP 49152–65535 Seleccione el grupo de seguridad público. -
Cuando termine, seleccione Guardar.
-
Seleccione la ficha Outbound Rules y seleccione Edit para crear las siguientes reglas:
Tipo Destino Todo el tráfico Seleccione el grupo de seguridad privado. Todo el tráfico 0.0.0.0/0 ICMP 0.0.0.0/0 UDP 53 (DNS) 0.0.0.0/0 -
Cuando termine, seleccione Guardar.
Tarea 3: Iniciar instancias
Siga estos pasos para crear dos instancias EC2 y descifrar la contraseña de administrador predeterminada que genera Amazon:
-
En la consola de administración de AWS, seleccione EC2.
-
En el panel de control de EC2, seleccione Iniciar instancia.
-
Seleccione una imagen de máquina de Windows Server y un tipo de instancia.
-
En la página Configure Instance Details, introduzca un nombre para la instancia y seleccione la VPC que configuró anteriormente.
-
En Subred, realice las siguientes selecciones para cada instancia:
-
Host bastión: Seleccione la subred pública
-
Controlador de dominio: Seleccione la subred privada
-
-
En Asignar automáticamente dirección IP pública, realice las siguientes selecciones para cada instancia:
-
Host de bastión: Seleccione Habilitar.
-
Controlador de dominio: Seleccione Usar configuración predeterminada o Inhabilitar.
-
-
En Interfaces de red, introduzca una dirección IP principal dentro del rango IP de su subred privada para el controlador de dominio.
-
Si es necesario, en la página Agregar almacenamiento, modifique el tamaño del disco.
-
En la página Etiquetar instancia, introduzca un nombre descriptivo para cada instancia.
-
En la página Configurar grupos de seguridad, seleccione Seleccionar un grupo de seguridad existente y, a continuación, realice las siguientes selecciones para cada instancia:
-
Host bastión: Seleccione el grupo de seguridad público.
-
Controlador de dominio: Seleccione el grupo de seguridad Privado.
-
-
Revise sus selecciones y, a continuación, seleccione Iniciar.
-
Cree un nuevo par de claves o seleccione uno existente. Si crea un nuevo par de claves, descargue su archivo de clave privada (.pem) y guárdelo en un lugar seguro. Debe proporcionar su clave privada cuando obtenga la contraseña de administrador predeterminada para la instancia.
-
Seleccione Iniciar instancias. Seleccione Ver instancias para mostrar una lista de sus instancias. Espere hasta que la instancia recién iniciada haya pasado todas las comprobaciones de estado antes de acceder a ella.
-
Obtenga la contraseña de administrador predeterminada para cada instancia:
-
En la lista de instancias, seleccione la instancia y, a continuación, seleccione Conectar.
-
Vaya a la ficha Cliente RDP, seleccione Obtener contraseña y cargue el archivo de clave privada (
.pem) cuando se le solicite. -
Seleccione Decrypt Password para obtener la contraseña legible. AWS muestra la contraseña predeterminada.
-
-
Repita los pasos del paso 2 hasta que haya creado dos instancias:
-
Una instancia de host bastión en su subred pública
-
Una instancia en su subred privada que se utilizará como controlador de dominio.
-
Tarea 4: Crear un conjunto de opciones DHCP
-
En el panel de VPC, seleccione DHCP Options Sets.
-
Introduzca la siguiente información:
-
Etiqueta de nombre: Introduzca un nombre descriptivo para el conjunto.
-
Nombre de dominio: Introduzca el nombre de dominio completo que utiliza al configurar la instancia del controlador de dominio.
-
Servidores de nombres de dominio: Introduzca la dirección IP privada que asignó a la instancia del controlador de dominio y la cadena AmazonProvidedDNS, separadas por comas.
-
Servidores NTP: Deje este campo en blanco.
-
Servidores de nombres NetBIOS: Introduzca la dirección IP privada de la instancia del controlador de dominio.
-
Tipo de nodo NetBIOS: Introduzca 2.
-
-
Seleccione Sí, crear.
-
Asocie el nuevo conjunto a su VPC:
-
En el panel de control de VPC, seleccione Sus VPC y, a continuación, seleccione la VPC que configuró anteriormente.
-
Seleccione Acciones > Editar conjunto de opciones de DHCP.
-
Cuando se le solicite, seleccione el nuevo conjunto que creó y, a continuación, seleccione Guardar.
-
Tarea 5: Configurar las instancias
-
Con un cliente RDP, conéctese a la dirección IP pública de la instancia del host bastión. Cuando se le solicite, introduzca las credenciales de la cuenta de administrador.
-
Desde la instancia del host bastión, inicie Conexión a Escritorio remoto y conéctese a la dirección IP privada de la instancia que desea configurar. Cuando se le solicite, introduzca las credenciales de administrador de la instancia.
-
Para todas las instancias de la subred privada, configure los ajustes de DNS:
-
Seleccione Inicio > Panel de control > Redes e Internet > Centro de redes y recursos compartidos > Cambiar configuración del adaptador. Haga doble clic en la conexión de red que se muestra.
-
Seleccione Propiedades > Protocolo de Internet versión 4 (TCP/IPv4) > Propiedades.
-
Seleccione Avanzado > DNS. Asegúrese de que las siguientes opciones estén habilitadas y seleccione Aceptar:
-
Registrar las direcciones de esta conexión en DNS
-
Usar el sufijo DNS de esta conexión en el registro DNS
-
-
-
Para configurar el controlador de dominio:
-
Con el Administrador del servidor, agregue el rol de Servicios de dominio de Active Directory con todas las características predeterminadas.
-
Promueva la instancia a un controlador de dominio. Durante la promoción, habilite DNS y use el nombre de dominio que especificó al crear el conjunto de opciones de DHCP. Reinicie la instancia cuando se le solicite.
-
Crear una conexión
Al crear una conexión desde Studio:
-
Debe proporcionar los valores de la clave de API y la clave secreta. Puede exportar el archivo de claves que contiene esos valores desde AWS y luego importarlos. También debe proporcionar la región, la zona de disponibilidad, el nombre de la VPC, las direcciones de subred, el nombre de dominio, los nombres de los grupos de seguridad y las credenciales.
-
El archivo de credenciales para la cuenta raíz de AWS (recuperado de la consola de AWS) no tiene el mismo formato que los archivos de credenciales descargados para usuarios estándar de AWS. Por lo tanto, la administración de Citrix Virtual Apps and Desktops no puede utilizar el archivo para rellenar los campos de clave de API y clave secreta. Asegúrese de que está utilizando archivos de credenciales de AWS Identity Access Management (IAM).
Nota:
Después de crear una conexión, los intentos de actualizar la clave de API y la clave secreta pueden fallar. Para resolver el problema, compruebe las restricciones de su servidor proxy o firewall y asegúrese de que la siguiente dirección sea accesible:
https://*.amazonaws.com.
Valores predeterminados de la conexión de host
Al crear conexiones de host en entornos de nube de AWS, se muestran los siguientes valores predeterminados:
| Opción | Absoluto | Porcentaje |
|---|---|---|
| Acciones simultáneas (todos los tipos) | 125 | 100 |
| Número máximo de acciones nuevas por minuto | 125 |
MCS admite 100 operaciones de aprovisionamiento simultáneas como máximo de forma predeterminada.
URL del punto final del servicio
URL de punto de conexión de servicio de zona estándar
Cuando utiliza MCS, se agrega una nueva conexión de AWS con una clave de API y un secreto de API. Con esta información, junto con la cuenta autenticada, MCS consulta a AWS las zonas admitidas mediante la llamada a la API de AWS DescribeRegions EC2. La consulta se realiza utilizando una URL genérica del punto final del servicio EC2
https://ec2.amazonaws.com/. Utilice MCS para seleccionar la zona para la conexión de la lista de zonas admitidas. La URL preferida del punto final del servicio de AWS se selecciona automáticamente para la zona. Sin embargo, después de crear la URL del punto final del servicio, ya no podrá establecer ni modificar la URL.
Tenencia de AWS
AWS ofrece las siguientes opciones de tenencia: tenencia compartida (el tipo predeterminado) y tenencia dedicada. La tenencia compartida significa que varias instancias de Amazon EC2 de diferentes clientes pueden residir en el mismo hardware físico. La tenencia dedicada significa que sus instancias EC2 se ejecutan solo en hardware con otras instancias que usted ha implementado. Otros clientes no utilizan el mismo hardware.
Puede utilizar MCS para aprovisionar hosts dedicados de AWS mediante PowerShell.
Configurar la tenencia de host dedicado de AWS mediante PowerShell
Puede crear un catálogo de máquinas con tenencia de host definida a través de PowerShell.
Un host dedicado de Amazon es un servidor físico con capacidad de instancia totalmente dedicada, lo que le permite utilizar licencias de software existentes por socket o por VM.
Los hosts dedicados tienen una utilización preestablecida basada en el tipo de instancia. Por ejemplo, un único host dedicado asignado de tipos de instancia C4 Large está limitado a ejecutar 16 instancias. Consulte el sitio de AWS para obtener más información.
Los requisitos para el aprovisionamiento en hosts de AWS incluyen:
-
Una imagen BYOL (traiga su propia licencia) importada (AMI). Con los hosts dedicados, use y administre sus licencias existentes.
-
Una asignación de hosts dedicados con suficiente utilización para satisfacer las solicitudes de aprovisionamiento.
-
habilitar la ubicación automática.
Para aprovisionar en un host dedicado en AWS mediante PowerShell, utilice el cmdlet New-ProvScheme con el parámetro TenancyType establecido en Host.
Consulte la documentación para desarrolladores de Citrix para obtener más información.
Captura de propiedades de instancia de AWS
Cuando crea un catálogo para aprovisionar máquinas mediante Machine Creation Services (MCS) en AWS, selecciona una AMI para representar la imagen maestra/dorada de ese catálogo. A partir de esa AMI, MCS utiliza una instantánea del disco. En versiones anteriores, si quería roles o etiquetas en sus máquinas, utilizaba la consola de AWS para configurarlos individualmente. Esta funcionalidad está habilitada de forma predeterminada.
Sugerencia:
Para usar la captura de propiedades de instancia de AWS, debe tener una VM asociada a la AMI.
Para mejorar este proceso, MCS lee las propiedades de la instancia de la que se tomó la AMI y aplica el rol de Identity Access Management (IAM) y las etiquetas de la máquina a las máquinas aprovisionadas para un catálogo determinado. Al utilizar esta función opcional, el proceso de creación del catálogo encuentra la instancia de origen de AMI seleccionada, leyendo un conjunto limitado de propiedades. Estas propiedades se almacenan luego en una plantilla de lanzamiento de AWS, que se utiliza para aprovisionar máquinas para ese catálogo. Cualquier máquina del catálogo hereda las propiedades de instancia capturadas.
Las propiedades capturadas incluyen:
-
Roles de IAM: aplicados a las instancias aprovisionadas.
-
Etiquetas: aplicadas a las instancias aprovisionadas, su disco y sus NIC. Estas etiquetas se aplican a los recursos transitorios de Citrix®, incluidos: bucket y objetos de S3, recursos de volumen y de trabajo, y AMI, instantáneas y plantillas de lanzamiento.
Sugerencia:
El etiquetado de los recursos transitorios de Citrix es opcional y se puede configurar mediante la propiedad personalizada
AwsOperationalResourcesTagging.
Captura de la propiedad de instancia de AWS
Puede usar esta función especificando una propiedad personalizada,
AwsCaptureInstanceProperties, al crear un esquema de aprovisionamiento para una conexión de alojamiento de AWS:
New-ProvScheme -CustomProperties “AwsCaptureInstanceProperties,true” …<standard provscheme parameters
Consulte la documentación para desarrolladores de Citrix para obtener más información.
Aplicación de propiedades de instancia de AWS y etiquetado de recursos operativos
Al crear un catálogo para aprovisionar máquinas en AWS mediante MCS, puede controlar si se aplican el rol de IAM y las propiedades de etiqueta a esas máquinas. También puede controlar si se aplican etiquetas de máquina a los recursos operativos.
Etiquetado de recursos operativos de AWS
Una Amazon Machine Image (AMI) representa un tipo de dispositivo virtual utilizado para crear una máquina virtual dentro del entorno de Amazon Cloud, comúnmente conocido como EC2. Se utiliza una AMI para implementar servicios que usan el entorno EC2. Al crear un catálogo para aprovisionar máquinas mediante MCS para AWS, se selecciona la AMI para que actúe como imagen de oro para ese catálogo.
Importante:
La creación de catálogos mediante la captura de una propiedad de instancia y una plantilla de lanzamiento es necesaria para utilizar el etiquetado de recursos operativos.
Para crear un catálogo de AWS, primero debe crear una AMI para la instancia que desea que sea la imagen dorada. MCS lee las etiquetas de esa instancia y las incorpora a la plantilla de inicio. Las etiquetas de la plantilla de inicio se aplican a todos los recursos de Citrix creados en su entorno de AWS, incluidos:
-
Máquinas virtuales
-
Discos VM
-
Interfaces de red de máquina virtual
-
Depósitos S3
-
Objetos S3
-
Plantillas de lanzamiento
-
AMI
Etiquetar un recurso operativo
Para usar PowerShell para etiquetar recursos:
-
Abra una ventana de PowerShell desde el host DDC.
-
Ejecute el comando
asnp citrixpara cargar los módulos de PowerShell específicos de Citrix.
Para etiquetar un recurso para una VM aprovisionada, utilice la nueva propiedad personalizada
AwsOperationalResourcesTagging. La sintaxis de esta propiedad es:
New-ProvScheme -CustomProperties “AwsCaptureInstanceProperties,true; AwsOperationalResourcesTagging,true” …<standard provscheme parameters>
Definición de permisos de IAM
Utilice la información de esta sección para definir los permisos de IAM para Citrix DaaS en AWS. El servicio IAM de Amazon permite cuentas con varios usuarios, que pueden organizarse en grupos. Estos usuarios pueden tener diferentes permisos para controlar su capacidad de realizar operaciones asociadas a la cuenta. Para obtener más información sobre los permisos de IAM, consulte Referencia de la política JSON de IAM.
Para aplicar la política de permisos de IAM a un nuevo grupo de usuarios:
-
Inicie sesión en la consola de administración de AWS y seleccione el servicio IAM en la lista desplegable.
-
Seleccione Crear un nuevo grupo de usuarios.
-
Escriba un nombre para el nuevo grupo de usuarios y seleccione Continuar.
-
En la página Permissions, elija Custom Policy. Seleccione Select.
-
Escriba un nombre para la Política de permisos.
-
En la sección Policy Document, introduzca los permisos pertinentes.
Después de introducir la información de la política, seleccione Continuar para completar el grupo de usuarios. Los usuarios del grupo tienen permisos para realizar solo las acciones necesarias para Citrix DaaS.
Importante:
Utilice el texto de la política proporcionado en el ejemplo anterior para enumerar las acciones que utiliza Citrix DaaS para realizar acciones dentro de una cuenta de AWS sin restringir esas acciones a recursos específicos. Citrix recomienda utilizar el ejemplo con fines de prueba. Para entornos de producción, puede optar por añadir más restricciones a los recursos.
Adición de permisos de IAM
Establezca los permisos en la sección IAM de la Consola de administración de AWS:
-
En el panel Resumen, seleccione la ficha Permisos.
-
Seleccione Añadir permisos.
En la pantalla Agregar permisos a, conceda permisos:
Utilice lo siguiente como ejemplo en la pestaña JSON:
Sugerencia:
Es posible que el ejemplo JSON mencionado no incluya todos los permisos para su entorno. Consulte Cómo definir permisos de administración de acceso e identidad para ejecutar Citrix Virtual Apps and Desktops en AWS para obtener más información.
Acerca de los permisos de AWS
Esta sección contiene la lista completa de permisos de AWS.
Nota:
El permiso iam:PassRole solo es necesario para role_based_auth.
Creación de una conexión de host
Se añade una nueva conexión de host utilizando la información obtenida de AWS.
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"ec2:DescribeAvailabilityZones",
"ec2:DescribeImages",
"ec2:DescribeInstances",
"ec2:DescribeInstanceTypes",
"ec2:DescribeSecurityGroups",
"ec2:DescribeSubnets",
"ec2:DescribeVpcs",
"ec2:DescribeRegions",
"ec2:DescribeSnapshots",
"ec2:DescribeLaunchTemplates"
],
"Effect": "Allow",
"Resource": "*"
}
]
}
Administración de energía de las VM
Las instancias de máquina se encienden o apagan.
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"ec2:AttachVolume",
"ec2:CreateVolume",
"ec2:DeleteVolume",
"ec2:DescribeInstances",
"ec2:DescribeVolumes",
"ec2:DetachVolume",
"ec2:StartInstances",
"ec2:StopInstances"
],
"Effect": "Allow",
"Resource": "*"
}
]
}
Crear, actualizar o eliminar VM
Se crea, actualiza o elimina un catálogo de máquinas con máquinas virtuales aprovisionadas como instancias de AWS.
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"ec2:AttachVolume",
"ec2:AssociateIamInstanceProfile",
"ec2:AuthorizeSecurityGroupEgress",
"ec2:AuthorizeSecurityGroupIngress",
"ec2:CreateImage",
"ec2:CreateLaunchTemplate",
"ec2:CreateSecurityGroup",
"ec2:CreateTags",
"ec2:CreateVolume",
"ec2:DeleteVolume",
"ec2:DescribeAccountAttributes",
"ec2:DescribeAvailabilityZones",
“ec2:DescribeIamInstanceProfileAssociations”,
"ec2:DescribeImages",
"ec2:DescribeInstances",
"ec2:DescribeInstanceTypes",
"ec2:DescribeLaunchTemplates",
"ec2:DescribeLaunchTemplateVersions",
"ec2:DescribeNetworkInterfaces",
"ec2:DescribeRegions",
"ec2:DescribeSecurityGroups",
"ec2:DescribeSnapshots",
"ec2:DescribeSubnets",
"ec2:DescribeTags",
"ec2:DescribeVolumes",
"ec2:DescribeVpcs",
"ec2:DetachVolume",
"ec2:DisassociateIamInstanceProfile",
"ec2:RunInstances",
"ec2:StartInstances",
"ec2:StopInstances",
"ec2:TerminateInstances"
],
"Effect": "Allow",
"Resource": "*"
},
{
"Action": [
"ec2:AuthorizeSecurityGroupEgress",
"ec2:AuthorizeSecurityGroupIngress",
"ec2:CreateSecurityGroup",
"ec2:DeleteSecurityGroup",
"ec2:RevokeSecurityGroupEgress",
"ec2:RevokeSecurityGroupIngress"
],
"Effect": "Allow",
"Resource": "*"
},
{
"Action": [
"s3:CreateBucket",
"s3:DeleteBucket",
"s3:PutBucketAcl",
"s3:PutBucketTagging",
"s3:PutObject",
"s3:GetObject",
"s3:DeleteObject",
"s3:PutObjectTagging"
],
"Effect": "Allow",
"Resource": "arn:aws:s3:::citrix*"
},
{
"Action": [
"ebs:StartSnapshot",
"ebs:GetSnapshotBlock",
"ebs:PutSnapshotBlock",
"ebs:CompleteSnapshot",
"ebs:ListSnapshotBlocks",
"ebs:ListChangedBlocks",
"ec2:CreateSnapshot"
],
"Effect": "Allow",
"Resource": "*"
}
]
}
Nota:
La sección EC2 relacionada con SecurityGroups solo es necesaria si se debe crear un grupo de seguridad de aislamiento para la máquina virtual de preparación durante la creación del catálogo. Una vez hecho esto, estos permisos no son necesarios.
Carga y descarga directa de discos
La carga directa de discos elimina el requisito de trabajador de volumen para el aprovisionamiento de catálogos de máquinas y, en su lugar, utiliza las API públicas proporcionadas por AWS. Esta funcionalidad reduce el coste asociado a las cuentas de almacenamiento adicionales y la complejidad de mantener las operaciones del trabajador de volumen.
Los siguientes permisos deben agregarse a la directiva:
-
ebs:StartSnapshot -
ebs:GetSnapshotBlock -
ebs:PutSnapshotBlock -
ebs:CompleteSnapshot -
ebs:ListSnapshotBlocks -
ebs:ListChangedBlocks -
ec2:CreateSnapshot -
ec2:DeleteSnapshot -
ec2:DescribeLaunchTemplates
Importante:
-
Puede añadir una nueva VM a los catálogos de máquinas existentes sin ninguna operación de trabajador de volumen, como AMI de trabajador de volumen y VM de trabajador de volumen.
-
Si elimina un catálogo existente que usaba el trabajador de volumen anteriormente, se eliminan todos los artefactos, incluidos los relacionados con el trabajador de volumen.
Cifrado EBS de volúmenes creados
EBS puede cifrar automáticamente los volúmenes recién creados si la AMI está cifrada, o si EBS está configurado para cifrar todos los volúmenes nuevos. Sin embargo, para implementar la funcionalidad, los siguientes permisos deben incluirse en la política de IAM.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"kms:CreateGrant",
"kms:Decrypt",
"kms:DescribeKey",
"kms:GenerateDataKeyWithoutPlainText",
"kms:ReEncryptTo",
"kms:ReEncryptFrom"
],
"Resource": "*"
}
]
}
Nota:
Los permisos se pueden limitar a claves específicas incluyendo un bloque de Recursos y Condiciones a discreción del usuario. Por ejemplo, Permisos de KMS con condición:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"kms:CreateGrant",
"kms:Decrypt",
"kms:DescribeKey",
"kms:GenerateDataKeyWithoutPlainText",
"kms:ReEncryptTo",
"kms:ReEncryptFrom"
],
"Resource": [
"arn:aws:kms:us-east-2:123456789012:key/abcd1234-a123-456d-a12b-a123b4cd56ef"
],
"Condition": {
"Bool": {
"kms:GrantIsForAWSResource": true
}
}
}
]
}
La siguiente declaración de política de clave es la política de clave predeterminada completa para las claves de KMS que se requiere para permitir que la cuenta utilice políticas de IAM para delegar permisos para todas las acciones (kms:*) en la clave de KMS.
{
"Sid": "Enable IAM policies",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::111122223333:root"
},
"Action": "kms:",
"Resource": ""
}
Para obtener más información, consulte la documentación oficial de AWS Key Management Service.
Autenticación basada en roles de IAM
Se añaden los siguientes permisos para admitir la autenticación basada en roles.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": "arn:aws:iam::*:role/*"
}
]
}
Política de permisos mínimos de IAM
El siguiente JSON se puede usar para todas las funciones actualmente compatibles. Puede crear conexiones de host, crear, actualizar o eliminar máquinas virtuales y realizar la administración de energía utilizando esta política. La política se puede aplicar a los usuarios como se explica en las secciones Definición de permisos de IAM o también puede usar la autenticación basada en roles utilizando la clave de seguridad y la clave secreta role_based_auth.
Importante:
Para usar role_based_auth, primero configure el rol de IAM deseado en la instancia EC2 del conector de la nube al configurar el conector de la nube. Con Citrix Studio, agregue la conexión de alojamiento y proporcione role_based_auth para la clave de autenticación y el secreto. Una conexión de alojamiento con esta configuración utiliza entonces la autenticación basada en roles.
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"ec2:AttachVolume",
"ec2:AssociateIamInstanceProfile",
"ec2:AuthorizeSecurityGroupEgress",
"ec2:AuthorizeSecurityGroupIngress",
"ec2:CreateImage",
"ec2:CreateLaunchTemplate",
"ec2:CreateNetworkInterface",
"ec2:CreateTags",
"ec2:CreateVolume",
"ec2:DeleteLaunchTemplate",
"ec2:DeleteNetworkInterface",
"ec2:DeleteSecurityGroup",
"ec2:DeleteSnapshot",
"ec2:DeleteTags",
"ec2:DeleteVolume",
"ec2:DeregisterImage",
"ec2:DescribeAccountAttributes",
"ec2:DescribeAvailabilityZones",
"ec2:DescribeIamInstanceProfileAssociations",
"ec2:DescribeImages",
"ec2:DescribeInstances",
"ec2:DescribeInstanceTypes",
"ec2:DescribeLaunchTemplates",
"ec2:DescribeLaunchTemplateVersions",
"ec2:DescribeNetworkInterfaces",
"ec2:DescribeRegions",
"ec2:DescribeSecurityGroups",
"ec2:DescribeSnapshots",
"ec2:DescribeSubnets",
"ec2:DescribeTags",
"ec2:DescribeVolumes",
"ec2:DescribeVpcs",
"ec2:DetachVolume",
"ec2:DisassociateIamInstanceProfile",
"ec2:RebootInstances",
"ec2:RunInstances",
"ec2:StartInstances",
"ec2:StopInstances",
"ec2:TerminateInstances"
],
"Effect": "Allow",
"Resource": "*"
},
{
"Action": [
"ec2:AuthorizeSecurityGroupEgress",
"ec2:AuthorizeSecurityGroupIngress",
"ec2:CreateSecurityGroup",
"ec2:DeleteSecurityGroup",
"ec2:RevokeSecurityGroupEgress",
"ec2:RevokeSecurityGroupIngress"
],
"Effect": "Allow",
"Resource": "*"
},
{
"Action": [
"s3:CreateBucket",
"s3:DeleteBucket",
"s3:DeleteObject",
"s3:GetObject",
"s3:PutBucketAcl",
"s3:PutObject",
"s3:PutBucketTagging",
"s3:PutObjectTagging"
],
"Effect": "Allow",
"Resource": "arn:aws:s3:::citrix*"
},
{
"Action": [
"ebs:StartSnapshot",
"ebs:GetSnapshotBlock",
"ebs:PutSnapshotBlock",
"ebs:CompleteSnapshot",
"ebs:ListSnapshotBlocks",
"ebs:ListChangedBlocks",
"ec2:CreateSnapshot"
],
"Effect": "Allow",
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"kms:CreateGrant",
"kms:Decrypt",
"kms:DescribeKey",
"kms:GenerateDataKeyWithoutPlainText",
"kms:ReEncryptTo",
"kms:ReEncryptFrom"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": "arn:aws:iam::*:role/*"
}
]
}
Nota:
-
La sección EC2 relacionada con SecurityGroups solo es necesaria si se debe crear un grupo de seguridad de aislamiento para la máquina virtual de preparación durante la creación del catálogo. Una vez hecho esto, estos permisos no son necesarios.
-
La sección de KMS solo es necesaria cuando se utiliza el cifrado de volumen de EBS.
-
La sección de permisos iam:PassRole solo es necesaria para role_based_auth.
-
Se pueden agregar permisos específicos a nivel de recurso en lugar de acceso completo, según sus requisitos y entorno. Consulte los documentos de AWS Demystifying EC2 Resource-Level Permissions y Access management for AWS resources para obtener más detalles.