6

[この質問は、私の調査結果を把握し、それらの正気を確認するための手段として意図されています。回答の要約スイートを作成し、他の回答とコメントが表示されることを確認します。]

(python) Appengine のさまざまなソーシャル認証オプションについて理解するのに少し時間を費やしました。私は特に、Google が提供する認証メカニズムが他のソーシャル認証メカニズムとどのように相互作用できるかについて混乱しました。Google はサード パーティの OpenID プロバイダーと適切に統合されていますが、一部の最大のソーシャル ネットワークは OpenID プロバイダーではありません (たとえば、facebook、twitter)。[Facebook は OpenID を中継者として使用できますが、プロバイダーとしては使用できないことに注意してください]。

問題は次のとおりです。Appengine のソーシャル認証のさまざまなオプションと、それぞれの長所と短所は何ですか?

4

1 に答える 1

11

この質問に関する私の調査では、基本的に 3 つのオプションがあることがわかりました。

  1. Google の認証メカニズムを使用する (OpenID による連携ログインを含む)

    • 長所:
      • Appengine が提供するユーザー サービスを介して、誰がログインしているかを簡単に確認できます。
      • Google がセキュリティを処理するため、十分にテストされていることを確認できます
    • 短所:
      • これは、サードパーティの OpenID プロバイダーとのみ統合できます。現時点では、facebook/twitter と統合することはできません
  2. tipfy や django などの既知のフレームワークによって提供されるソーシャル認証メカニズムを使用する

    • 長所:
      • これらは、すべての主要なソーシャル認証サービスと統合できます
      • それらは非常に広く使用されているため、非常に堅牢で、十分にテストされている可能性があります
    • 短所:
      • それらはおそらく十分にテストされていますが、維持されていない可能性があります
      • それらは、アプリをデプロイする前に慣れる必要がある大きなフレームワークの一部として提供されます。
  3. 独自のソーシャル認証をロール

    • 長所:
      • OpenID と OAuth の好きなフレーバーを自由に組み合わせることができます。
    • 短所:
      • セキュリティホールを導入する可能性が最も高い
      • これらのテクノロジを使用した経験が少しない限り、これが最も時間がかかる可能性があります。

その他の注意事項:

  • 最終的には誰もが OpenID に移行し、標準の Google 認証がどこでも機能するようになる可能性があります。
  • 最初のオプションでは、認証に問題がある場合に Google を指摘できます。2 番目のオプションはより多くの責任を課しますが、問題が発生した場合に広く使用されているソリューションを使用していると言うことができ、最後のオプションではすべての責任が自分に課せられます。
  • ほとんどの問題はセッション管理に関連しています。ケース 1 では、Google がすべてのセッション管理を行っており、開発者にはほとんど見えません。ケース 2 では、セッション管理はフレームワークによって処理され、3 番目のケースでは、独自に工夫する必要があります。
于 2011-10-05T14:30:50.740 に答える