

• El panel de AWS Systems Manager CloudWatch dejará de estar disponible después del 30 de abril de 2026. Los clientes pueden seguir utilizando la consola de Amazon CloudWatch para ver, crear y administrar sus paneles de Amazon CloudWatch, tal y como lo hacen actualmente. Para obtener más información, consulte la [documentación del panel de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html). 

# Requisitos previos de Azure
<a name="cloud-connector-prereqs-azure"></a>

Complete los pasos siguientes en su entorno de Azure. Necesitará los siguientes valores de los requisitos previos de AWS:
+ **URL del emisor:** la URL del emisor del OIDC de AWS de la sección anterior.
+ **Asunto**: el ARN del rol de federación de Systems Manager Azure, por ejemplo, `arn:aws:iam::{{ACCOUNT_ID}}:role/service-role/SSM-AzureRole-{{connector-name}}-{{id8}}`

**Para configurar el lado de Azure de la federación**

1. 

**Creación de una aplicación de ID de Azure Entra**

   Cree un registro de aplicaciones en Microsoft Entra ID (anteriormente Azure Active Directory). Anote el *ID de la aplicación (cliente)* del resultado.

   ```
   az ad app create --display-name "{{AWSSSMAzureIntegration}}" --query appId
   ```

1. 

**Creación de una entidad principal de servicio para la aplicación**

   Cree una entidad principal de servicio asociada con la aplicación Anote el *ID* de la entidad principal del servicio del resultado.

   ```
   az ad sp create --id {{APPLICATION_ID}}
   ```

1. 

**Agregación de una credencial de identidad federada**

   Agregue una credencial de identidad federada a la aplicación que confía en el emisor del OIDC de AWS. Esto permite a Azure aceptar los tokens emitidos por AWS en nombre del rol de federación de Azure de Systems Manager (consulte [Rol de federación de Azure](cloud-connector-azure-federation-role.md)).

   ```
   az ad app federated-credential create \
       --id {{APPLICATION_ID}} \
       --parameters "{
           \"name\": \"aws-ssm-federation\",
           \"issuer\": \"{{AWS_OIDC_ISSUER_URL}}\",
           \"subject\": \"arn:aws:iam::{{ACCOUNT_ID}}:role/service-role/SSM-AzureRole-{{CONNECTOR_NAME}}-{{ID8}}\",
           \"audiences\": [\"api://AzureADTokenExchange\"]
       }"
   ```

   Reemplace:
   + {{APPLICATION\_ID}}: el ID de la aplicación (cliente) del paso 1.
   + {{AWS\_OIDC\_ISSUER\_URL:}} la URL del emisor del OIDC de AWS (por ejemplo, `https://a1667813-695b-5415-b0f7-d473d62bb123.tokens.sts.global.api.aws`).
   + {{ACCOUNT\_ID}}: el ID de su Cuenta de AWS.
   + {{CONNECTOR\_NAME}}: el nombre para mostrar sanitizado de su Cloud Connector.
   + {{ID8}}: los primeros ocho caracteres del UUID asignado a la función de federación de Azure. Puede encontrarlo en el nombre del rol después de crear el Cloud Connector en la Consola de administración de AWS, o especificarlo al crear el rol manualmente (consulte [Rol de federación de Azure](cloud-connector-azure-federation-role.md)).

1. 

**Creación del rol personalizado VM Run Command**

   Cree un rol personalizado que conceda los permisos mínimos necesarios para que Systems Manager ejecute comandos en máquinas virtuales de Azure. Sustituya {{SUBSCRIPTION\_ID}} por el ID de suscripción de Azure que desee administrar.

   ```
   az role definition create --role-definition '{
       "Name": "AWSSSMVMExtensionRole-{{SUBSCRIPTION_ID}}",
       "Description": "Allows AWS Systems Manager to run commands on Azure VMs",
       "Actions": [
           "Microsoft.Compute/virtualMachines/read",
           "Microsoft.Compute/virtualMachines/runCommand/action",
           "Microsoft.Compute/virtualMachines/runCommands/*"
       ],
       "AssignableScopes": [
           "/subscriptions/{{SUBSCRIPTION_ID}}"
       ]
   }'
   ```

   Para el ámbito a nivel de inquilino (todas las suscripciones del inquilino), utilice en su lugar un ámbito de grupo de administración:

   ```
   az role definition create --role-definition '{
       "Name": "AWSSSMVMExtensionRole-{{TENANT_ID}}",
       "Description": "Allows AWS Systems Manager to run commands on Azure VMs",
       "Actions": [
           "Microsoft.Compute/virtualMachines/read",
           "Microsoft.Compute/virtualMachines/runCommand/action",
           "Microsoft.Compute/virtualMachines/runCommands/*"
       ],
       "AssignableScopes": [
           "/providers/Microsoft.Management/managementGroups/{{TENANT_ID}}"
       ]
   }'
   ```

   Verificación de la creación del rol:

   ```
   az role definition list --name "AWSSSMVMExtensionRole-{{SUBSCRIPTION_ID}}" --output table
   ```

