

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Configurar la autenticación OAuth 2.0 para Box
<a name="kb-managed-box-oauth2-setup"></a>

La autenticación OAuth 2.0 (`OAUTH2`) se autentica como una aplicación de Box en nombre de un usuario específico, mediante el flujo de OAuth 2.0 (3LO). El conector rastrea el contenido al que puede acceder el usuario. La autenticación OAuth 2.0 es específica para cada usuario y no admite el control de acceso a nivel de documento (ACL); úsela solo cuando la autenticación mediante credenciales de cliente no sea viable. El usuario debe iniciar sesión manualmente para generar los tokens.

**importante**  
Para filtrar los resultados de las consultas por permisos de usuario, utilice en su lugar la autenticación mediante credenciales de cliente. Consulte [Configurar la autenticación de concesión de credenciales de cliente para Box](kb-managed-box-ccg-setup.md).

## Paso 1: Crea la aplicación OAuth
<a name="kb-managed-box-oauth2-step1"></a>

1. Navega hasta la consola para desarrolladores [ de Box. ](https://app.box.com/developers/console)

1. Seleccione ** Crear una aplicación nueva**.

1. Selecciona Autenticación de ** usuario (OAuth 2.0). Tipo de aplicación**: ** Usuario. **

1. Asigne un nombre a la aplicación y elija Crear**. **

## Paso 2: Configurar el URI de redireccionamiento
<a name="kb-managed-box-oauth2-step2"></a>

En los URI de redireccionamiento de ** OAuth 2.0**, introduce la URL de redireccionamiento. Si ya tienes un punto final de redireccionamiento, úsalo. De lo contrario, usa el siguiente punto final de prueba:

```
https://httpbin.org/anything
```

**importante**  
`httpbin.org`es un punto final de redireccionamiento de prueba, lo cual es adecuado para la generación de credenciales. No lo use en producción.

## Paso 3: configurar las acciones de contenido
<a name="kb-managed-box-oauth2-step3"></a>

Habilite las dos acciones de contenido siguientes:
+ Leer todos los archivos y carpetas
+ Escribe todos los archivos y carpetas

No habilites las acciones administrativas ni el encabezado como usuario en OAuth 2.0. No se requiere ningún otro ajuste.

## Paso 4: Genera el token de acceso
<a name="kb-managed-box-oauth2-step4"></a>

1. Inicia sesión en la cuenta de Box del usuario que quieres rastrear (en tu navegador).

1. Navega hasta la URL de autorización y {{your-client-id}} sustitúyala por la ID de cliente de la aplicación y {{random-string}} por un valor arbitrario:

   ```
   https://account.box.com/api/oauth2/authorize?response_type=code&client_id={{your-client-id}}&state={{random-string}}
   ```

1. Tras la autorización, se te redirigirá a httpbin. Copia el `code` valor de la URL:

   ```
   https://httpbin.org/anything?state={{your-state}}&code={{auth-code}}
   ```

1. Ejecute el siguiente comando para intercambiar el código por fichas:

   ```
   curl -i -X POST "https://api.box.com/oauth2/token" \
     -H "content-type: application/x-www-form-urlencoded" \
     -d "client_id={{your-client-id}}" \
     -d "client_secret={{your-client-secret}}" \
     -d "code={{code-from-above}}" \
     -d "grant_type=authorization_code"
   ```

1. La respuesta contiene `access_token` y`refresh_token`. Copia ambos.

## Paso 5: Crea el secreto del Gestor de Secretos
<a name="kb-managed-box-oauth2-step5"></a>

Guarde las credenciales en un AWS Secrets Manager secreto con los siguientes pares clave-valor:

```
{
    "clientId": "{{your-client-id}}",
    "clientSecret": "{{your-client-secret}}",
    "accessToken": "{{your-access-token}}",
    "refreshToken": "{{your-refresh-token}}"
}
```

Cree el secreto con: AWS Command Line Interface

```
aws secretsmanager create-secret \
  --name {{bedrock-box-oauth2-creds}} \
  --secret-string file://secret.json
```

Registra el ARN secreto de la respuesta. Lo usa como fuente `secretArn` de datos.

## Siguientes pasos
<a name="kb-managed-box-oauth2-next"></a>

Después de almacenar el secreto, cree la fuente de datos con el `authType` valor establecido en`OAUTH2`. Consulte [Conectar una fuente de datos de Box](kb-managed-ds-box-connect.md).