2011-10-03 14 views
27

PythonのGoogle App Engineアプリケーション(Googleのusers apiを使用するのではなく)の独自のログインシステムをロールしたいと思います。認証とログインのためのWebapp2

私はwebapp2を使用しており、webapp2_extras.authモジュールとincomplete auth tutorialがあることに気付きました。

誰もが私が作成するには、このAPIを使用する方法を知っています:

  • ユーザー登録(メールアドレスとパスワードを取る、おそらく電子メールを確認してください)
  • メールアドレスとパスワード
とユーザログイン

メールとパスワードを取得したら、どこに保管しますか? AuthStoreでは? AuthStoreの認証方法を教えてください。

+0

このブログ記事を確認することができます:[Google App Engineのwebapp2によるユーザー認証](http://blog.abahgat.com/2013/01/07/user-authentication-with-webapp2-on-google-app -エンジン/)。すでにwebapp2に含まれている機能を活用して、独自の認証レイヤーを構築するために必要な手順について説明します。エリックの答えにリンクされたコードを取得するために必要な手順を詳述しています。 (開示:私は当初、書類の不足を修正するためにその投稿を書いた) – abahgat

答えて

4

ユーザーの資格情報と情報を格納する方法と場所は、あなた次第です。参照しているwebapp2モジュールは、その機能を使用する場合に準拠しなければならないインタフェースを提供するだけです。明白な(おそらく賢明な)選択肢は、データストアです。

私は強く、強くお勧めします内蔵のOpenID supportを使用することをお勧めします。そうすることで、ユーザーはさらに別のユーザー名とパスワードを作成しなければならなくなり、パスワード記憶域とセキュリティの面倒な手間がかかります。

+1

私はあなたの答えに一般に同意します。私はopenID、facebook、google loginなどで、実際に[janrainのソーシャル・ログイン](http://www.janrain.com/products/engage/social-login)を実装しています。しかし、私はかなりの割合でopenID /ソーシャルログインに不快で不慣れなユーザーで、唯一のオプションが別のアカウントでサインインする場合は自分のサイトを使用しません。私の心配は正しいと思いますか? – zzz

+2

@EricGustavsonそれはあなたのユーザーベースに完全に依存します。あなたのサイトに新しいアカウントを作成することに不快な他のユーザーがいます。しかし、OpenIDとフェデレーションサインイン(facebookのような)はますます一般的になってきているので、これらのユーザーのために最適化するのは、IE6の場合と少し似ています。 –

+1

@NickJohnson - AppengineのOpenIDサポートを組み込んで、Facebookでうまく遊べるいい方法がありますか?より具体的には、OpenIDベースのログイン用に構築されたOpenIDを活用して、Facebookのログインを使用したい場合にFacebookのOAuth 2.0ベースのメカニズムを利用できる優れたソリューションを知っていますか?(それを見て、私の印象はOpenIDとOAuthの両方が必要な場合、自分の認証メカニズムを実際に動かす必要があるということでした)。 –

3

新しい質問:Google App Engineでwebapp2に独自の認証とログインを追加する場合は、Google App Engine Boilerplateと考える必要があります。

サインアップ、ログイン、ログアウト、パスワードリセット、フェデレーションログイン(Google、Twitter、Facebookなど)、ユーザープロフィールなどが実装されています。

Python 2.7、NDB、Jinja2、WTForms、unittest、webtest、pyquery、OpenID(Google App Engine)、OAuth2(OpenIDをサポートしていない連携ログインプロバイダ)などの技術が利用されています。

オンラインデモはhereです。

+0

あなたのオンラインデモリンクは死んでいます - これは残念です!それを見て良かったでしょうか。 – Fritz

+0

[**オンラインデモリンク**](http://appengine.beecoss.com/)がもう一度動作します。 – kjhughes

関連する問題