Passport.jsのBasic認証とDigest認証の違いを理解していますが、ローカル戦略とBasicまたはダイジェストの違いは何ですか? 3つすべてで、ユーザー名とパスワードを入力します。基本戦略はユーザーのタイプ&パスワード認証ですか?どうか明らかにしてください。PassportJsのローカル基本とダイジェスト戦略の違い
答えて
私が正しく理解していれば、Passport.jsのローカル、基本、およびダイジェスト戦略の違いは微妙ですが重要です。ここで荒廃です:
ローカル(passport-local)
パスポートのローカル戦略は、単純なユーザ名とパスワードの認証方式です。ユーザー名(または他の識別子)から特定のユーザーのパスワードを見つけ、一致するかどうかを確認します。ローカル戦略と他の2つの戦略の主な違いは、永続的なログインセッションの使用です。この戦略は、SSL/TLSで使用する必要があります。
基本(passport-http)
パスポートによって実現基本戦略は、一つ微妙な違いで、局所戦略とほとんど同じに見えます。基本的な戦略は、アーキテクチャがステートレスであるAPIエンドポイントで使用することです。その結果、セッションはではなく、である必要はありますが、使用できます。この戦略では、SSL/TLSも使用する必要があります。セッションフラグがそうように設定することができる。
app.get('/private', passport.authenticate('basic', { session: false }), function(req, res) {
res.json(req.user);
});
ダイジェストを(passport-http)
ダイジェスト戦略は、それがするように、特別なチャレンジ - 応答パラダイムを使用することで、他の2つの戦略よりも微妙に異なっていますパスワードをクリアテキストで送信しないでください。この戦略は、SSL/TLSが利用できない場合の良い解決策になります。 How to Authenticate APIs
注:すべての3つの戦略は、セッションサポートをオプションに
これは基本的な対ダイジェストに良い記事です。
注それは、ほとんどのアプリケーションで推奨されているが、セッションのサポートを有効にすると、完全にオプションであること:2パスポート-HTTP戦略はパスポートdocsはパスポートローカル戦略について、これを言うしながら、あなたはセッションフラグを設定することができます。
Passport Local戦略を使用している場合: - セッションが確立されているため、各リクエストでクレジットを送信する必要はありません。 - ユーザー名とパスワードは、デフォルトで "username"と "password"ヘッダーで提供されます。
Passport Basic/Digest戦略を使用している場合: - セッションは使用されないため、すべてのAPI呼び出しで資格情報を提供する必要があります。 - ユーザー名とパスワード/ハッシュは、「承認」ヘッダーに含まれています。
- 1. Passportjsローカル戦略が資格情報のエラーメッセージが表示されない
- 2. 戦略パターンと委任パターンの違い
- 3. デフォルト戦略の戦略パターン
- 4. JAXB2基本マージ可能プラグイン:カスタム設定戦略
- 5. OmniAuth Identity戦略とDeviseの違いは何ですか?
- 6. Javaでの基本とダイジェストのアクセス認証
- 7. NHibernateのデフォルトの子コレクションと基準戦略
- 8. データベースプルーニングの戦略
- 9. コンポーネントモデルとゲームデザインの戦略パターン
- 10. 分岐とマージの戦略
- 11. パスポート:名前とEメールアドレスでサインアップできますか? (ローカル戦略)
- 12. 単体テストでのPassport.js(ローカル戦略)の模擬
- 13. PHPを使用したサブドメインの戦略のための戦略
- 14. Symfony2の戦略パターン
- 15. Scalaでの戦略
- 16. MySQLのバックアップ戦略
- 17. PHPアンケートの戦略
- 18. Haskell desugaringの戦略
- 19. ASP.Netのキャッシュバスター戦略
- 20. 戦略パターンのバリエーション
- 21. アンドロイドのキャッシュ戦略
- 22. プールのガベージコレクション戦略
- 23. GPSのトラッキングアプリケーション(戦略)
- 24. 並列parMapと戦略
- 25. mysqlテーブルと削除戦略
- 26. 遺伝的アルゴリズムと進化戦略の違いは何ですか?
- 27. 従来のアプリケーション移行戦略 - 戦略に必要なアドバイス
- 28. データベースシャーディング戦略
- 29. Nhibernateフェッチ戦略
- 30. solrインデックス戦略
"基本的な戦略は、アーキテクチャがステートレスであるAPIエンドポイントで使用することです" - ステートレスとはどういう意味ですか?いくつか例を挙げることができますか?もし私が正しいことを理解していれば、ローカル戦略はちょうど「セッションごとに一時変数を保存するなど、ユーザーセッションを既にサポートしている場合は、そのセッションをすでに識別しており、毎回ユーザー名とパスワードを送信するのは無意味です" – Oren
基本的な戦略では、認証に 'authentication'ヘッダを使用しています。https://github.com/jaredhanson/passport-http/blob/master/lib/passport-http/strategies/basic.js#L68 – Vadim
@Vadim Thanks !! !あなたの人生を救います:) –