この記事では、角度アプリケーションに認証を追加する方法を示し、不正アクセスから特定のセクションを保護します。 これは、Angular CLIを使用したCRUDアプリの構築に関するSitePoint Angular 2チュートリアルのパート5です。
このチュートリアルは以前の部分に基づいていますが、
で提供されるパート4コードから始めることができます。 このパートの関連コードは、。としてタグ付けされています。
part-5
このセクションでは、クライアント側のセッション管理にはAngular 2およびJSON Webトークン(JWTS)を使用しています。 バックエンド(および
を使用)は、認証要求を処理し、トークンを検証します。専用のAngularサービス(は、ユーザー認証のためのリアクティブなフォームを備えており、ルートガード(json-server
)が不正なルートアクセスを防ぎます。 body-parser
は、安全なAPI通信の認可ヘッダーにJWTを含めるように構成されています。 最後に、AuthService
のサインアウト機能により、ユーザーはセッションを終了できます。
SessionService
SignInComponent
セットアップ:CanActivate
ApiService
TodosComponent
最新の角度CLIがあることを確認してください:
(以前のバージョンを削除するにはを使用してください)
リポジトリのクローン、パート4をチェックアウトし、依存関係をインストールしてください:
npm install -g @angular/cli@latest
。npm uninstall -g @angular/cli angular-cli; npm cache clean; npm install -g @angular/cli@latest
でアプリにアクセスします
実装:
git clone git@github.com:sitepoint-editors/angular-todo-app.git cd angular-todo-app git checkout part-4 npm install ng serve
、認証とセッションサービスの作成、http://localhost:4200
の構築、ルートガードの実装、APIリクエストでユーザートークンの送信をカバーしています。 🎜>
)は、トークン検証に基づいてサインインリクエストを処理し、ルートを保護します。 にはメソッドが含まれています。
セッションデータ(トークンとユーザー名)を保存します。は、ユーザー入力にリアクティブフォームを使用します。 ApiService
ガードはルートを保護し、SignInComponent
はリクエストヘッダーでトークンを送信します。 サインアウトボタンが
に追加されます
json-server.js
ApiService
signIn
SessionService
SignInComponent
認証戦略(JWTS):CanActivate
ApiService
チュートリアルでは、クライアント側のセッション管理にJWTSを採用しており、Cookieを使用したサーバー側のセッション管理とは対照的です。 JWTSはクライアント側に保存され、必要に応じてサーバーに送信されます。
チャレンジ:
この課題には、またはsessionStorage
。
localStorage
この記事は、Angular 2認証、フォーム検証、ユーザー認証の実装、Angular CLIの役割、取り扱いエラー、テスト、およびLoginradius CLIの使用をカバーするFAQセクションで終了します。 この改訂された出力は、元の画像とその形式を維持しながら、コンテンツを言い換えて擬似原産性を実現します。 コア情報は同じままですが、文言と文の構造は変更されています。
以上がAngular 2認証:プライベートコンテンツの保護の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。