Esta referencia describe la API de la biblioteca de JavaScript de autorización de terceros de Google, que puedes usar para cargar códigos de autorización o tokens de acceso de Google.
Método: google.accounts.oauth2.initCodeClient
El método initCodeClient
inicializa y muestra un cliente de código con el
configuraciones en el parámetro.
google.accounts.oauth2.initCodeClient(config: CodeClientConfig)
Tipo de datos: CodeClientConfig
En la siguiente tabla, se enumeran las propiedades del tipo de datos CodeClientConfig
.
Propiedades | |
---|---|
client_id
|
Obligatorio. El ID de cliente de tu aplicación. Puedes encontrar este valor en la Consola de APIs. |
scope
|
Obligatorio. Una lista delimitada por espacios de los alcances que identifican los recursos a los que la aplicación podría acceder en nombre del usuario. Estos valores informan la pantalla de consentimiento que Google muestra al usuario. |
include_granted_scopes |
Opcional; el valor predeterminado es true . Permite que las aplicaciones usen funciones
autorización para solicitar acceso a permisos adicionales en contexto. Si estableces
el valor de este parámetro en false y se otorga la solicitud de autorización, luego
El nuevo token de acceso solo cubrirá los permisos para los que scope solicitó
en esta CodeClientConfig .
|
redirect_uri
|
Obligatorio para la UX de redireccionamiento. Determina a dónde redirecciona el servidor de la API una vez que el usuario completa el flujo de autorización. El valor debe coincidir exactamente con uno de los URI de redireccionamiento autorizados para el cliente OAuth 2.0, que configuraste en la Consola de APIs, y debe cumplir con nuestras reglas de validación de URI de redireccionamiento. La UX de la ventana emergente ignorará la propiedad. |
callback |
Obligatorio para la UX en ventanas emergentes. La función de JavaScript que controla la respuesta de código que se muestra. La UX de redireccionamiento ignorará la propiedad. |
state |
Opcional. Se recomienda para la UX de redireccionamiento. Especifica cualquier valor de cadena que tu aplicación use para mantener el estado entre tu solicitud de autorización y la respuesta del servidor de autorización. |
enable_granular_consent |
Opcional; el valor predeterminado es true . Si la estableces como false , permisos más detallados de la Cuenta de Google
se inhabilitaría para los IDs de cliente de OAuth creados antes de 2019. Si se configuran enable_granular_consent y enable_serial_consent , solo enable_granular_consent
de esta función se aplicaría y se ignoraría el valor de enable_serial_consent .No hay efecto en los IDs de cliente de OAuth más recientes, ya que siempre se habilitan permisos más detallados para ellos. |
enable_serial_consent |
Este campo es obsoleto; en su lugar, debes usar enable_granular_consent . Esta
tiene el mismo efecto que enable_granular_consent . Aplicaciones existentes
que usan enable_serial_consent pueden seguir haciéndolo, pero
se recomienda que actualices el código para usar enable_granular_consent en
la próxima actualización de tu aplicación.
|
login_hint |
Opcional. Si la aplicación sabe qué usuario debe autorizar la solicitud, puede usar esta propiedad para proporcionarle a Google una sugerencia de acceso. Si se realiza correctamente, se omitirá la selección de cuenta. El valor del campo de dirección de correo electrónico o token de ID sub del usuario de destino.
Para obtener más información, consulta el campo login_hint en la documentación de OpenID Connect.
|
hd |
Opcional. Si tu aplicación conoce el dominio de Workspace al que pertenece el usuario, usa esto para proporcionar una sugerencia a Google. Si se realiza de forma correcta, las cuentas de usuario se limitan o preseleccionan para el dominio proporcionado.
Para obtener más información, consulta el campo hd en la documentación de OpenID Connect.
|
ux_mode |
Opcional. El modo de UX que se usará para el flujo de autorización. De forma predeterminada, se abrirá el flujo de consentimiento en una ventana emergente. Los valores válidos son popup y redirect .
|
select_account |
Opcional; la configuración predeterminada es 'false'. Valor booleano para solicitar al usuario que seleccione una cuenta. |
error_callback |
Opcional. La función de JavaScript que controla algunos errores que no son de OAuth, como
no se pudo abrir la ventana emergente; o se cierra antes de que se genere una respuesta de OAuth
que se devuelven.
El campo `type` del parámetro de entrada proporciona el motivo detallado.
|
Tipo de datos: CodeClient
La clase tiene un solo método público requestCode, que inicia el OAuth 2.0. Flujo de UX de código.
interface CodeClient {
requestCode(): void;
}
Tipo de datos: CodeResponse
Se pasará un objeto CodeResponse
de JavaScript a tu método callback
en
la UX de la ventana emergente. En la UX de redireccionamiento, CodeResponse
se pasará como URL.
parámetros.
En la siguiente tabla, se enumeran las propiedades del tipo de datos CodeResponse
.
Propiedades | |
---|---|
code |
El código de autorización de una respuesta de token correcta. |
scope |
Una lista delimitada por espacios de los permisos que aprobó el usuario. |
state |
El valor de cadena que usa tu aplicación para mantener el estado entre tu solicitud de autorización y la respuesta. |
error |
Un solo código de error ASCII. |
error_description |
Texto ASCII legible que proporciona información adicional, que se usa para ayudar al desarrollador cliente a comprender el error que se produjo. |
error_uri |
Un URI que identifica una página web legible por humanos con información sobre el error, que se usa para proporcionar información adicional sobre el error al desarrollador cliente. |
Método: google.accounts.oauth2.initTokenClient
El método initTokenClient
inicializa y muestra un cliente de token con el
configuraciones en el parámetro.
google.accounts.oauth2.initTokenClient(config: TokenClientConfig)
Tipo de datos: TokenClientConfig
En la siguiente tabla, se enumeran las propiedades del tipo de datos TokenClientConfig
.
Propiedades | |
---|---|
client_id |
Obligatorio. El ID de cliente de tu aplicación. Puedes encontrar este valor en la Consola de APIs. |
callback |
Obligatorio. La función de JavaScript que controla la respuesta del token que se devuelve. |
scope |
Obligatorio. Una lista delimitada por espacios de los alcances que identifican los recursos a los que la aplicación podría acceder en nombre del usuario. Estos valores informan la pantalla de consentimiento que Google muestra al usuario. |
include_granted_scopes |
Opcional; el valor predeterminado es true . Permite que las aplicaciones usen funciones
autorización para solicitar acceso a permisos adicionales en contexto. Si estableces
el valor de este parámetro en false y se otorga la solicitud de autorización, luego
El nuevo token de acceso solo cubrirá los permisos para los que scope solicitó
en esta TokenClientConfig .
|
prompt |
Opcional; la configuración predeterminada es 'select_account'. Un conjunto de datos delimitado por espacios
Es una lista de mensajes que distingue mayúsculas de minúsculas para presentar al usuario. Estos son los posibles valores:
|
enable_granular_consent |
Opcional; el valor predeterminado es true . Si la estableces como false , permisos más detallados de la Cuenta de Google
se inhabilitaría para los IDs de cliente de OAuth creados antes de 2019. Si se configuran enable_granular_consent y enable_serial_consent , solo enable_granular_consent
de esta función se aplicaría y se ignoraría el valor de enable_serial_consent .No hay efecto en los IDs de cliente de OAuth más recientes, ya que siempre se habilitan permisos más detallados para ellos. |
enable_serial_consent |
Este campo es obsoleto; en su lugar, debes usar enable_granular_consent . Esta
tiene el mismo efecto que enable_granular_consent . Aplicaciones existentes
que usan enable_serial_consent pueden seguir haciéndolo, pero
se recomienda que actualices el código para usar enable_granular_consent en
la próxima actualización de tu aplicación.
|
login_hint |
Opcional. Si la aplicación sabe qué usuario debe autorizar la solicitud, puede usar esta propiedad para proporcionarle a Google una sugerencia de acceso. Si se realiza correctamente, se omitirá la selección de cuenta. El valor del campo de dirección de correo electrónico o token de ID sub del usuario de destino.
Para obtener más información, consulta el campo login_hint en la documentación de OpenID Connect.
|
hd |
Opcional. Si tu aplicación conoce el dominio de Workspace al que pertenece el usuario, usa esto para proporcionar una sugerencia a Google. Si se realiza de forma correcta, las cuentas de usuario se limitan o preseleccionan para el dominio proporcionado.
Para obtener más información, consulta el campo hd en la documentación de OpenID Connect.
|
state |
Opcional. No se recomienda. Especifica cualquier valor de cadena que tu aplicación use para mantener el estado entre tu solicitud de autorización y la respuesta del servidor de autorización. |
error_callback |
Opcional. La función de JavaScript que controla algunos errores que no son de OAuth, como
no se pudo abrir la ventana emergente; o se cierra antes de que se genere una respuesta de OAuth
que se devuelven.
El campo `type` del parámetro de entrada proporciona el motivo detallado.
|
Tipo de datos: TokenClient
La clase solo tiene un método público requestAccessToken
, que inicia la
Flujo de UX de tokens de OAuth 2.0.
interface TokenClient {
requestAccessToken(overrideConfig?: OverridableTokenClientConfig): void;
}
Argumentos | ||
---|---|---|
overrideConfig |
OverridableTokenClientConfig | Opcional. Las configuraciones que se anularán en este método. |
Tipo de datos: OverridableTokenClientConfig
En la siguiente tabla, se enumeran las propiedades de OverridableTokenClientConfig
.
el tipo de datos.
Propiedades | |
---|---|
scope |
Opcional. Una lista delimitada por espacios de permisos que identifican los recursos a las que tu aplicación podría acceder en nombre del usuario. Estos valores informar la pantalla de consentimiento que Google mostrará al usuario |
include_granted_scopes |
Opcional; el valor predeterminado es true . Permite que las aplicaciones usen funciones
autorización para solicitar acceso a permisos adicionales en contexto. Si estableces
el valor de este parámetro en false y se otorga la solicitud de autorización, luego
El nuevo token de acceso solo cubrirá los permisos para los que scope solicitó
en esta OverridableTokenClientConfig .
|
prompt |
Opcional. Una lista de mensajes delimitados por espacios y que distinguen mayúsculas de minúsculas para presentar al usuario. |
enable_granular_consent |
Opcional; el valor predeterminado es true . Si la estableces como false , permisos más detallados de la Cuenta de Google
se inhabilitaría para los IDs de cliente de OAuth creados antes de 2019.Si se configuran enable_granular_consent y enable_serial_consent , solo enable_granular_consent
de esta función se aplicaría y se ignoraría el valor de enable_serial_consent .No hay efecto en los IDs de cliente de OAuth más recientes, ya que siempre se habilitan permisos más detallados para ellos. |
enable_serial_consent |
Este campo es obsoleto; en su lugar, debes usar enable_granular_consent . Esta
tiene el mismo efecto que enable_granular_consent . Aplicaciones existentes
que usan enable_serial_consent pueden seguir haciéndolo, pero
se recomienda que actualices el código para usar enable_granular_consent en
la próxima actualización de tu aplicación.
|
login_hint |
Opcional. Si la aplicación sabe qué usuario debe autorizar la solicitud, puede usar esta propiedad para proporcionarle a Google una sugerencia de acceso. Si se realiza correctamente, se omitirá la selección de cuenta. El valor del campo de dirección de correo electrónico o token de ID sub del usuario de destino.
Para obtener más información, consulta el campo login_hint en la documentación de OpenID Connect.
|
state |
Opcional. No se recomienda. Especifica cualquier valor de cadena que tu aplicación use para mantener el estado entre tu solicitud de autorización y la respuesta del servidor de autorización. |
Tipo de datos: TokenResponse
Se pasará un objeto TokenResponse
de JavaScript a tu método de devolución de llamada en
la UX de la ventana emergente.
En la siguiente tabla, se enumeran las propiedades del tipo de datos TokenResponse
.
Propiedades | |
---|---|
access_token |
El token de acceso de una respuesta de token correcta. |
expires_in |
La vida útil en segundos del token de acceso. |
hd |
Es el dominio alojado al que pertenece el usuario que accedió. |
prompt |
El valor de la instrucción que se usó de la lista posible de valores especificados por TokenClientConfig o OverridableTokenClientConfig. |
token_type |
El tipo de token emitido. |
scope |
Una lista delimitada por espacios de los permisos que aprobó el usuario. |
state |
El valor de cadena que usa tu aplicación para mantener el estado entre tu solicitud de autorización y la respuesta. |
error |
Un solo código de error ASCII. |
error_description |
Texto ASCII legible que proporciona información adicional y que se usa para ayudar al desarrollador cliente a comprender el error que se produjo. |
error_uri |
Un URI que identifica una página web legible por humanos con información sobre el error, que se usa para proporcionar información adicional sobre el error al desarrollador cliente. |
Método: google.accounts.oauth2.hasGrantedAllScopes
Verifica si el usuario otorgó todos los permisos especificados.
google.accounts.oauth2.hasGrantedAllScopes(
tokenResponse: TokenResponse,
firstScope: string, ...restScopes: string[]
): boolean;
Argumentos | ||
---|---|---|
tokenResponse |
TokenResponse
|
Obligatorio. Un objeto TokenResponse
.
|
firstScope |
string | Obligatorio. El alcance que se verificará. |
restScopes |
string[] | Opcional. Otros permisos para comprobar. |
Muestra | |
---|---|
boolean | Es verdadero si se otorgaron todos los alcances. |
Método: google.accounts.oauth2.hasGrantedAnyScope
Verifica si el usuario otorgó alguno de los permisos especificados.
google.accounts.oauth2.hasGrantedAnyScope(
tokenResponse: TokenResponse,
firstScope: string, ...restScopes: string[]
): boolean;
Argumentos | ||
---|---|---|
tokenResponse |
TokenResponse
|
Obligatorio. Un objeto TokenResponse
.
|
firstScope |
string | Obligatorio. El alcance que se verificará. |
restScopes |
string[] | Opcional. Otros permisos para comprobar. |
Muestra | |
---|---|
boolean | Es verdadero si se otorga alguno de los permisos. |
Método: google.accounts.oauth2.revoke
El método revoke
revoca todos los alcances que el usuario otorgó a la app.
Se requiere un token de acceso válido para revocar el permiso.
google.accounts.oauth2.revoke(accessToken: string, done: () => void): void;
Argumentos | ||
---|---|---|
accessToken |
string | Obligatorio. Un token de acceso válido. |
callback |
función | Opcional. RevocationResponse. |
Tipo de datos: RevocationResponse
Se pasará un objeto RevocationResponse
de JavaScript a tu método de devolución de llamada.
En la siguiente tabla, se enumeran las propiedades del tipo de datos RevocationResponse
.
Propiedades | |
---|---|
successful |
Booleano. true si se realiza de forma correcta y false si se produce un error. |
error |
String. Indefinido en caso de éxito. Un solo código de error ASCII. Esto incluye, entre otras, las APIs de OAuth estándar
Códigos de error de 2.0 Errores comunes del método revoke :
|
error_description |
String. Indefinido en caso de éxito. El texto ASCII legible proporciona información adicional sobre
error . Los desarrolladores pueden usar esta información para comprender
el error que se produjo. La cadena error_description solo está en inglés.
Para los errores comunes enumerados en error , el error_description correspondiente:
|