Angularでサーバー側のセッション変数を生成するにはどうすればよいですか?

ウェイリーズ

私はjzに自分のAngularアプリケーションへのちょっとしたハックを完了させました。まず、PUBLIC、MEMBER、ADMINアクセスロールを使用したメニューナビゲーションのリストがあります。ログイン時に、PUBLICリンクとMEMBERリンクを表示できるユーザーにロール「MEMBER」を保存しました。(Chromeを使用)しかし後で私はオンにします

Developer Tools > Application > Storage > Session Storage

'role'変数を 'MEMBER'から 'ADMIN'に操作すると、秘密の管理者リンクを表示できます。

これはコーディング構造の問題ではなく、「セッション変数を安全な方法で保存する方法」です。その前は、PHPのセッション変数は「セッションストレージ」と同等だと思っていました。コミュニティでは、SESSIONはユーザーhttps://stackoverflow.com/a/6912409/8163746で変更できないと言っています

次に、サーバー側とクライアント側の2種類のセッションがあることを学びました。標準のAngularアプリの場合、「メール」、「役割」のような取引を保存するための最良の方法は何ですか?それでもユーザーが変更することはできませんか?セッションでそれらが必要な理由は、簡単に呼び出すことができるからです。

Role - Show/Hide navigation menu items
Email - to perform SQL filter, SELECT fields FROM Record WHERE email=Session.Email

アドバイスをありがとう。

ダビデ

ブラウザ上のすべては、ユーザーが変更できます。したがって、アクションを実行する前に、サーバーで選択したセッションメカニズムも検証する必要があります。

たとえば、Json Web Token(JWT)を使用できます。

  1. APIを使用してログインすると、APIは安全なトークンを生成し、認証が成功するとクライアントに送信されます。その安全なトークンは暗号化されており、ユーザーIDや役割などの情報を含めることができます。

  2. その後、そのトークンはブラウザに保存されます(ローカルストレージ、セッションストレージ、またはCookieのいずれかに)。Cookieは最も安全なオプションであり、認証がAngularUniversalで機能することを可能にします

  3. トークンは各API呼び出しに沿って渡されます。Cookieを使用している場合、Cookieは自動的に渡されます。ローカルストレージまたはセッションストレージを使用している場合は、を作成しHttpInterceptorてトークンをリクエストに追加できます

  4. 次に、APIは、アクションを実行する前に、トークンが有効であり、ユーザーロールであることを検証します。

したがって、クライアント側でユーザーロールを保存し、クライアントがそのロールを変更した場合でも、アクションはAPI側で実行されません。これが最も重要です。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Ruby on Rails:サーバー側のRedisからすべてのセッションデータを取得するにはどうすればよいですか?

分類Dev

セッション変数のNULLをチェックする以外に、Webサービスを保護するにはどうすればよいですか?

分類Dev

Angular Wayの例でAngularDataTablesのサーバー側オプションを使用するにはどうすればよいですか?

分類Dev

Visual Studio Codeの左側のサイドバーからセクションを削除するにはどうすればよいですか?

分類Dev

REST APIを使用してOpenTokセッションのサブスクライバーの数を取得するにはどうすればよいですか?

分類Dev

アクションバーの右側にimageviewを追加するにはどうすればよいですか?

分類Dev

サーブレットでセッション変数を設定してJSPで取得するにはどうすればよいですか?

分類Dev

セッション変数の値を取得してコントローラー変数に設定するにはどうすればよいですか?

分類Dev

PHPで特定のセッション変数を破棄するにはどうすればよいですか?

分類Dev

Symfony2のすべてのコントローラーにセッション変数を設定するにはどうすればよいですか?

分類Dev

PHPユーザーの詳細(セッション)をNode.jsサーバーに解析するにはどうすればよいですか?

分類Dev

PHPユーザーの詳細(セッション)をNode.jsサーバーに解析するにはどうすればよいですか?

分類Dev

すべてのアセットのバリエーションファイルを生成するにはどうすればよいですか

分類Dev

Djangoセッション変数をデータベースとの間で保存および取得するにはどうすればよいですか?

分類Dev

Angularでのスクロールのヘッダーセクションを変更するにはどうすればよいですか?

分類Dev

アクションバーの右側にあるバックプレスボタンを有効にするにはどうすればよいですか?

分類Dev

サービスオブジェクトからセッション変数を作成/更新するにはどうすればよいですか?

分類Dev

プログラムですべてのビューに同じセッション変数を設定するにはどうすればよいですか?

分類Dev

javascript変数をphpセッション変数に保存するにはどうすればよいですか?

分類Dev

phpを使用して別のページのセッション変数にアクセスするにはどうすればよいですか?

分類Dev

固定サイドナビゲーションバーをhtml / cssの右側に移動するにはどうすればよいですか?

分類Dev

サーバーの文字セットを変更するにはどうすればよいですか?

分類Dev

ユーザーのセッションの間、ページモデルクラス変数を維持するにはどうすればよいですか?

分類Dev

最後のセッションが存在した後、tmuxサーバーを実行したままにするにはどうすればよいですか?

分類Dev

Lotus DominoOSGIサーブレットからサーバーセッションを取得するにはどうすればよいですか。

分類Dev

Firefoxのデバイス間で「セッションマネージャ」セッションを同期するにはどうすればよいですか?

分類Dev

Androidでアクションバーの色を変更するにはどうすればよいですか?

分類Dev

Rセッション内のRパッケージの内部変数を表示するにはどうすればよいですか?

分類Dev

2つの異なるテーブルからセッション変数を取得するにはどうすればよいですか?

Related 関連記事

  1. 1

    Ruby on Rails:サーバー側のRedisからすべてのセッションデータを取得するにはどうすればよいですか?

  2. 2

    セッション変数のNULLをチェックする以外に、Webサービスを保護するにはどうすればよいですか?

  3. 3

    Angular Wayの例でAngularDataTablesのサーバー側オプションを使用するにはどうすればよいですか?

  4. 4

    Visual Studio Codeの左側のサイドバーからセクションを削除するにはどうすればよいですか?

  5. 5

    REST APIを使用してOpenTokセッションのサブスクライバーの数を取得するにはどうすればよいですか?

  6. 6

    アクションバーの右側にimageviewを追加するにはどうすればよいですか?

  7. 7

    サーブレットでセッション変数を設定してJSPで取得するにはどうすればよいですか?

  8. 8

    セッション変数の値を取得してコントローラー変数に設定するにはどうすればよいですか?

  9. 9

    PHPで特定のセッション変数を破棄するにはどうすればよいですか?

  10. 10

    Symfony2のすべてのコントローラーにセッション変数を設定するにはどうすればよいですか?

  11. 11

    PHPユーザーの詳細(セッション)をNode.jsサーバーに解析するにはどうすればよいですか?

  12. 12

    PHPユーザーの詳細(セッション)をNode.jsサーバーに解析するにはどうすればよいですか?

  13. 13

    すべてのアセットのバリエーションファイルを生成するにはどうすればよいですか

  14. 14

    Djangoセッション変数をデータベースとの間で保存および取得するにはどうすればよいですか?

  15. 15

    Angularでのスクロールのヘッダーセクションを変更するにはどうすればよいですか?

  16. 16

    アクションバーの右側にあるバックプレスボタンを有効にするにはどうすればよいですか?

  17. 17

    サービスオブジェクトからセッション変数を作成/更新するにはどうすればよいですか?

  18. 18

    プログラムですべてのビューに同じセッション変数を設定するにはどうすればよいですか?

  19. 19

    javascript変数をphpセッション変数に保存するにはどうすればよいですか?

  20. 20

    phpを使用して別のページのセッション変数にアクセスするにはどうすればよいですか?

  21. 21

    固定サイドナビゲーションバーをhtml / cssの右側に移動するにはどうすればよいですか?

  22. 22

    サーバーの文字セットを変更するにはどうすればよいですか?

  23. 23

    ユーザーのセッションの間、ページモデルクラス変数を維持するにはどうすればよいですか?

  24. 24

    最後のセッションが存在した後、tmuxサーバーを実行したままにするにはどうすればよいですか?

  25. 25

    Lotus DominoOSGIサーブレットからサーバーセッションを取得するにはどうすればよいですか。

  26. 26

    Firefoxのデバイス間で「セッションマネージャ」セッションを同期するにはどうすればよいですか?

  27. 27

    Androidでアクションバーの色を変更するにはどうすればよいですか?

  28. 28

    Rセッション内のRパッケージの内部変数を表示するにはどうすればよいですか?

  29. 29

    2つの異なるテーブルからセッション変数を取得するにはどうすればよいですか?

ホットタグ

アーカイブ