Click or drag to resize
Task Scheduler Managed Class Library

TaskPrincipal Class

Provides the security credentials for a principal. These security credentials define the security context for the tasks that are associated with the principal.
Inheritance Hierarchy
SystemObject
  Microsoft.Win32.TaskSchedulerTaskPrincipal

Namespace: Microsoft.Win32.TaskScheduler
Assembly: Microsoft.Win32.TaskScheduler (in Microsoft.Win32.TaskScheduler.dll) Version: 2.12.0
Syntax
C#
[XmlRootAttribute("Principals", Namespace = "http://schemas.microsoft.com/windows/2004/02/mit/task", 
	IsNullable = true)]
public sealed class TaskPrincipal : IDisposable, 
	IXmlSerializable, INotifyPropertyChanged
Request Example View Source

The TaskPrincipal type exposes the following members.

Properties
 NameDescription
Public propertyAccount Gets the account associated with this principal. This value is pulled from the TaskDefinition's XMLText property if set.
Public propertyDisplayNameGets or sets the name of the principal that is displayed in the Task Scheduler UI.
Public propertyGroupId Gets or sets the identifier of the user group that is required to run the tasks that are associated with the principal. Setting this property to something other than a null or empty string, will set the UserId property to NULL and will set the LogonType property to TaskLogonType.Group;
Public propertyIdGets or sets the identifier of the principal.
Public propertyLogonTypeGets or sets the security logon method that is required to run the tasks that are associated with the principal.
Public propertyProcessTokenSidTypeGets or sets the task process security identifier (SID) type.
Public propertyRequiredPrivileges Gets the security credentials for a principal. These security credentials define the security context for the tasks that are associated with the principal.
Public propertyRunLevel Gets or sets the identifier that is used to specify the privilege level that is required to run the tasks that are associated with the principal.
Public propertyUserId Gets or sets the user identifier that is required to run the tasks that are associated with the principal. Setting this property to something other than a null or empty string, will set the GroupId property to NULL;
Top
Methods
 NameDescription
Public methodDisposeReleases all resources used by this class.
Public methodEqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object)
Public methodGetHashCodeServes as the default hash function.
(Inherited from Object)
Public methodGetTypeGets the Type of the current instance.
(Inherited from Object)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object.
(Inherited from Object)
Public methodRequiresPasswordGets a value indicating whether current Principal settings require a password to be provided.
Public methodToStringReturns a String that represents this instance.
(Overrides ObjectToString)
Public methodStatic memberValidateAccountForSidTypeValidates the supplied account against the supplied TaskProcessTokenSidType.
Top
Events
 NameDescription
Public eventPropertyChangedOccurs when a property value changes.
Top
Remarks
This class can only be accessed via Principal. It is used to set properties related to the principal (account) that will run a task.
Example
C#
TaskDefinition td = TaskService.Instance.NewTask();
            td.Principal.UserId = "SYSTEM";
            td.Principal.LogonType = TaskLogonType.ServiceAccount;
See Also