2011-10-03 2 views
27

Google의 users api 대신 python Google App Engine 애플리케이션 용 로그인 시스템을 롤백하고 싶습니다.인증 및 로그인을위한 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에 이미 포함 된 기능을 활용하여 자체 인증 계층을 구축하기 위해 취해야 할 단계에 대해 설명합니다. 그것은 Eric의 대답에서 링크 된 코드를 작동시키는 데 필요한 절차를 상세하게 설명합니다. (공개 : 나는 처음에 문서의 부족을 고치려고 게시물을 작성했다) – abahgat

    답변

    4

    사용자 인증 정보 및 정보를 저장하는 방법 및 위치는 전적으로 사용자가 결정합니다. 참조하는 webapp2 모듈은 해당 기능을 사용하려는 경우 준수해야하는 인터페이스 만 제공합니다. 확실한 (아마도 합리적인) 선택은 데이터 저장소 일 것입니다.

    나는 자신의 롤링 대신 OpenID support에 내장 된 것을 사용하는 것이 강력하게 권장됩니다. 그렇게 함으로서 사용자는 또 다른 사용자 이름과 암호를 만들게되고, 암호 저장과 보안 번거 로움을 스스로 해결하게됩니다.

    +1

    나는 일반적으로 당신의 대답에 동의합니다. 실제로 openID, facebook, google login 등으로 [janrain의 소셜 로그인] (http://www.janrain.com/products/engage/social-login)을 이미 구현했습니다. 그러나 나는 상당한 비율의 openID/소셜 로그인에 불편하거나 익숙하지 않은 사용자, 유일한 옵션 인 다른 계정으로 로그인하는 경우 내 사이트를 사용하지 않는 사용자. 내 관심사가 유효하다고 생각하니? – zzz

    +2

    @EricGustavson 전적으로 귀하의 사용자에 달려 있습니다. 사이트에 새 계정을 만드는 데 불편한 사용자가 있습니다. 하지만 OpenID와 통합 로그인 (예 : 페이스 북)이 점점 더 보편화되고 있기 때문에 이러한 사용자를 위해 최적화하는 것이 IE6에 대한 최적화와 조금 비슷합니다. –

    +1

    @NickJohnson - appengine OpenID 지원 기능이 내장 된 멋진 방법이 있나요? 좀 더 구체적으로 말하자면, OpenID 기반 로그인을 위해 OpenID에 내장 된 유용한 솔루션을 알고 있으며, 사용자가 페이스 북 로그인을 사용하려는 경우 페이스 북의 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