Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

155
Visualizações
Cómo utilizar las API de ámbito con (GSI) Google Identity Services

Google me envió recientemente un correo electrónico con lo siguiente:

Una o más de sus aplicaciones web utilizan la biblioteca de JavaScript de inicio de sesión de Google heredada. Migra tus proyectos al nuevo SDK de Google Identity Services antes del 31 de marzo de 2023

El proyecto en cuestión utiliza la API de Google Drive junto con el cliente de autenticación heredado.

La tabla en la página de migración ( https://developers.google.com/identity/gsi/web/guides/migration ) dice:

Antiguo Nuevo notas
Bibliotecas JavaScript
apis.google.com/js/plataforma.js cuentas.google.com/gsi/cliente Reemplace lo viejo con lo nuevo.
apis.google.com/js/api.js cuentas.google.com/gsi/cliente Reemplace lo viejo con lo nuevo.

Actualmente estaba usando gapi en el front-end para realizar la autorización que se carga desde apis.google.com/js/api.js . De acuerdo con la tabla, necesitaría reemplazarlo con la nueva biblioteca.

Intenté lo siguiente para autenticar y autorizar de la misma manera que solía hacerlo con gapi:

 window.google.accounts.id.initialize({ client_id: GOOGLE_CLIENT_ID, callback: console.log, scope: "https://www.googleapis.com/auth/drive.file", discoveryDocs: ["https://www.googleapis.com/discovery/v1/apis/drive/v3/rest"], }); window.google.accounts.id.renderButton(ref.current, { size: "medium", type: "standard", });

Sin embargo, cuando trato de autenticarme con el botón Iniciar sesión de Google, el campo de scope no se respeta y no le pide al usuario que autorice los alcances solicitados. Tampoco devuelve ninguna forma de token de acceso en la respuesta de credencial en la devolución de llamada.

No estoy seguro de qué otra forma autorizar el uso de la nueva biblioteca.

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

En los nuevos Google Identity Services, el momento de la autenticación y el momento de la autorización están separados. Esto significa que GIS proporciona diferentes API para que los sitios web llamen en estos dos momentos diferentes. Ya no puede combinarlos en una llamada API (y flujo UX).

En el momento de la autenticación, los usuarios simplemente inician sesión o se registran en su sitio web (aprovechando la información compartida por Google). La única decisión que deben tomar los usuarios es si desean iniciar sesión (o registrarse). No es necesario tomar ninguna decisión relacionada con la autorización en este momento.

En el momento de la autenticación, los usuarios verán One Tap o botón UX consistente en todos los sitios web (ya que los mismos alcances se solicitan implícitamente). La consistencia conduce a una UX más fluida, lo que puede conducir a un mayor uso. Con la experiencia de usuario de autenticación consistente y optimizada (en todos los sitios web), los usuarios tendrán una mejor experiencia con el inicio de sesión federado.

Después de que los usuarios inicien sesión, cuando realmente desee cargar algunos datos de un servicio de datos de Google, puede llamar a la API de autorización GIS para activar un flujo de UX para permitir que los usuarios finales concedan el permiso. Ese es el momento de la autorización.

Actualmente (agosto de 2021), solo se ha publicado la API de autenticación. Si su sitio web solo se preocupa por la autenticación, puede migrar a GIS ahora. Si también necesita la API de autorización, debe esperar un nuevo aviso.

about 4 years ago · Juan Pablo Isaza Relatório

0

Para agregar a la respuesta actual, ahora hay documentación sobre cómo autorizar usuarios con alcance adicional. De Uso del modelo de fichas .

Primero necesita iniciar un TokenClient:

 const client = google.accounts.oauth2.initTokenClient({ client_id: 'YOUR_GOOGLE_CLIENT_ID', scope: 'https://www.googleapis.com/auth/calendar.readonly', callback: (response) => { ... }, });

Luego solicita un token:

 client.requestAccessToken();

Si alguien está interesado en dónde se menciona en la documentación de migración, último párrafo de esta sección :

Si su caso de uso incluye autorización, lea Cómo funciona la autorización de usuario y Migrar a Google Identity Services para asegurarse de que su aplicación esté utilizando las API nuevas y mejoradas.

Si bien sus artículos son muy detallados y buenos, personalmente los encuentro un poco demasiado para mí, por lo que es más sencillo para mí simplemente seguir el primer artículo mencionado y no preocuparme en absoluto por las migraciones.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda