__SystemSecurity クラスの GetCallerAccessRights メソッド
__SystemSecurity::GetCallerAccessRights メソッドは、アクセス権に対応する各ビットを含むビットマップとして rights パラメータを設定します。 任意のクライアントでこれを呼び出して、クライアントが持つ権限を確認できます。 このメソッドは、機能を有効または無効にするクライアントに有用です。 たとえば、現在ログオンしているユーザーにメソッド実行権限がない場合に GUI アプリケーションでボタンを無効にする、などです。
有効になっているクライアントには、そのクライアントに一般的なメソッド実行権限がない場合でも、GetCallerAccessRights を呼び出す権限があります。
構文
HRESULT GetCallerAccessRights(
[out] sint32 rights
);
パラメーター
-
rights [out]
-
クライアントのアクセス権。 詳細については、「__SystemSecurity」と「WMI セキュリティ定数」を参照してください。
-
WBEM_ENABLE (1 (0x1))
-
アカウントを有効にし、ユーザーに読み取りアクセス許可を付与します。 これは、すべてのユーザーの既定のアクセス権です。
-
WBEM_METHOD_EXECUTE (2 (0x2))
-
メソッドの実行を許可します。
注意
プロバイダーで追加のアクセス権チェックを実行できます。
-
WBEM_FULL_WRITE_REP (4 (0x4))
-
呼び出し元、セキュリティ コンテキスト、またはユーザーが、システム クラスを除くクラスとインスタンスに書き込むことを許可します。
-
WBEM_PARTIAL_WRITE_REP (8 (0x8))
-
呼び出し元、セキュリティ コンテキスト、またはユーザーがリポジトリにプロバイダー インスタンスを書き込むことを許可しますが、静的クラスおよび静的インスタンスを書き込むことは許可しません。
-
WBEM_WRITE_PROVIDER (16 (0x10))
-
呼び出し元、セキュリティ コンテキスト、またはユーザーがプロバイダーにクラスとインスタンスを書き込むことを許可します。
注意
偽装プロバイダーで追加のアクセス権チェックを実行できます。
-
WBEM_REMOTE_ACCESS (32 (0x20))
-
他のビットによって設定されたアクセス許可で許可されている操作をユーザー アカウントがリモートで実行することを許可します。
-
READ_CONTROL (131072 (0x20000))
-
セキュリティ記述子への読み取りアクセスを許可します。
-
WRITE_DAC (262144 (0x40000))
-
随意アクセス制御リスト (DACL) への書き込みアクセスを許可します。
戻り値
このメソッドは、メソッド呼び出しの状態を示す HRESULT を返します。 次の一覧は、Set9XUserList において重要な戻り値を示しています。 スクリプトと Visual Basic アプリケーションの場合は、OutParameters.ReturnValue から結果を取得できます。 詳細については、「InParameters オブジェクトの構築と OutParameters オブジェクトの解析」を参照してください。
-
WBEM_E_METHOD_DISABLED
-
このメソッドは、サポート対象のバージョンの Windows ではサポートされていません。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント |
Windows Vista |
サポートされている最小のサーバー |
Windows Server 2008 |
名前空間 |
すべての WMI 名前空間 |