

# Configuración de las conexiones a Mailchimp
<a name="mailchimp-configuring-connections"></a>

 Mailchimp admite los siguientes dos tipos de mecanismos de autenticación: 
+ Mailchimp admite el tipo de concesión `AUTHORIZATION_CODE`.
  + Este tipo de concesión se considera un `OAuth` de “tres patas”, ya que depende de redirigir a los usuarios al servidor de autorización de terceros para autenticarlos. Se utiliza para crear conexiones a través de la consola de AWS Glue. El usuario que crea una conexión puede, de forma predeterminada, confiar en una aplicación conectada propiedad de AWS Glue, en la que no necesita proporcionar ninguna información relacionada con `OAuth`, excepto su ID de cliente y secreto de cliente de Mailchimp. La consola de AWS Glue redirigirá al usuario a Mailchimp, donde deberá iniciar sesión y conceder a AWS Gluelos permisos solicitados para acceder a su instancia de Mailchimp.
  + Los usuarios aún pueden optar por crear su propia aplicación conectada en Mailchimp y proporcionar su propio ID y secreto de cliente al crear conexiones a través de la consola de AWS Glue. En este escenario, aún se abrirá Mailchimp para iniciar sesión y autorizar a AWS Glue para que acceda a sus recursos.
  + Para ver la documentación pública de Mailchimp sobre la creación de una aplicación conectada para el flujo `AUTHORIZATION_CODE OAuth`, consulte [ Access Data on Behalf of Other Users with OAuth 2 ](https://mailchimp.com/developer/marketing/guides/access-user-data-oauth-2/?msockid=141ebf9ffb4d619525c3ad27fad660d6). 
+ **Autenticación personalizada**: para consultar la documentación pública de Mailchimp sobre cómo generar las claves de API necesarias para la autorización personalizada, consulte [ About API Keys](https://mailchimp.com/en/help/about-api-keys/?msockid=310fd0fe09d16afe034fc5de08d76b01). 



Para configurar una conexión a Mailchimp:

1. En AWS Secrets Manager, cree un secreto con los siguientes detalles: 
   + Autenticación `OAuth`: en el caso de una aplicación conectada administrada por el cliente, el secreto debe contener el secreto del cliente de la aplicación conectada con `USER_MANAGED_CLIENT_APPLICATION_CLIENT_SECRET` como clave. 
   + Autenticación personalizada: en el caso de una aplicación conectada administrada por el cliente, el secreto debe contener el secreto del cliente de la aplicación conectada con “api\$1key” como clave. 
**nota**  
Es imprescindible crear un secreto por conexión en AWS Glue.

1. En AWS Glue Studio, cree una conexión en **Conexiones de datos** según los pasos que se indican a continuación:

   1. En **Conexiones**, elija **Crear conexión**. 

   1. Al seleccionar un **Origen de datos**, elija Mailchimp.

   1. Proporcione la `instanceUrl` de Mailchimp.

   1. Seleccione el rol de IAM que AWS Glue puede asumir y que cuente con los permisos necesarios para realizar las siguientes acciones: 

------
#### [ JSON ]

****  

      ```
      {
        "Version":"2012-10-17",		 	 	 
        "Statement": [
          {
            "Effect": "Allow",
            "Action": [
              "secretsmanager:DescribeSecret",
              "secretsmanager:GetSecretValue",
              "secretsmanager:PutSecretValue",
              "ec2:CreateNetworkInterface",
              "ec2:DescribeNetworkInterfaces",
              "ec2:DeleteNetworkInterface"
            ],
            "Resource": "*"
          }
        ]
      }
      ```

------

   1. Seleccione el tipo de autenticación para conectarse a Mailchimp:
      + En el caso de la autenticación `OAuth`: proporcione la URL del token, el ID de cliente de la aplicación cliente administrada por el usuario del Mailchimp al que se desea conectar.
      + En el caso de la autenticación personalizada, seleccione el tipo de autenticación PERSONALIZADA para conectarse a Mailchimp.

   1. Seleccione el `secretName` que desee usar para esta conexión en AWS Glue para colocar los tokens. 

   1.  Seleccione las opciones de red si quiere usar su red. 

1. Conceda el rol de IAM asociado a su permiso de trabajo de AWS Glue para leer `secretName`. 

1. En la configuración del trabajo de AWS Glue, proporcione `connectionName` como una conexión de red adicional.