私たちのアプリケーションでは、ユーザーの役割に基づいてルート(ナビゲーション)が制限されています。ルートへのアクセスを提供/制限するために角度ガードを実装することは絶対に必要ですか?角度ガードを実装する重要性
JavaScript/HTML/plain Angular(つまり、リンクの表示と非表示、データの表示/非表示)からユーザーロールに基づいてアクセスを制限するのではなく、セキュリティを強化しますか?
私たちのアプリケーションでは、ユーザーの役割に基づいてルート(ナビゲーション)が制限されています。ルートへのアクセスを提供/制限するために角度ガードを実装することは絶対に必要ですか?角度ガードを実装する重要性
JavaScript/HTML/plain Angular(つまり、リンクの表示と非表示、データの表示/非表示)からユーザーロールに基づいてアクセスを制限するのではなく、セキュリティを強化しますか?
角度ガードはルーティングの問題のみです。これらは、ルーターが特定のページに移動するのを妨げる要素です(リンク、ボタン、またはURLをロケーションバーに直接入力することによって)。
しかし、どのようなjavascriptフレームワークでも、この 'セキュリティ'は本当にセキュリティではなくユーザーの利便性を高めます。ウェブの性質上、誰もがクライアント(すなわちブラウザ)上のデータ/コードに干渉する可能性があり、クライアントサイドのJavaScriptで実装されたものは本当のセキュリティとはみなされません。実際のセキュリティチェックをバックエンドシステムに実装する必要があります。
Angular GuardsはAngular Routerの関心事ですので、公式のAngular Routerを使用していない場合は意味がありません。
公式の角度ルータを使用しています。ルートガードは対象外です。ブラウザのアドレスバーに直接URLを入力して、ユーザーがデータにアクセスできないようにするにはどうすればよいですか?現在の制限は、ユーザーの役割に基づいてリンクやボタンを隠すことによってのみ行われます。 – user3344978
これは、文字通りルートガードの目的です。ルートガードを使用したくない場合は、個々のコンポーネントの「ルートガード」チェックを行い、チェックが失敗した場合にユーザーをナビゲートさせることができますが、それは文字通りルートガードと同じ目的ですそれが提供されているように機能を使用してみませんか? – snorkpete
これは便利な方法です。それらを使用する際に追加のセキュリティはありません。とにかくサーバー上でセキュリティを強化する必要があります。 –