AddIntegrityLabelToBoundaryDescriptor 関数 (winbase.h)
指定した境界記述子に新しい必須セキュリティ識別子 (SID) を追加します。
構文
BOOL AddIntegrityLabelToBoundaryDescriptor(
[in, out] HANDLE *BoundaryDescriptor,
[in] PSID IntegrityLabel
);
パラメーター
[in, out] BoundaryDescriptor
境界記述子へのハンドル。 CreateBoundaryDescriptor 関数は、このハンドルを返します。
[in] IntegrityLabel
名前空間の必須の整合性レベルを表す SID 構造体へのポインター。 SID を作成するには、次のいずれかの RID 値を使用します。
SECURITY_MANDATORY_UNTRUSTED_RIDSECURITY_MANDATORY_LOW_RIDSECURITY_MANDATORY_MEDIUM_RID SECURITY_MANDATORY_SYSTEM_RIDSECURITY_MANDATORY_PROTECTED_PROCESS_RID詳細については、「既知の SID」を参照してください。
戻り値
関数が成功すると、戻り値は 0 以外になります。
関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。
解説
プロセスは、プロセスの現在の整合性レベル以下の整合性レベルを持つプライベート名前空間のみを作成できます。 したがって、高い整合性レベルのプロセスでは、高、中、または低の整合性レベルの名前空間を作成できます。 中程度の整合性レベルのプロセスでは、中程度または低の整合性レベルの名前空間のみを作成できます。
通常、プロセスでは、整合性レベルの低いプロセスによるスクワッド攻撃に対する保護プロセスと同じ整合性レベルで名前空間を指定します。
名前空間に作成者が配置するセキュリティ記述子によって、名前空間を開くことができるユーザーが決まります。 そのため、名前空間のセキュリティ記述子で許可されている場合は、高整合性レベルの名前空間を開くアクセス許可を低または中程度の整合性レベルのプロセスに付与できます。
この関数を使用するアプリケーションをコンパイルするには、 _WIN32_WINNTを 0x0601 以降として定義します。
要件
サポートされている最小のクライアント | Windows 7 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 R2 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | winbase.h (Windows.h を含む) |
Library | Kernel32.lib |
[DLL] | Kernel32.dll |