0

フラスコベースのWebアプリケーションをGAEでホストしたいと思います。GAEアプリケーション内でOAuthとGAEのユーザーAPIを使用する

普通のユーザーは、flask-oauthlibを使用してGoogleに対して認証されています。それは、とりわけ、users.is_current_user_admin()提供するので、

しかし、私は、GAEのUsers APIを使用して管理ユーザーを認証したいと思います。

しかし、次のような構成が有効ではありませんので、私は、app.yamlからadmin地域を守ることができないようです。

# app.yaml 
[...] 
handlers: 
# For admin users 
# THIS IS INVALID! 
- url: /admin 
    login: admin 

# For regular users 
- url: /.* 
    script: main.app 

オプション1:同じで別のフラスコappオブジェクトを作成します。 GAEアプリケーション:

# app.yaml 
[...] 
# For admin users 
- url: /admin 
    script: admin.app 
    login: admin 

これは良い方法ですか?そうでない場合、なぜですか?


オプション2:GAEのユーザーAPIに依存しない、ある

def is_admin(): 
    return current_user.email in ["[email protected]", "[email protected]", "[email protected]"] 

だけのような機能を実装します。


注:

  • 少数の管理者ユーザーが
  • がある私は、任意の考え(他のソリューション)瞬間

できめ細かな役割を必要としませんか?

答えて

1

私は私の非フラスコアプリでこのような混合ログインを持っている、と私のハンドラは次のようになります。管理者のための別のアプリを持っている

handlers: 
- url: /admin 
    script: main.app 
    login: admin 

- url: /.* 
    script: main.app 

必要はありません。私はフラスコがどのように機能するのかわかりませんが、これもあなたのために働くと思います。

+0

ありがとうございます!私はあなたwebapp2を使用すると思います。これは正しいです? –

+0

@ user6770522、はい、私はwebapp2を使用しています。 –

関連する問題