Namespace System
Namespace Security
Namespace AccessControl

Enum AccessControlActions
	' 書き込み専用アクセスを指定します。  
	Change
	' アクセス拒否を指定します。  
	None
	' 読み取り専用アクセスを指定します。  
	View
End Enum

Enum AccessControlModification
	' 指定した承認規則をアクセス制御リスト (ACL: Access Control List) に追加します。  
	Add
	' 指定した承認規則と同じセキュリティ識別子 (SID) とアクセス マスクを含む承認規則を ACL から削除します。  
	Remove
	' 指定した承認規則と同じ SID を含む承認規則を ACL から削除します。  
	RemoveAll
	' 指定した承認規則に完全に一致する承認規則を ACL から削除します。  
	RemoveSpecific
	' 指定した承認規則と同じ SID を含む承認規則を ACL から削除し、指定した承認規則を ACL に追加します。  
	Reset
	' すべての承認規則を ACL から削除し、指定した承認規則を ACL に追加します。  
	Set
End Enum

Enum AccessControlSections
	Access	' 随意アクセス制御リスト (DACL: Discretionary Access Control List)
	All		' セキュリティ記述子全体
	Audit	' システム アクセス制御リスト (SACL: System Access Control List)
	Group	' プライマリ グループ
	None	' セクションを指定しません
	Owner	' 所有者
End Enum

Enum AccessControlType
	' AccessRule オブジェクトを使用して、セキュリティで保護されたオブジェクトへのアクセスを許可します。  
	Allow
	' AccessRule オブジェクトを使用して、セキュリティで保護されたオブジェクトへのアクセスを拒否します。  
	Deny
End Enum

Enum CryptoKeyRights
	' キーのアクセス許可を変更します。  
	ChangePermissions
	' キーを削除します。  
	Delete
	' キーのフル コントロール。  
	FullControl
	GenericAll
	GenericExecute
	GenericRead
	GenericWrite
	' キーの属性を読み取ります。
	ReadAttributes
	' キー データを読み取ります。  
	ReadData
	' キーの拡張属性を読み取ります。  
	ReadExtendedAttributes
	' キーのアクセス許可を読み取ります。  
	ReadPermissions
	' 同期用のキーを使用します。  
	Synchronize
	' キーの所有権を取得します。  
	TakeOwnership
	' キーの属性を書き込みます。  
	WriteAttributes
	' キー データを書き込みます。  
	WriteData
	' キーの拡張属性を書き込みます。  
	WriteExtendedAttributes
End Enum

Enum EventWaitHandleRights
	' 名前付きイベントに関連付けられたセキュリティと監査規則を変更する権限。  
	ChangePermissions
	' 名前付きイベントを削除する権限。  
	Delete
	' 名前付きイベントを完全に制御し、そのアクセス規則と監査規則を変更する権限。  
	FullControl
	' 名前付きイベントのシグナル状態を設定またはリセットする権限。  
	Modify
	' 名前付きイベントのアクセス規則と監査規則を開いてコピーする権限。  
	ReadPermissions
	' 名前付きイベントを待機する権限。  
	Synchronize
	' 名前付きイベントの所有者を変更する権限。  
	TakeOwnership
End Enum

Enum FileSystemRights
	ReadData = FILE_READ_DATA
	ListDirectory = FILE_LIST_DIRECTORY
	WriteData = FILE_WRITE_DATA
	CreateFiles = FILE_ADD_FILE
	CreateDirectories = FILE_ADD_SUBDIRECTORY
	AppendData = FILE_APPEND_DATA
	ReadExtendedAttributes = FILE_READ_EA
	WriteExtendedAttributes = FILE_WRITE_EA
	Traverse = FILE_TRAVERSE
	ExecuteFile = FILE_EXECUTE
	DeleteSubdirectoriesAndFiles = FILE_DELETE_CHILD
	ReadAttributes = FILE_READ_ATTRIBUTES
	WriteAttributes = FILE_WRITE_ATTRIBUTES
	Write = FILE_WRITE_DATA Or FILE_WRITE_ATTRIBUTES Or FILE_WRITE_EA Or FILE_APPEND_DATA
	Delete = &h00010000 'DELETE
	ReadPermissions = READ_CONTROL
	Read = FILE_READ_DATA Or FILE_READ_ATTRIBUTES Or FILE_READ_EA Or STANDARD_RIGHTS_READ
	ReadAndExecute = Read As DWord Or FILE_EXECUTE
	Modify = ReadAndExecute As DWord Or Write As DWord Or &h00010000 'Delete
	ChangePermissions = WRITE_DAC
	TakeOwnership = WRITE_OWNER
	Synchronize = SYNCHRONIZE
	FullControl = &h001f01ff
End Enum

Enum MutexRights
	'名前付きミューテックスに関連付けられたセキュリティと監査規則を変更する権限。  
	ChangePermissions
	'名前付きミューテックスを削除する権限。  
	Delete
	'名前付きミューテックスに対するフル コントロール、およびそのアクセス規則と監査規則を変更する権限。  
	FullControl
	'名前付きミューテックスを解放する権限。  
	Modify
	'名前付きミューテックスのアクセス規則と監査規則を開いてコピーする権限。  
	ReadPermissions
	'名前付きミューテックスが解放されるまで待機する権限。  
	Synchronize
	'名前付きミューテックスの所有者を変更する権限。  
	TakeOwnership
End Enum

Enum RegistryRights
	'レジストリ キーに関連付けられたアクセス規則と監査規則を変更する権限。  
	ChangePermissions
	'システムで使用するために予約されています。  
	CreateLink
	'レジストリ キーのサブキーを作成する権限。  
	CreateSubKey
	'レジストリ キーを削除する権限。  
	Delete
	'レジストリ キーのサブキーをリストする権限。  
	EnumerateSubKeys
	'ReadKey と同じです。  
	ExecuteKey
	'レジストリ キーに対するフル コントロール、およびそのアクセス規則と監査規則を変更する権限。  
	FullControl
	'レジストリ キーの変更通知を要求する権限。  
	Notify
	'レジストリ キー内の名前/値ペアを照会する権限。  
	QueryValues
	'レジストリ キー内の名前/値ペアの照会、変更通知の要求、そのサブキーの列挙、そのアクセス規則と監査規則の読み取りを行う権限。  
	ReadKey
	'レジストリ キーのアクセス規則と監査規則を開いてコピーする権限。  
	ReadPermissions
	'レジストリ キー内の名前/値ペアを作成、削除、または設定する権限。  
	SetValue
	'レジストリ キーの所有者を変更する権限。  
	TakeOwnership
	'レジストリ キー内の名前/値ペアの作成、削除、および設定、サブキーの作成または削除、変更通知の要求、そのサブキーの列挙、そのアクセス規則と監査規則の読み取りを行う権限。  
	WriteKey
End Enum

Enum SemaphoreRights
	' 名前付きセマフォに関連付けられたセキュリティと監査規則を変更する権限。  
	ChangePermissions
	' 名前付きセマフォを削除する権限。  
	Delete
	' 名前付きセマフォに対するフル コントロール、およびそのアクセス規則と監査規則を変更する権限。  
	FullControl
	' 名前付きセマフォを解放する権限。  
	Modify
	' 名前付きセマフォのアクセス規則と監査規則を開いてコピーする権限。  
	ReadPermissions
	' 名前付きセマフォを待機する権限。  
	Synchronize
	' 名前付きセマフォの所有者を変更する権限。  
	TakeOwnership
End Enum

End Namespace
End Namespace
End Namespace
