REST API + シングル ページ アプリケーションでの認証処理に関する記事をいくつか読みました。彼らは主に次のことを提案しています:フロントエンドアプリが初期化されると、ユーザーの役割を取得し、クライアント側で役割を確認し、それに基づいてロジックを適用し、役割に基づいて特定のコントロールを表示/非表示にします。
しかし、より複雑な承認ロジックに関する記事は見つかりませんでした。
例: Role Based Access Control を備えた REST API があります (私は Yii2 rbac を使用しています)。フロントエンドアプリがあります(角度を使用しています)。このアプリでは、投稿の一覧が表示されます。したがって、ユーザーの役割に基づいて、このリストの各投稿に対して「編集」ボタンを適切に表示/非表示にする必要があります。
役割があります:
管理者
ユーザー - ログインユーザー
ゲスト
問題は、「ユーザー」ロールを持つユーザーの「編集」権限がコンテキスト (ビジネス ルール) に依存することです。ユーザーが投稿の作成者である場合、投稿の編集は許可されますが、それ以外の場合は禁止されます。
では、アプリケーションのフロント エンド部分でこのようなタイプの承認を処理するためのベスト プラクティスは何ですか?
ユーザーが残りのエンドポイントへの呼び出しを実行したときに応答して、各エンティティに操作のアクセス許可を提供しますか?