DdeImpersonateClient 関数 (ddeml.h)
DDE クライアント会話で動的データ交換 (DDE) クライアント アプリケーションを偽装します。
構文
BOOL DdeImpersonateClient(
[in] HCONV hConv
);
パラメーター
[in] hConv
種類: HCONV
偽装される DDE クライアント会話へのハンドル。
戻り値
種類: BOOL
関数が成功すると、戻り値は 0 以外になります。
関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。
解説
偽装とは、プロセスが別のプロセスのセキュリティ属性を引き受ける機能です。 DDE 会話内のクライアントが DDE サーバーから情報を要求すると、サーバーはクライアントを偽装します。 サーバーがオブジェクトへのアクセスを要求すると、システムはクライアントのセキュリティ属性に対してアクセスを検証します。
偽装が完了すると、通常、サーバーは RevertToSelf 関数を呼び出します。
セキュリティに関する考慮事項
DdeImpersonateClient の呼び出しが何らかの理由で失敗した場合、クライアントは偽装されず、クライアント要求は呼び出し元プロセスのセキュリティ コンテキストで行われます。 呼び出し元のプロセスが LocalSystem などの高い特権アカウント、または管理グループのメンバーとして実行されている場合、ユーザーは許可されないアクションを実行できる場合があります。 したがって、呼び出しの戻り値を常にチェックし、エラーが発生しない場合は、クライアント要求の実行を続行しないことが重要です。要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | ddeml.h (Windows.h を含む) |
Library | User32.lib |
[DLL] | User32.dll |
関連項目
概念
その他のリソース