1. 

**Asignación del rol VM Run Command a la entidad principal del servicio**

   Asigne el rol personalizado a la entidad principal de servicio que ha creado en el paso 2. El ámbito determina qué recursos de Azure puede administrar Systems Manager.

   Para el ámbito a nivel de suscripción (repita el procedimiento para cada suscripción):

   ```
   az role assignment create \
       --assignee {{SERVICE_PRINCIPAL_ID}} \
       --role "AWSSSMVMExtensionRole-{{SUBSCRIPTION_ID}}" \
       --scope "/subscriptions/{{SUBSCRIPTION_ID}}"
   ```

   Para el ámbito a nivel de grupo de administración:

   ```
   az role assignment create \
       --assignee {{SERVICE_PRINCIPAL_ID}} \
       --role "AWSSSMVMExtensionRole-{{TENANT_ID}}" \
       --scope "/providers/Microsoft.Management/managementGroups/{{TENANT_ID}}"
   ```

1. 

**Creación de una aplicación de ID de Azure Entra para AWS Config**

   Cree un registro de aplicación independiente para que AWS Config lo utilice al registrar el estado de los recursos de Azure. Anote el *ID de la aplicación (cliente)* del resultado.

   ```
   az ad app create \
       --display-name "AWSConfigAzureIntegration-{{ACCOUNT_ID}}-{{TENANT_ID_PREFIX}}" \
       --query appId
   ```

   Cree una entidad principal de servicio para la aplicación de AWS Config:

   ```
   az ad sp create --id {{CONFIG_APPLICATION_ID}}
   ```

1. 

**Agregación de una credencial de identidad federada para AWS Config**

   Agregue una credencial de identidad federada a la aplicación de AWS Config. El asunto es el ARN del rol vinculado al servicio de AWS Config (que se crea automáticamente al crear el conector de Config en un paso posterior).

   ```
   az ad app federated-credential create \
       --id {{CONFIG_APPLICATION_ID}} \
       --parameters "{
           \"name\": \"aws-config-federation\",
           \"issuer\": \"{{AWS_OIDC_ISSUER_URL}}\",
           \"subject\": \"arn:aws:iam::{{ACCOUNT_ID}}:role/aws-service-role/thirdparty.config.amazonaws.com/AWSServiceRoleForConfigThirdParty\",
           \"audiences\": [\"api://AzureADTokenExchange\"]
       }"
   ```

1. 

**Asignación del rol de lector a la entidad principal del servicio de AWS Config**

   Asigne el rol de lector integrado en Azure a la entidad principal del servicio de AWS Config por inquilino (grupo de administración). Esto permite que AWS Config detecte los recursos de Azure.

   ```
   az role assignment create \
       --assignee {{CONFIG_SERVICE_PRINCIPAL_ID}} \
       --role "acdd72a7-3385-48ef-bd42-f606fba81ae7" \
       --scope "/providers/Microsoft.Management/managementGroups/{{TENANT_ID}}"
   ```

1. 

