2017-03-07 10 views
1

エンタープライズシナリオでIdentityServer 4を実装しようとしています。ID4のユーザーを特定のアプリケーションに制限できますか?

ユーザーがIdentityサーバーに登録されていることを理解しています。

私の質問は、特定のアプリケーションに割り当てる必要があるように、割り当てられていないアプリケーションが許可されていない場合は、ユーザーがアプリケーションに対してアクセス許可を与える方法です。

ユーザーが複数のアプリケーションにアクセスする必要がある場合は、複数の割り当てが必要です。

問題のトークンが有効な場合でも、ユーザーがアプリケーションにアクセスできない場合、アイデンティティ・サーバーが提示されたトークンを無効にする方法を探しています。ユーザーは

にアクセスしました

答えて

2

IdentityServerは認証のみです。承認はアプリケーションによって処理される必要があります。ユーザーは、Identity Serverが明示的に教えていない、ユーザーは、彼らがあると言う人であることを認証します、スコットが言うように、ユーザが

+0

返信ありがとうございます。私が間違っていない場合、IDサーバーのスコープは権限のみを提供していますか?私は、アイデンティティサーバーは、認証フロー –

+0

ほとんどがあるOpenID接続で実装されていることを読んでいます。スコープは、クライアントアプリケーションが要求できるものです。必ずしもユーザーがアクセスできるものではありません。アプリに対するアプリの権限は、それらのアプリで再度処理されますが、特定のAPIスコープを要求することもできますが、これはアプリでもやり直されます。 –

+0

scott、アプリケーションやIDサーバのデータベースを接続してsubやidに対する認証を行うにはどうすればいいですか?ユーザーアクセスの検証以外に、すべての認可はクレームを使用して実行できますか? –

0

を何ができるかを確認します=

認可のある

認証=の確認そのユーザーができることをあなたに教えてください。

この認証の一部として返されたクレームを使用して、アプリ内で権限チェックを行うことができます。たとえば、subまたはidのクレームを使用して、そのサブ/ IDに関連付けられたユーザーが特定のリソースにアクセスすることが許可されているかどうかをアプリからチェックすることができます。

roleのクレームを画像に入力すると、水が少し濁ってしまいますが、認証と認証の違いがわかっている限り、問題は解決します。

+0

サブIDまたはIDに対して認可を実行するには、アプリケーションとIDサーバーのデータベースをどのように接続しますか?ユーザーアクセスの検証以外に、すべての認可はクレームを使用して実行できますか? –

+0

これは、ユーザーの管理方法によって異なります。私たちの状況では、アイデンティティプロバイダ(ASP.NET IDを使用)であるアセンブリがあります。これには、アイデンティティサーバー(トークンの認証と発行)とアプリケーション(ユーザーの作成/編集、アクセスの承認) – Mashton

関連する問題