私のアプリには、管理者のみがログインしてアプリの設定を変更できるページが 1 つあります。問題は、私が複数の Google アカウントを持っていることです。そのため、gmail などのログインしている他のアカウントを使用すると、管理ページにアクセスすると、ブラウザに次のように表示されます。
Error: Forbidden
Your client does not have permission to get URL from this server.
ログインしたユーザーを変更して再度ログインする機会はありません。Google はアプリ間でユーザー ログイン Cookie を共有しているようです。
私の質問は、ユーザーが現在のログイン ユーザーを変更できるようにするページをどのように提供できるかということです。
私はパイソンを使用しています。
私自身の解決策:
app.yaml に login:admin がある場合、GAE はページ ハンドラーの get メソッドに移動せずにページを上記のエラーにリダイレクトします。したがって、app.yaml login:admin 設定を使用しないでください。
if users.is_current_user_admin():
# normal code
else:
self.redirect("http://admin.google.com")
次に、次のページでユーザーがアカウントを変更できるようにします。