**Creación de un centro de eventos para el flujo de registro de actividades de Azure**

   AWS Config utiliza un centro de eventos de Azure para recibir los eventos de registro de actividades que indican cambios en los recursos. Cree un espacio de nombres, un centro y un grupo de consumidores de Event Hub en una de sus suscripciones de Azure.

   ```
   # Create a resource group for the Event Hub
   az group create \
       --subscription "{{HOSTING_SUBSCRIPTION_ID}}" \
       --name "AWSConfigAzureResources" \
       --location eastus
   
   # Create an Event Hub namespace with a discovery tag
   az eventhubs namespace create \
       --subscription "{{HOSTING_SUBSCRIPTION_ID}}" \
       --resource-group "AWSConfigAzureResources" \
       --name "{{EVENT_HUB_NAMESPACE}}" \
       --location eastus \
       --sku Standard \
       --tags "AWSConfig-{{ACCOUNT_ID}}-{{AWS_REGION}}=activitylog"
   
   # Create the Event Hub
   az eventhubs eventhub create \
       --subscription "{{HOSTING_SUBSCRIPTION_ID}}" \
       --resource-group "AWSConfigAzureResources" \
       --namespace-name "{{EVENT_HUB_NAMESPACE}}" \
       --name "activitylog" \
       --partition-count 4
   
   # Create the consumer group for AWS Config
   az eventhubs eventhub consumer-group create \
       --subscription "{{HOSTING_SUBSCRIPTION_ID}}" \
       --resource-group "AWSConfigAzureResources" \
       --namespace-name "{{EVENT_HUB_NAMESPACE}}" \
       --eventhub-name "activitylog" \
       --name "AWSConfig"
   ```

   Sustituya {{EVENT\_HUB\_NAMESPACE}} por un nombre único a nivel mundial (por ejemplo, `awsconfig-{{ACCOUNT_ID}}-{{REGION}}`) y {{HOSTING\_SUBSCRIPTION\_ID}} con la suscripción de Azure que alojará los recursos de centro de eventos.

1. 

**Asignación del rol de receptor de datos de centros de eventos a la entidad principal del servicio de AWS Config**

   Permita que la entidad principal del servicio de AWS Config lea desde el centro de eventos:

   ```
   EVENT_HUB_ID=$(az eventhubs eventhub show \
       --subscription "{{HOSTING_SUBSCRIPTION_ID}}" \
       --resource-group "AWSConfigAzureResources" \
       --namespace-name "{{EVENT_HUB_NAMESPACE}}" \
       --name "activitylog" \
       --query id \
       -o tsv)
   
   az role assignment create \
       --assignee {{CONFIG_SERVICE_PRINCIPAL_ID}} \
       --role "a638d3c7-ab3a-418d-83e6-5f17a39d4fde" \
       --scope "$EVENT_HUB_ID"
   ```

1. 

**Configure la exportación del registro de actividades al centro de eventos**

   Para cada suscripción de Azure que desee que AWS Config supervise, cree una configuración de diagnóstico que exporte los eventos del registro de actividades al centro de eventos:

   ```
   az provider register \
       --namespace Microsoft.Insights \
       --subscription "{{SUBSCRIPTION_ID}}"
   
   az rest --method PUT \
       --url "https://management.azure.com/subscriptions/{{SUBSCRIPTION_ID}}/providers/Microsoft.Insights/diagnosticSettings/{{EVENT_HUB_NAMESPACE}}?api-version=2021-05-01-preview" \
       --body "{
           \"properties\": {
               \"eventHubAuthorizationRuleId\": \"/subscriptions/{{HOSTING_SUBSCRIPTION_ID}}/resourceGroups/AWSConfigAzureResources/providers/Microsoft.EventHub/namespaces/{{EVENT_HUB_NAMESPACE}}/authorizationRules/RootManageSharedAccessKey\",
               \"eventHubName\": \"activitylog\",
               \"logs\": [{\"category\": \"Administrative\", \"enabled\": true}]
           }
       }"
   ```

   Repita este paso para cada suscripción que desee monitorear.

Tras completar la instalación de Azure, tenga en cuenta los siguientes valores. Los necesitará al crear el Cloud Connector:
+ **ID de inquilino**: el ID de su directorio (inquilino) de Azure AD.
+ **ID de aplicación SSM (cliente):** el ID de aplicación de la aplicación Azure AD de Systems Manager (paso 1).
+ **ID de aplicación de Config (cliente):** el ID de aplicación de la aplicación Azure AD de AWS Config (paso 6).
+ **ID de suscripción**: las suscripciones de Azure que desee administrar.
+ **Nombre de host del espacio de nombres del centro de eventos**: el nombre de host completo del espacio de nombres del centro de eventos (por ejemplo, `{{EVENT_HUB_NAMESPACE}}.servicebus.windows.net`).