もう一方のユーザーの偽装

偽装を使用することで Dynamics 365 for Customer Engagement ユーザーに代わってビジネス ロジック (コード) を実行し、偽装されるユーザーの適切なロール ベースとオブジェクトベースのセキュリティを使用して任意の機能やサービスを提供します。 これが必要なのは、例えばワークフローやユーザー定義の ISV ソリューションのような Dynamics 365 for Customer Engagement ユーザーに代わって、Dynamics 365 for Customer Engagement Web サービスはさまざまなクライアントやサーバーから呼び出される可能性があるためです。 偽装には 2 つの異なるユーザー アカウントが含まれ、1つのユーザー アカウント (A) が、もう一方のユーザー アカウント (B) に代わって何らかのタスクを行うコードの実行時に使用されます。

詳細については、 Dataverse トピック、 他のユーザーを代理するを参照してください。

必要な特権

ユーザー アカウント (A) は、代理人セキュリティ ロールに含まれる prvActOnBehalfOfAnotherUser 権限を必要とします。

データ変更に使用される実際の権限のセットは、代理人の役割のユーザーが所有する権限と、偽装されたユーザーが所有する特権との共通部分です。 つまり、ユーザー A と偽装されたユーザー (B) が操作に必要な特権をもつ場合にのみ、ユーザー A は何かを実行できます。

ユーザーを偽装する

ユーザーを偽装するには、サービスの Web メソッドを呼び出す前に CallerId プロパティを OrganizationServiceProxy のインスタンスに設定します。

特定のオプションの展開

Active Directory の PrivUserGroup でユーザー アカウントを使用した偽装は、設置型環境ではサポートされていません。 現在進行中のセキュリティプロトコルの設計強化で、より優れた安全な偽装方法を開発しました。 新しいメソッドは Dynamics 365 for Customer Enagement アプリ ユーザーや Dynamics 365 for Customer Engagement (on-premises) セキュリティ ロールを使用することを要求します。 この方法では、ユーザーの権限は Dynamics 365 for Customer Engagement (on-premises) で管理され、ユーザーのアクティビティが記録されます。 詳細については、次の表を参照してください。

展開の種類 展開の種類の戦略
設置型
or
IFD/主張
prvActOnBehalfOfAnotherUser 権限が含まれるセキュリティ ロールを持つ新しい Dynamics 365 ユーザーを作成します。 このセキュリティロール内には、このユーザーアカウントが他のユーザーのために実行するタスクの権限も含まれます。

関連項目

Dynamics 365 Customer Engagement Web サービスでユーザーを認証する
ASPX Web ページまたは IFRAME からのシングル サインオンの実行
ロールベースのセキュリティを使用して Dynamics 365 Customer Engagement (on-premises) におけるエンティティへのアクセスを制御する方法
サンプル: ActOnBehalfOf 特権を使用した偽装