En esta referencia, se 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 las 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 la autorización incremental para solicitar acceso a permisos adicionales en el contexto. Si estableces el valor de este parámetro en false y se otorga la solicitud de autorización, el nuevo token de acceso solo abarcará los permisos a los que solicitó scope en este CodeClientConfig .
|
redirect_uri
|
Es obligatorio para la UX de redireccionamiento. Determina a dónde redirecciona el servidor de la API al usuario después de que completa el flujo de autorización. El valor debe coincidir exactamente con uno de los URIs de redireccionamiento autorizados para el cliente de OAuth 2.0 que configuraste en la Consola de la API y debe cumplir con nuestras reglas de validación de URIs de redireccionamiento. La UX emergente ignorará la propiedad. |
callback |
Obligatorio para la UX de la ventana emergente. Es la función de JavaScript que controla la respuesta del 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 use tu aplicación para mantener el estado entre tu solicitud de autorización y la respuesta del servidor de autorización. |
enable_granular_consent |
Obsoleto, no tiene efecto si se establece. Consulta Permisos detallados para obtener detalles sobre el comportamiento del consentimiento. |
enable_serial_consent |
Obsoleto, no tiene efecto si se establece. Consulta Permisos detallados para obtener detalles sobre el comportamiento del consentimiento. |
login_hint |
Opcional. Si tu aplicación sabe qué usuario debe autorizar la solicitud, puede usar esta propiedad para proporcionar una sugerencia de acceso a Google. Si se realiza correctamente, se omite la selección de la cuenta. El valor del campo sub de la dirección de correo electrónico o el token de ID del usuario objetivo
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, úsalo para proporcionar una sugerencia a Google. Si se realiza correctamente, las cuentas de usuario se limitan o se 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. Es 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, el valor predeterminado es 'false'. Es un valor booleano para solicitarle al usuario que seleccione una cuenta. |
error_callback |
Opcional. La función de JavaScript que controla algunos errores que no son de OAuth, como que no se abre la ventana emergente o que se cierra antes de que se muestre una respuesta de OAuth.
El campo "type" del parámetro de entrada proporciona el motivo detallado.
|
Tipo de datos: CodeClient
La clase solo tiene un método público, requestCode, que inicia el flujo de UX de código de OAuth 2.0.
interface CodeClient {
requestCode(): void;
}
Tipo de datos: CodeResponse
Se pasará un objeto JavaScript CodeResponse
a tu método callback
en la UX de la ventana emergente. En la UX de redireccionamiento, CodeResponse
se pasará como parámetros de URL.
En la siguiente tabla, se enumeran las propiedades del tipo de datos CodeResponse
.
Propiedades | |
---|---|
code |
Es el código de autorización de una respuesta correcta del token. |
scope |
Una lista de permisos delimitados por espacios que el usuario aprobó. |
state |
Es el valor de cadena que usa tu aplicación para mantener el estado entre la solicitud de autorización y la respuesta. |
error |
Un solo código de error ASCII. |
error_description |
Es un texto ASCII legible por humanos que proporciona información adicional para ayudar al desarrollador cliente a comprender el error que se produjo. |
error_uri |
Es un URI que identifica una página web legible por humanos con información sobre el error, que se usa para proporcionarle al desarrollador cliente información adicional sobre el error. |
Método: google.accounts.oauth2.initTokenClient
El método initTokenClient
inicializa y muestra un cliente de tokens, con las 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. Es la función de JavaScript que controla la respuesta del token que se muestra. |
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 la autorización incremental para solicitar acceso a permisos adicionales en el contexto. Si estableces el valor de este parámetro en false y se otorga la solicitud de autorización, el nuevo token de acceso solo abarcará los permisos a los que solicitó scope en este TokenClientConfig .
|
prompt |
Opcional, el valor predeterminado es 'select_account'. Es una lista de instrucciones delimitadas por espacios que se le presenta al usuario y que distingue mayúsculas de minúsculas. Los valores posibles son los siguientes:
|
enable_granular_consent |
Obsoleto, no tiene efecto si se establece. Consulta Permisos detallados para obtener detalles sobre el comportamiento del consentimiento. |
enable_serial_consent |
Obsoleto, no tiene efecto si se establece. Consulta Permisos detallados para obtener detalles sobre el comportamiento del consentimiento. |
login_hint |
Opcional. Si tu aplicación sabe qué usuario debe autorizar la solicitud, puede usar esta propiedad para proporcionar una sugerencia de acceso a Google. Si se realiza correctamente, se omite la selección de la cuenta. El valor del campo sub de la dirección de correo electrónico o el token de ID del usuario objetivo
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, úsalo para proporcionar una sugerencia a Google. Si se realiza correctamente, las cuentas de usuario se limitan o se 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 use tu aplicación 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 que no se abre la ventana emergente o que se cierra antes de que se muestre una respuesta de OAuth.
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 el flujo de UX de tokens de OAuth 2.0.
interface TokenClient {
requestAccessToken(overrideConfig?: OverridableTokenClientConfig): void;
}
Argumentos | ||
---|---|---|
overrideConfig |
OverridableTokenClientConfig | Opcional. Son las configuraciones que se anularán en este método. |
Tipo de datos: OverridableTokenClientConfig
En la siguiente tabla, se enumeran las propiedades del tipo de datos OverridableTokenClientConfig
.
Propiedades | |
---|---|
scope |
Opcional. Una lista de alcances delimitados por espacios que identifican los recursos a los que puede acceder tu aplicación 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 la autorización incremental para solicitar acceso a permisos adicionales en el contexto. Si estableces el valor de este parámetro en false y se otorga la solicitud de autorización, el nuevo token de acceso solo abarcará los permisos a los que solicitó scope en este OverridableTokenClientConfig .
|
prompt |
Opcional. Es una lista de instrucciones delimitadas por espacios que distingue mayúsculas de minúsculas para presentarle al usuario. |
enable_granular_consent |
Obsoleto, no tiene efecto si se establece. Consulta Permisos detallados para obtener detalles sobre el comportamiento del consentimiento. |
enable_serial_consent |
Obsoleto, no tiene efecto si se establece. Consulta Permisos detallados para obtener detalles sobre el comportamiento del consentimiento. |
login_hint |
Opcional. Si tu aplicación sabe qué usuario debe autorizar la solicitud, puede usar esta propiedad para proporcionar una sugerencia de acceso a Google. Si se realiza correctamente, se omite la selección de la cuenta. El valor del campo sub de la dirección de correo electrónico o el token de ID del usuario objetivo
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 use tu aplicación 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 JavaScript TokenResponse
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 |
Es el token de acceso de una respuesta de token correcta. |
expires_in |
Es la duración en segundos del token de acceso. |
hd |
El dominio alojado al que pertenece el usuario que accedió |
prompt |
Es el valor de la solicitud que se usó de la lista posible de valores especificados por TokenClientConfig o OverridableTokenClientConfig. |
token_type |
Es el tipo de token emitido. |
scope |
Una lista de permisos delimitados por espacios que el usuario aprobó. |
state |
Es el valor de cadena que usa tu aplicación para mantener el estado entre la solicitud de autorización y la respuesta. |
error |
Un solo código de error ASCII. |
error_description |
Es un texto ASCII legible por humanos que proporciona información adicional para ayudar al desarrollador cliente a comprender el error que se produjo. |
error_uri |
Es un URI que identifica una página web legible por humanos con información sobre el error, que se usa para proporcionarle al desarrollador cliente información adicional sobre el error. |
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 debe verificar. |
restScopes |
string[] | Opcional. Otros permisos que debes verificar. |
Muestra | |
---|---|
booleano | Es verdadero si se otorgan todos los permisos. |
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 debe verificar. |
restScopes |
string[] | Opcional. Otros permisos que debes verificar. |
Muestra | |
---|---|
booleano | Es verdadero si se otorga alguno de los permisos. |
Método: google.accounts.oauth2.revoke
El método revoke
revoca todos los permisos que el usuario otorgó a la app. Para revocar el permiso, se requiere un token de acceso válido.
google.accounts.oauth2.revoke(accessToken: string, done: () => void): void;
Argumentos | ||
---|---|---|
accessToken |
string | Obligatorio. Un token de acceso válido. |
callback |
función | Opcional. Controlador RevocationResponse. |
Tipo de datos: RevocationResponse
Se pasará un objeto JavaScript RevocationResponse
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 en caso de éxito, false en caso de error. |
error |
String. No se define si se realiza correctamente. Un solo código de error ASCII. Esto incluye, sin limitaciones, los códigos de error estándar de OAuth 2.0. Errores comunes del método revoke :
|
error_description |
String. No se define si se realiza correctamente. El texto ASCII legible por humanos proporciona información adicional sobre la propiedad error . Los desarrolladores pueden usar esto para comprender mejor el error que se produjo. La cadena error_description solo está disponible en inglés.
Para los errores comunes que se enumeran en error , se incluye el error_description correspondiente:
|