Как справиться с барьером «Приложение временно заблокировано для входа в вашу учетную запись Google»
Я использую gdrive и gshell , чтобы взаимодействовать с моей учетной записью Google и загружать файлы, получать их информацию.
Когда я бегу:
gdrive about
или же
gdown about
, Я получаю следующее сообщение
Initializing system (/home/user/.gdrive)
Authentication needed
Go to the following url in your browser:
https://accounts.google.com/o/oauth2/auth?access_type=offline&client_id=...... \
apps.googleusercontent.com&redirect_uri=....
Enter verification code:
Впоследствии я продолжаю получать следующее сообщение об ошибке, когда вставляю URL-адрес, начинающийся с
https://accounts.google.com/o/oauth2/auth?access_type=offline&client_id=
в моем браузере:
This app is temporarily blocked from logging in with your Google account
.
==> Эта ошибка не создавалась раньше, и я смог получить
verification code
, чтобы использовать для подключения к моей учетной записи.
Можно ли преодолеть этот барьер Google, чтобы использовать
gdrive
или же
gdown
?
Пример сгенерированного token.json после вставки проверочного кода.
"access_token": ".....",
"token_type": "Bearer",
"refresh_token": "1/....",
"expiry": "2020-12-21T02:..."
}
1 ответ
Комментарий @tellowkrinkle помог мне решить проблему.
Возможно - да. У меня есть старый двоичный файл, и Google блокирует его аутентификацию, говоря, что это опасно, и они заблокировали его для моей безопасности (большое спасибо). Похоже, теперь Google требует, чтобы вы разрешили им просматривать приложения, которые хотят получать доступ к конфиденциальной информации через их API.
Если вы хотите использовать его для себя, вам необходимо:
- Зайдите на https://console.developers.google.com и создайте для себя новый проект
- Найдите API Google Диска в поле поиска вверху и включите его.
- Нажмите на экран согласия OAuth слева и настройте его.
- Предполагая, что ваша учетная запись не является частью организации, вы должны будете сказать, что ваше приложение предназначено для внешних пользователей и находится в стадии тестирования.
- В разделе требуемых областей добавьте ... / auth / docs и ... / auth / drive (я не уверен, что нужно, вероятно, это только один из них). Вероятно, это будет недоступно, если вы не заполнили (2)
- Добавьте учетные записи, которые вы хотите использовать с вашей копией gdrive, в качестве тестеров вашего приложения. Только эти учетные записи смогут использовать вашу копию gdrive, поэтому каждому придется скомпилировать свою собственную (если только кто-то не пойдет и не отправит свою копию на проверку в Google)
- Нажмите «Учетные данные» слева, затем «Создать учетные данные», затем «Идентификатор клиента OAuth». Тип приложения - настольное приложение.
- Скопируйте Client ID и Secret в строки 17 и 18 handlers_drive.go и скомпилируйте приложение.
$ git clone https://github.com/prasmussen/gdrive.git
$ cd gdrive
$ nano handlers_drive.go
# Copy the Client ID and Secret into handlers_drive.go lines 17 and 18 and compile the application
$ mv ~/.gdrive/token_v2.json ~/.gdrive/token_v2.json.old
$ go get github.com/prasmussen/gdrive
$ go build -ldflags "-w -s"
$ cp gdrive $GOPATH/bin/gdrive
$ gdrive about
Go to the following url in your browser:
https://accounts.google.com/o/oauth2/auth?access_type=.....
Enter verification code:
Гид: