1

Actuellement, lorsqu'une application iOS est créée pour l'authentification Google, elle génère uniquement un ID client.Nécessité d'activer l'accès côté serveur pour l'application IOS

À la fin d'iOS, j'utilise les ID client des applications (IOS et WEb) pour authentifier l'utilisateur et générer le jeton d'actualisation. Selon la documentation de Google, le jeton d'accès généré est de courte durée. Donc, chaque fois que nous avons besoin de re-générer le jeton d'accès d'un utilisateur, à la fin du serveur, nous utilisons l'id-client et le secret-client de l'application Web. Mais, chaque fois que j'essaie de générer un nouveau jeton d'accès avec le jeton de rafraîchissement, client-id (application web) et client-secret (web-app), il donne une erreur "client non autorisé" ce qui signifie que le rafraîchissement Le jeton n'est pas synchronisé avec Client-ID et Client-Secret. Veuillez me faire savoir la combinaison de client-id et de client-secret que je devrais employer à l'extrémité de serveur pour re-générer access_token de l'utilisateur. Aussi, quelqu'un peut-il me guider sur les étapes pour générer l'application iOS et l'application web qui peut être utilisée pour générer le jeton d'actualisation tout en authentifiant l'utilisateur.

Répondre

1

Le jeton d'actualisation est limité à un client/une application spécifique. Vos applications iOS et Web ont des ID clients différents, de sorte que le jeton d'actualisation de l'un ne peut pas être utilisé par l'autre. Du côté du client iOS, seul l'ID du client et le jeton d'actualisation (initialement attribué au même client) sont nécessaires pour obtenir un nouveau jeton d'accès (pour le même client iOS). Il n'y a pas de secret client pour le client iOS. Si vous utilisez Google Sign-In iOS SDK, cela est géré automatiquement pour vous.

Si vous souhaitez que votre côté client transmette l'utilisateur de connexion à votre serveur principal, voir https://developers.google.com/identity/sign-in/ios/backend-auth.

Si votre serveur principal également besoin d'un jeton d'accès lui-même, mis en place un accès côté serveur comme dans: https://developers.google.com/identity/sign-in/ios/offline-access