

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

 Smartsheet admite el tipo de concesión `AUTHORIZATION_CODE` para OAuth2. 

Este tipo de concesión se considera un `OAuth` “de tres vías”, ya que se basa en redirigir a los usuarios al servidor de autorización externo para autenticar al usuario. Los usuarios aún pueden optar por crear una aplicación conectada propia en Smartsheet y proporcionar un ID y secreto de cliente propios al crear conexiones a través de la consola de AWS Glue. En este escenario, aún se abrirá Smartsheet para iniciar sesión y autorizar a AWS Glue para que acceda a sus recursos. 

Este tipo de concesión da como resultado un token de actualización y un token de acceso. El token de acceso es de corta duración y se puede actualizar automáticamente sin la interacción del usuario mediante el token de actualización. 

Para obtener documentación pública de Smartsheet sobre la creación de una aplicación conectada para el flujo AUTHORIZATION\$1CODE OAuth, consulte [API de Smartsheet](https://smartsheet.redoc.ly/#section/OAuth-Walkthrough). 

Para configurar una conexión a Smartsheet:

1. En AWS Secrets Manager, cree un secreto con los siguientes detalles: 

   En el caso de una aplicación conectada administrada por el cliente, el secreto debe contener el secreto del consumidor de la aplicación conectada con la clave `USER_MANAGED_CLIENT_APPLICATION_CLIENT_SECRET`. 
**nota**  
Es imprescindible crear un secreto por conexión en AWS Glue.

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

   1. Al seleccionar un **Tipo de conexión**, elija Smartsheet.

   1. Proporcione la `instanceUrl` de Smartsheet a la que se desea conectar.

   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 `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`. 