Выдача "appcfg.py -обновление oauth.- с несколькими счетами?


Я настроен OAuth для одной учетной записи у меня, my.first.email@gmail.com. Он отлично работает с Appengine app_ids я использую для этой учетной записи.

Как только я попытаюсь использовать его в приложении " foo " для другой учетной записи (скажем my.second.email@gmail.com ), однако система выдает мне ошибку (вполне ожидаемо):

$ appcfg.py --oauth2 update .
10:09 AM Host: appengine.google.com
10:09 AM Application: foo; version: 100
10:09 AM Starting update of app: foo, version: 100
10:09 AM Getting current resource limits.
10:09 AM Scanning files on local disk.
Error 404: --- begin server output ---
This application does not exist (app_id=u'foo').

Можно ли использовать OAuth для двух (или более) учетных записей с App Engine? Я хотел бы иметь возможность использовать OAuth одновременно для обоих счетах, может изменить из командной строки с двумя разными лексемами.

Спасибо, Риккардо

4 3

4 ответа:

Используйте команду gcloud для переключения между несколькими учетными записями.

Добавление новой учетной записи:

gcloud auth login

Завершить процесс входа в систему

Установка выше учетной записи по умолчанию(или просто переключение учетных записей):

 gcloud config set account username@gmail.com

Попробуйте использовать этот секретный параметр командной строки, чтобы appcfg.py:

appcfg.py --oauth2 --oauth2_credential_file=~/.appcfg_oauth2_tokens_personal update .

Нашел этот вариант, посмотрев на /usr/local/google_appengine/google/appengine/tools/appcfg.py это должно позволить вам использовать разные файлы учетных данных для разных учетных записей, вы можете использовать псевдоним команды, чтобы упростить ввод в оболочку.

Чтобы построить на @Ryu_hayabusa предложение , Добавьте это к вашему .bashrc или .bash_profile для более удобного переключения между учетными записями:

function gcauth() { email="$@"; gcloud config set account $email; echo "Updated GCloud auth to $email"; }

# set up functions for specific email addresses:
function gcwork() { gcauth work@email.com; }
function gcperso() { gcauth personal@email.com; }

Тогда вы можете очень легко переключаться между рабочим и личным аккаунтом, например:

$ gcwork
Updated GCloud auth to work@email.com
$ gcperso
Updated GCloud auth to personal@email.com

Если вы хотите перейти от входа клиента (который теперь окончательно устарел), просто обновите с --oauth2, и ваше приложение будет развернуто-

python appcfg.py update --oauth2 /path/to/app

Использование входа клиента приведет к следующей ошибке- Ошибка 404: - - - начать вывод сервера --- https://developers.google.com/accounts/docs/AuthForInstalledApps --- выход конечного сервера - - -