Как стать автором
Обновить

Аутентификация OAuth2 в приложении посредством Google Sign-In. Непрерывный доступ к API Google

Время на прочтение9 мин
Количество просмотров119K
Всего голосов 24: ↑24 и ↓0+24
Комментарии4

Комментарии 4

В блоге говорится, что и для Android и iOS и Windows не будет работать аутентификация через браузеры. Вот ссылка на запись в блоге.
Намного проще это всё делать через Authenticator из okhttp или Interceptor, кому что нравится. Таким образом запрос незаметно переписывается для консьюмера апи

Я так понимаю, что статья предназначена для авторизации сервера от имени клиента, т.е. на получение данных сервером, т.к. для авторизации клиента Google в приложении можно использовать Google ID token. И делается это намного проще, прямым запросом

mGoogleSignInClient = GoogleSignIn.getClient(this, gso);

Intent signInIntent = mGoogleSignInClient.getSignInIntent();

account = GoogleSignIn.getLastSignedInAccount(this);

googletoken = account.getIdToken();

Т.е. получаем ID токен напрямую в клиенте, без обмена токенами. Правда я не разобрался как принудительно ID токен обновить, он тоже действует один час. Его обновление возможно через silentsignin(), но как это сделать принудительно я пока не разобрался.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории