//
// Copyright © Nick Lowe 2009
//
// Nick Lowe
// nick@int-r.net
// http://processprivileges.codeplex.com/
namespace ProcessPrivileges
{
using System.Diagnostics.CodeAnalysis;
/// Result from a privilege adjustment.
public enum AdjustPrivilegeResult
{
/// Privilege not modified.
None,
/// Privilege modified.
PrivilegeModified
}
/// Privilege determining the type of system operations that can be performed.
public enum Privilege
{
/// Privilege to replace a process-level token.
AssignPrimaryToken,
/// Privilege to generate security audits.
Audit,
/// Privilege to backup files and directories.
Backup,
/// Privilege to bypass traverse checking.
ChangeNotify,
/// Privilege to create global objects.
CreateGlobal,
/// Privilege to create a pagefile.
CreatePageFile,
/// Privilege to create permanent shared objects.
CreatePermanent,
/// Privilege to create symbolic links.
CreateSymbolicLink,
/// Privilege to create a token object.
CreateToken,
/// Privilege to debug programs.
Debug,
/// Privilege to enable computer and user accounts to be trusted for delegation.
EnableDelegation,
/// Privilege to impersonate a client after authentication.
Impersonate,
/// Privilege to increase scheduling priority.
IncreaseBasePriority,
/// Privilege to adjust memory quotas for a process.
IncreaseQuota,
/// Privilege to increase a process working set.
IncreaseWorkingSet,
/// Privilege to load and unload device drivers.
LoadDriver,
/// Privilege to lock pages in memory.
LockMemory,
/// Privilege to add workstations to domain.
MachineAccount,
/// Privilege to manage the files on a volume.
ManageVolume,
/// Privilege to profile single process.
ProfileSingleProcess,
/// Privilege to modify an object label.
[SuppressMessage(
"Microsoft.Naming",
"CA1704:IdentifiersShouldBeSpelledCorrectly",
Justification = "Spelling is correct.",
MessageId = "Relabel")]
Relabel,
/// Privilege to force shutdown from a remote system.
RemoteShutdown,
/// Privilege to restore files and directories.
Restore,
/// Privilege to manage auditing and security log.
Security,
/// Privilege to shut down the system.
Shutdown,
/// Privilege to synchronize directory service data.
SyncAgent,
/// Privilege to modify firmware environment values.
SystemEnvironment,
/// Privilege to profile system performance.
SystemProfile,
/// Privilege to change the system time.
SystemTime,
/// Privilege to take ownership of files or other objects.
TakeOwnership,
/// Privilege to act as part of the operating system.
TrustedComputerBase,
/// Privilege to change the time zone.
TimeZone,
/// Privilege to access Credential Manager as a trusted caller.
TrustedCredentialManagerAccess,
/// Privilege to remove computer from docking station.
Undock,
/// Privilege to read unsolicited input from a terminal device.
UnsolicitedInput
}
/// State of a , derived from .
public enum PrivilegeState
{
///
/// Privilege is disabled.
///
Disabled,
///
/// Privilege is enabled.
///
Enabled,
///
/// Privilege is removed.
///
Removed
}
}