Как я могу получить токен и одновременно скрыть учетные данные API для Google Drive? - PullRequest
0 голосов
/ 21 марта 2020

Я пишу настольное приложение на Google Диске и использую OAuth 2 для получения учетных данных. Я могу получить кредиты только за чтение, но не за изменение файлов. Так как это настольное приложение, сайта нет. В https://developers.google.com/identity/protocols/oauth2/native-app написано, что мне нужно «предоставить локальный URI перенаправления для обработки ответов от сервера авторизации Google». Итак, должен ли клиент также быть сервером и прослушивать локальный порт? Если я хочу, чтобы приложение было проверено, мне нужно предоставить Авторизованные домены и другие вещи, но это опять-таки приложение для ПК. Или, может быть, есть способ разрешить пользователям использовать приложение, но с предупреждением на экране согласия, например, в целях разработки. Также как скрыть учетные данные, которые я использую для получения токена? Если я опубликую sh приложение с учетными данными, каждый может просто украсть их и использовать

1 Ответ

0 голосов
/ 31 марта 2020

Чтобы разработать настольное приложение, которое будет использовать Drive API , вам нужно будет использовать учетные данные типа web app, для которых вы позже предоставите соответствующий redirect URI.

Используя OAuth 2.0 в своем приложении, вы единственный, кто имеет доступ к учетным данным для приложения - если вы не предоставили им доступ.

В соответствии с документацией Google OAuth 2.0 :

Вы начинаете с получения учетных данных клиента OAuth 2.0 от Google API Console. Затем ваше клиентское приложение запрашивает токен доступа у Google Authorization Server, извлекает токен из ответа и отправляет токен на Google API, к которому вы хотите получить доступ.

Для процесса входа в систему: когда пользователи войдут в ваше приложение, они будут использовать свои собственные учетные данные , а затем им придется авторизовать приложение, которое вы создали, чтобы иметь возможность использовать Drive API .

Ссылка

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...