Expressjs-authentication
ExpressJS-認証
認証とは、提供された資格情報を、ローカルオペレーティングシステムまたは認証サーバー内の承認されたユーザーの情報のデータベースにあるファイル上の資格情報と比較するプロセスです。 資格情報が一致する場合、プロセスは完了し、ユーザーにはアクセスの許可が付与されます。
認証システムを作成するには、サインアップページとユーザーパスワードストアを作成する必要があります。 次のコードは、アカウントを作成してメモリに保存します。 これは、デモのみを目的としています。ユーザー情報の保存には、常に永続的なストレージ(データベースまたはファイル)を使用することをお勧めします。
サインアップフォームの場合、* signup.jade。*という新しいビューを作成します
SIGNUP.JADE
localhost:3000/signupにアクセスして、このページが読み込まれるかどうかを確認します。
両方のフィールドに必須属性を設定しているため、HTML5対応ブラウザーでは、IDとパスワードの両方を指定するまでこのフォームを送信できません。 ユーザーIDまたはパスワードなしでcurl要求を使用して登録しようとすると、エラーが表示されます。 次の内容を持つビューで protected_page.pug という新しいファイルを作成します-
このページは、ユーザーがサインアップまたはログインしたばかりの場合にのみ表示されます。 次に、そのルートと、ログインおよびログアウトするルートを定義しましょう-
ユーザーがサインインしているかどうかを確認するミドルウェア関数_checkSignIn_を作成しました。 protected_page はこの関数を使用します。 ユーザーをログアウトするには、セッションを破棄します。
ログインページを作成しましょう。 ビューに login.pug という名前を付けて、内容を入力します-
これで、簡単な認証アプリケーションが完成しました。アプリケーションをテストしましょう。 _nodemon index.js_を使用してアプリを実行し、localhost:3000/signupに進みます。
ユーザー名とパスワードを入力し、サインアップをクリックします。 詳細が有効/一意であれば、 protected_page にリダイレクトされます-
次に、アプリからログアウトします。 これにより、ログインページにリダイレクトされます-
このルートは保護されているため、認証されていないユーザーがアクセスしようとすると、ログインページにリダイレクトされます。 これはすべて基本的なユーザー認証についてでした。 永続セッションシステムを使用し、パスワード転送にハッシュを使用することを常にお勧めします。 JSONトークンを利用して、ユーザーを認証するより良い方法が今あります。