SI_OBJECT_INFO 構造体 (aclui.h)
SI_OBJECT_INFO構造体は、アクセス制御エディターの初期化に使用される情報を指定するために、ISecurityInformation::GetObjectInformation メソッドによって使用されます。
構文
typedef struct _SI_OBJECT_INFO {
DWORD dwFlags;
HINSTANCE hInstance;
LPWSTR pszServerName;
LPWSTR pszObjectName;
LPWSTR pszPageTitle;
GUID guidObjectType;
} SI_OBJECT_INFO, *PSI_OBJECT_INFO;
メンバー
dwFlags
ユーザーが使用できる編集オプションを決定するビット フラグのセット。 このメンバーには、次の値の組み合わせを指定できます。
値 | 意味 |
---|---|
|
このフラグを設定すると、基本的 な セキュリティ プロパティ ページに [詳細設定] ボタンが表示されます。 ユーザーがこのボタンをクリックすると、オブジェクトの随意アクセス制御リスト (DACL) の高度な編集を有効にする高度なセキュリティ プロパティ シートが表示されます。
このフラグをSI_EDIT_AUDITS、SI_EDIT_OWNER、およびSI_EDIT_PROPERTIESフラグと組み合わせて、オブジェクトの SACL、所有者、およびオブジェクト固有の アクセス制御エントリ (ACE) を編集できるようにします。 |
|
このフラグを設定すると、高度な監査ページの [編集] ボタンにシールドが表示されます。 NTFS オブジェクトの場合、このフラグは、ユーザーが READ_CONTROL または ACCESS_SYSTEM_SECURITY アクセス権を持っていない場合に要求されます。
Windows Server 2003 および Windows XP: このフラグはサポートされていません。 |
|
オブジェクトがコンテナーであることを示します。 このフラグが設定されている場合、アクセス制御エディターは、子オブジェクトへのアクセス許可の継承に関連するコントロールを有効にします。 |
|
このフラグが設定されている場合、システムは ACE の拒否を無効にします。 このフラグを設定するには、アクセス制御エディターのクライアントが ISecurityInformation4 インターフェイスを実装する必要があります。
Windows Server 2008 R2、Windows 7、Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: このフラグはサポートされていません。 |
|
SI_EDIT_PERMS、SI_EDIT_OWNER、およびSI_EDIT_AUDITSフラグを組み合わせます。 |
|
このフラグが設定され、ユーザーが [詳細設定 ] ボタンをクリックすると、オブジェクトの SACL を編集するための Auditing プロパティ ページ を含む高度なセキュリティ プロパティ シートが表示されます。 [詳細設定] ボタンを表示するには、SI_ADVANCED フラグを設定します。 |
|
このフラグを設定すると、[ 有効なアクセス許可] ページが表示されます。 アクセス制御エディターを初期化した ISecurityInformation オブジェクトが IEffectivePermission インターフェイスを実装していない場合、このフラグは無視されます。 |
|
このフラグが設定され、ユーザーが [詳細設定 ] ボタンをクリックすると、オブジェクトの所有者を変更するための 所有者プロパティ ページ を含む高度なセキュリティ プロパティ シートが表示されます。 [詳細設定] ボタンを表示するには、SI_ADVANCED フラグを設定します。 |
|
これが既定値です。 基本的なセキュリティ プロパティ ページには、オブジェクトの DACL の基本的な編集用のコントロールが常に表示されます。 これらのコントロールを無効にするには、SI_READONLY フラグを設定します。 |
|
このフラグが設定されている場合、システムは、オブジェクトのプロパティ セットとプロパティに適用される ACE を編集するためのコントロールを有効にします。 これらのコントロールは、ユーザーが [詳細設定 ] ボタンをクリックしたときに表示されるプロパティ シートでのみ使用できます。 |
|
このフラグが設定されている場合、システムは属性の編集を有効にします。 このフラグを設定するには、アクセス制御エディターのクライアントが ISecurityInformation4 インターフェイスを実装する必要があります。
Windows Server 2008 R2、Windows 7、Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: このフラグはサポートされていません。 |
|
このフラグが設定されている場合、システムは属性の編集を有効にします。 このフラグを設定するには、アクセス制御エディターのクライアントが ISecurityInformation4 インターフェイスを実装する必要があります。
Windows Server 2008 R2、Windows 7、Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: このフラグはサポートされていません。 |
|
アクセス制御エディターが DACL を読み取ることができないが、DACL に書き込むことができる可能性があることを示します。 ISecurityInformation::GetSecurity メソッドの呼び出しで AccessDenied が返された場合、ユーザーは新しい ACE の追加を試みることができ、より適切な警告が表示されます。 |
|
このフラグが設定されている場合、アクセス制御エディターは、継承可能な ACE を親オブジェクトからこのオブジェクトに伝達できるようにするチェック ボックスを非表示にします。 このフラグが設定されていない場合は、[チェック] ボックスが表示されます。
SE_DACL_PROTECTED フラグがオブジェクトのセキュリティ記述子に設定されている場合、チェック ボックスはオフになります。 この場合、オブジェクトの DACL は、継承可能な ACE によって変更されないように保護されます。 ユーザーが [チェック] ボックスをオフにすると、セキュリティ記述子内の継承された ACE が削除されるか、非継承 ACE に変換されます。 この変換を続行する前に、変更を確認する警告メッセージ ボックスが表示されます。 |
|
このフラグを設定すると、アクセス制御エディターは [セキュリティの詳細設定] ページの [特別なアクセス許可] タブを非表示にします。 |
|
このフラグが設定されている場合、アクセス制御エディターは、NO_PROPAGATE_INHERIT_ACE フラグを制御するチェック ボックスを非表示にします。 このフラグは、SI_ADVANCED フラグも設定されている場合にのみ関連します。 |
|
を設定すると、SI_OBJECT_INFO構造体の guidObjectType メンバーが有効であることを示します。 これは、ACE が現在のオブジェクトに適用されるかどうかを判断する際に、オブジェクト固有の ACE と比較して設定されます。 |
|
このフラグを設定すると、詳細な [所有者] ページの [編集] ボタンにシールドが表示されます。 NTFS オブジェクトの場合、このフラグは、ユーザーが WRITE_OWNER アクセス権を持っていない場合に要求されます。 このフラグは、所有者ページが要求された場合にのみ有効です。
Windows Server 2003 および Windows XP: このフラグはサポートされていません。 |
|
このフラグが設定されている場合、ユーザーはオブジェクトの所有者を変更できません。 SI_EDIT_OWNERが設定されているが、ユーザーに所有者を変更するアクセス許可がない場合は、このフラグを設定します。 |
|
このフラグをSI_CONTAINERと組み合わせて、ユーザーが新しい所有者をすべての子オブジェクトと現在のオブジェクトに適用するかどうかを示すチェック ボックスを所有者ページに表示します。 アクセス制御エディターは再帰を実行しません。再帰は、 アプリケーションが ISecurityInformation::SetSecurity で実行する必要があります。 |
|
このフラグを設定すると、 pszPageTitle メンバーが基本的なセキュリティ プロパティ ページのタイトルとして使用されます。 それ以外の場合は、既定のタイトルが使用されます。 |
|
このフラグを設定すると、シンプルで高度なアクセス許可ページの [編集] ボタンにシールドの画像が表示されます。 NTFS オブジェクトの場合、このフラグは、ユーザーが READ_CONTROL または WRITE_DAC アクセス権を持っていない場合に要求されます。
Windows Server 2003 および Windows XP: このフラグはサポートされていません。 |
|
このフラグを設定すると、エディターはオブジェクトのセキュリティ情報を表示しますが、情報を編集するためのコントロールは無効になります。
このフラグを SI_VIEW_ONLY フラグと組み合わせることはできません。 |
|
このフラグを設定すると、[ 既定 ] ボタンが表示されます。 ユーザーがこのボタンをクリックすると、アクセス制御エディターは ISecurityInformation::GetSecurity メソッドを呼び出して、アプリケーション定義の既定のセキュリティ記述子を取得します。 アクセス制御エディターでは、このセキュリティ記述子を使用してプロパティ シートを再初期化し、ユーザーは変更またはキャンセルを適用できます。 |
|
設定すると、このフラグは [アクセス許可] ページの [既定値のリセット] ボタンを表示します。 |
|
このフラグを設定すると、[Access Controlの設定] ウィンドウの [権限] ページに [すべての子オブジェクトに対するアクセス許可をリセットし、継承可能なアクセス許可の伝達を有効にする] チェック ボックスが表示されます。 ユーザーが [適用] ボタンをクリックしたときにこのチェック ボックスが選択されている場合、SI_RESET_DACL_TREEを使用して ISecurityInformation::SetSecurity の SecurityInformation パラメーターに対してビットごとの OR 操作が実行されます。 この関数はアクセス許可をリセットせず、継承可能なアクセス許可の伝達を有効にしません。 ISecurityInformation の 実装でこれを行う必要があります。 |
|
このフラグを設定すると、[所有者] ページに [既定値のリセット] ボタンが表示されます。 |
|
設定すると、このフラグは [監査] ページの [既定値のリセット] ボタンを表示します。 |
|
このフラグを設定すると、すべての子オブジェクトの [監査エントリのリセット] が表示され、[Access Control設定] ウィンドウの [監査] ページチェック、継承可能な監査エントリの伝達が有効になります。 ユーザーが [適用] ボタンをクリックしたときにこのチェック ボックスが選択されている場合は、SI_RESET_SACL_TREEを使用して ISecurityInformation::SetSecurity の SecurityInformation パラメーターに対してビットごとの OR 操作が実行されます。 この関数はアクセス許可をリセットせず、継承可能なアクセス許可の伝達を有効にしません。 ISecurityInformation の 実装でこれを行う必要があります。 |
|
このフラグを設定すると、スコープ属性の [変更 ] ボタンにシールドの画像が表示されます。 NTFS オブジェクトの場合、このフラグは、ユーザーがREAD_CONTROLまたはWRITE_DACアクセス権を持っていない場合に要求されます。 このフラグを設定するには、アクセス制御エディターのクライアントが ISecurityInformation4 インターフェイスを実装する必要があります。
Windows Server 2008 R2、Windows 7、Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: このフラグはサポートされていません。 |
|
pszServerName コンピューターがドメイン コントローラーであることがわかっている場合は、このフラグを設定します。 このフラグを設定すると、[ ユーザーとグループの追加 ] ダイアログ ボックスのスコープ 一覧にドメイン名が含まれます。 それ以外の場合は、 pszServerName コンピューターを使用して、ダイアログ ボックスのスコープ 一覧が決定されます。 |
|
このフラグは、アクセス制御エディター のダイアログ ボックスの読み取り専用バージョンを表示するように、アクセス制御エディター クライアントによって設定されます。 これらのバージョンのダイアログ ボックスでは、関連付けられているオブジェクトの権限を編集できません。 アクセス制御エディターのクライアントは、このフラグを設定するために ISecurityInformation3 インターフェイスを実装する必要があります。
このフラグを SI_READONLY フラグと組み合わせることはできません。 Windows Server 2003 および Windows XP: このフラグはサポートされていません。 |
hInstance
プロパティ シートで使用する文字列リソースを含むモジュールを識別します。 ISecurityInformation::GetAccessRights メソッドと ISecurityInformation::GetInheritTypes メソッドでは、表示名の文字列リソース識別子を指定できます。
pszServerName
アカウント名と SID を検索するコンピューターに名前を付ける 、null で終わる Unicode 文字列へのポインター。 ローカル コンピューターを指定するには、この値に NULL を 指定できます。 アクセス制御エディターでは、このポインターは解放されません。
pszObjectName
編集中のオブジェクトに名前を付ける 、null で終わる Unicode 文字列へのポインター。 この名前は、高度なセキュリティ プロパティ シートのタイトルと、アクセス制御エディターによって表示されるエラー メッセージ ボックスに表示されます。 アクセス制御エディターでは、このポインターは解放されません。
pszPageTitle
基本的なセキュリティ プロパティ ページのタイトルとして使用される 、null で終わる Unicode 文字列へのポインター。 dwFlags で SI_PAGE_TITLE フラグが設定されていない限り、このメンバーは無視されます。 ページ タイトルが指定されていない場合は、既定のタイトルが使用されます。 アクセス制御エディターでは、このポインターは解放されません。
guidObjectType
オブジェクトの GUID。 dwFlags で SI_OBJECT_GUID フラグが設定されていない限り、このメンバーは無視されます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
Header | aclui.h |
こちらもご覧ください
ISecurityInformation::GetAccessRights
ISecurityInformation::GetInheritTypes
ISecurityInformation::GetObjectInformation