デスクトップ のセキュリティとアクセス権
セキュリティを使用すると、デスクトップ オブジェクトへのアクセスを制御できます。 セキュリティの詳細については、「Access-Control モデルの」を参照してください。
CreateDesktop または CreateDesktopEx関数を呼び出すときに、デスクトップ オブジェクトの セキュリティ記述子指定できます。 NULL を指定すると、デスクトップは既定のセキュリティ記述子を取得します。 デスクトップの既定のセキュリティ記述子の ACL は、親ウィンドウ ステーションから取得されます。
ウィンドウ ステーション オブジェクトのセキュリティ記述子を取得または設定するには、GetSecurityInfo を呼び出し、SetSecurityInfo関数します。
openDesktopを呼び出すか、OpenInputDesktop関数すると、要求されたアクセス権がオブジェクトのセキュリティ記述子に対してチェックされます。
デスクトップ オブジェクトの有効なアクセス権には、標準アクセス権 と、オブジェクト固有のアクセス権が含まれます。 次の表に、すべてのオブジェクトで使用される標準アクセス権の一覧を示します。
次の表に、オブジェクト固有のアクセス権を示します。
アクセス権 | 形容 |
---|---|
DESKTOP_CREATEMENU (0x0004L) | デスクトップでメニューを作成するために必要です。 |
DESKTOP_CREATEWINDOW (0x0002L) | デスクトップ上にウィンドウを作成するために必要です。 |
DESKTOP_ENUMERATE (0x0040L) | デスクトップを列挙するために必要です。 |
DESKTOP_HOOKCONTROL (0x0008L) | ウィンドウ フックのいずれかを確立するために必要です。 |
DESKTOP_JOURNALPLAYBACK (0x0020L) | デスクトップでジャーナルの再生を実行するために必要です。 |
DESKTOP_JOURNALRECORD (0x0010L) | デスクトップでジャーナル記録を実行するために必要です。 |
DESKTOP_READOBJECTS (0x0001L) | デスクトップ上のオブジェクトを読み取るために必要です。 |
DESKTOP_SWITCHDESKTOP (0x0100L) | SwitchDesktop 関数を使用してデスクトップをアクティブ化するために必要です。 |
DESKTOP_WRITEOBJECTS (0x0080L) | デスクトップ上でオブジェクトを書き込むには必要です。 |
ユーザーのログオン セッションの対話型ウィンドウ ステーションに含まれるデスクトップ オブジェクトの の汎用アクセス権 を次に示します。
アクセス権 | 形容 |
---|---|
GENERIC_READ |
DESKTOP_READOBJECTS STANDARD_RIGHTS_READ |
GENERIC_WRITE |
DESKTOP_CREATEWINDOW DESKTOP_HOOKCONTROL DESKTOP_JOURNALPLAYBACK DESKTOP_JOURNALRECORD DESKTOP_WRITEOBJECTS STANDARD_RIGHTS_WRITE |
GENERIC_EXECUTE |
STANDARD_RIGHTS_EXECUTE |
GENERIC_ALL |
DESKTOP_CREATEWINDOW DESKTOP_ENUMERATE DESKTOP_HOOKCONTROL DESKTOP_JOURNALPLAYBACK DESKTOP_JOURNALRECORD DESKTOP_READOBJECTS DESKTOP_SWITCHDESKTOP DESKTOP_WRITEOBJECTS STANDARD_RIGHTS_REQUIRED |
オブジェクトの SACL を読み書きする場合は、デスクトップ オブジェクトへのACCESS_SYSTEM_SECURITYアクセス権を要求できます。 詳細については、「Access-Control リスト (ACL)」および「SACL アクセス権限 」を参照してください。