> ## Documentation Index
> Fetch the complete documentation index at: https://translations.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Documentación de Lock sobre cómo configurar parámetros de autenticación.

# Parámetros de autenticación de Lock

Puede enviar parámetros al iniciar sesión añadiéndolos al objeto de opciones. En el siguiente ejemplo, se agrega un parámetro `state` con el valor `'foo'`.

```js lines theme={null}
var options = {
  auth: {
    params: {state: 'foo'},
  }
};
```

El ejemplo anterior sería equivalente a iniciar el inicio de sesión con `https://{yourDomain}/authorize?state=foo&...`.

Se admiten los siguientes parámetros: `scope`, `device`, `nonce` y `state`.

<div id="supported-parameters">
  ## Parámetros admitidos
</div>

### scope {string}

```js lines theme={null}
var options = {
  auth: {
    params: {scope: 'openid email user_metadata app_metadata picture'},
  }
};
```

Hay distintos valores admitidos para `scope`. Tenga en cuenta que los <Tooltip tip="JSON Web Token (JWT): formato estándar de ID Token (y, a menudo, también de Token de acceso) que se usa para representar claims de forma segura entre dos partes." cta="Ver glosario" href="/es/docs/glossary?term=JWTs">JWTs</Tooltip> se envían en cada solicitud a la API, por lo que conviene mantenerlos lo más pequeños posible.

El valor predeterminado de `scope` en Lock es `openid profile email`. Este valor mínimo de `scope` es necesario para que la funcionalidad **Última vez que inició sesión con** funcione correctamente.

<Card title="Ejecutar Lock localmente">
  Si no especifica manualmente al menos el valor predeterminado de `scope`, `openid profile email`, al inicializar Lock, y ejecuta su sitio web desde `http://localhost` o `http://127.0.0.1`, verá el siguiente error en la consola del navegador:

  `Consent required. When using getSSOData, the user has to be authenticated with the following scope: openid profile email`

  Eso **no** ocurrirá cuando ejecute su aplicación en producción o si especifica el `scope` `openid profile email`. Puede obtener más información en el documento [Consentimiento del usuario y aplicaciones de terceros](/es/docs/get-started/applications/third-party-applications/user-consent-and-third-party-applications).
</Card>

Para obtener más información sobre los alcances, consulte la [página de documentación sobre alcances](/es/docs/get-started/apis/scopes).

<div id="example-retrieve-a-token">
  #### Ejemplo: obtener un token
</div>

En Lock, si desea recibir un token con capacidad para obtener los datos del perfil del usuario, debe agregar el parámetro `scope`.

```js lines theme={null}
var options = {
  auth: {
    params: {
        scope: 'openid profile'
    }
  }
};
```

También existe una opción de configuración `connectionScopes` para Lock que le permite especificar alcances para una conexión concreta. Esto resulta útil si quiere comenzar con un conjunto de alcances (definidos en el panel) y, más adelante, solicitar permisos o atributos adicionales de una conexión específica. Obtenga más información en la página [Opciones de configuración de Lock](/es/docs/libraries/lock/lock-configuration).

### state {string}

El parámetro `state` es un valor arbitrario que se mantiene durante las redirecciones. Es útil para mitigar los [ataques XSRF](https://en.wikipedia.org/wiki/Cross-site_request_forgery) y para conservar información contextual, [como una URL de retorno](/es/docs/authenticate/login/logout/redirect-users-after-logout), que puedas necesitar cuando haya finalizado el proceso de autenticación. Si no se proporciona un parámetro `state` personalizado, Lock generará uno automáticamente. Para obtener más información, consulta [State Parameter](/es/docs/secure/attack-protection/state-parameters).

### nonce {string}

El parámetro `nonce` se utiliza para ayudar a prevenir ataques de repetición, y Lock lo generará automáticamente si no se proporciona un valor personalizado.

### device {string}

El parámetro `device` indica el nombre del dispositivo o navegador que solicita la autenticación.
