私はGrails REST Appを開発しています。私は3つのユーザー役割を持っています:BusinessOwner、User、Admin、Public(認証なし)REST APIとユーザーロール設計のベストプラクティスとは何ですか?
私はapi/business/1
のようなエンドポイントを持っています。
BusinessOwnerロールを持つユーザーがそれを呼び出すと、ビジネスのすべての詳細が返されますが、パブリック(非認証)ロールを持つユーザーがそれを呼び出すと、その詳細のサブセットが返されます。 そこで問題は、エンドポイントを実装する方法です:
の1- api/business/1
のような一つのエンドポイントを持って、ユーザロールが何であるかをチェックし、適切な値を返します(いくつかのif/else文、....)
OR
api/admin/business/1
:各々がそれ自身の固有のセキュリティ情報があり、特定のサブセットを返す場合、次のような別のAPI領域を有する
2- 1が優れている
api/public/business/1
?および
REST APIの設計とユーザー役割の適用に関するベストプラクティスは何ですか。
オプションこの1.簡単に利用できる役割の変化を可能にしますオプション2と対比。 – bassmartin