私はSPAに取り組んでおり、ページ上のHTML要素を表示および非表示にするための最良の方法は、ユーザーの資格情報に依存しているのか疑問に思っています.
RestfulAPI バックエンドと AngularJS を使用する JS ヘビー クライアントがあります。認証されると、ユーザーが許可されていることに応じて、ページの特定の要素が表示され、他の要素が非表示になります。
現在、認証時にサーバーからJSONオブジェクトを送信します。これは、アクセス許可のリスト(文字列配列のみ)を保持し、アクセス許可配列内のそれぞれのキーの存在に応じて要素を表示/非表示にします。
サーバー側の API を保護し、各リクエストが処理される前に、ユーザーが承認されていることを確認します。
これは、HTML と JS を改ざんし、クライアント側で要素を有効にして、許可されていない要求をしようとする人々から保護するのに役立つと思います。
別のレベルの疑似セキュリティとして、クライアントに送信されるアクセス許可名が実際のアクセス許可の単なるエイリアスであることを確認します。API が要求を承認しようとすると、検索対象のクレームの名前が異なります。
私の質問は - これは安全なアプローチですか?
そこにもっと良いアプローチはありますか?
ユーザーが表示を許可されている HTML のみを含む HTML テンプレートは、承認時にのみサーバーから取得する必要がありますか?
サーバー側の承認が完全である場合、ユーザーがすべての HTML を表示できるかどうかは重要ですか?