2017-10-02 9 views
0

私たちは現在、REST Webサービスを持っています。その権限は、役割とユーザー(ユーザーが学生、管理者または特定のエンティティの作成者の場合)によって異なります。この種のアクセス許可は、コントローラ内のチェックです。 WSO2 ISのようなアイデンティティ・サーバーの使用を検討しています。Identity Serverはどのような権限を処理する必要がありますか?

ISを使用する場合は、既存のアクセス許可チェックをISに移行する必要がありますか?もしそうなら、私が現在理解していることは、ISがすべての要求を検証するので、オーバーヘッドを追加するということです。 Enlighten me

答えて

1

オリジナルの目的OAuth2は、アプリケーションが自分のリソースにアクセスしたり、ユーザーのためにアクションを実行することを許可する許可委任です。 OpenID Connec(OAuth2拡張)はユーザ認証のためのものです。

リソース(エンティティ)にバインドされたロールとアクセス許可の2種類があります。 OAuth2サーバーでは、ユーザーがエンティティの作成者であるかどうかなど、リソースへのアクセスを確認できない可能性があります。ロールを個々のアクション(スコープ)に変換して、ユーザーのアクセストークンに必要なスコープが含まれているかどうかを確認できます。しかし、ユーザー認証でアプリケーションのすべての可能な範囲を尋ねる必要があります。アクセストークンとスコープ(JWT)の一部の形式は、サーバーにアクセスしなくても検証できます。

OAuth2サーバーを認証のためだけに使用して、ユーザーグループのリストを取得し、ユーザーの役割とリソースの所有権に基づいて既存のアクセス制御を維持することもできます。それは、あなたが何かもっと必要なことが分かったら、簡単に、そして後で、無駄な努力がなくなります。

関連する問題