Lezen in het Engels

Delen via


Beveiligings- en toegangsrechten voor taakobjecten

Met het Microsoft Windows-beveiligingsmodel kunt u de toegang tot taakobjecten beheren. Zie Access-Control Modelvoor meer informatie over beveiliging.

U kunt een beveiligingsdescriptor opgeven voor een taakobject wanneer u de functie CreateJobObject aanroept. Als u NULL opgeeft, krijgt het taakobject een standaardbeveiligingsdescriptor. De ACL's in de standaardbeveiligingsdescriptor voor een taakobject zijn afkomstig van het primaire of imitatietoken van de maker.

Als u de beveiligingsdescriptor voor een taakobject wilt ophalen of instellen, roept u de GetNamedSecurityInfo, SetNamedSecurityInfo, GetSecurityInfoof functie SetSecurityInfo.

De geldige toegangsrechten voor taakobjecten omvatten de standaardtoegangsrechten en bepaalde taakspecifieke toegangsrechten. De volgende tabel bevat de standaardtoegangsrechten die door alle objecten worden gebruikt.

Waarde Betekenis
DELETE- (0x00010000L) Vereist om het object te verwijderen.
READ_CONTROL (0x00020000L) Vereist voor het lezen van informatie in de beveiligingsdescriptor voor het object, niet inclusief de informatie in de SACL. Als u sacl wilt lezen of schrijven, moet u het ACCESS_SYSTEM_SECURITY toegangsrecht aanvragen. Zie SACL Access Rightvoor meer informatie.
SYNCHRONISEREN (0x00100000L) Het recht om het object te gebruiken voor synchronisatie. Hierdoor kan een thread wachten totdat het object de gesignaleerde status heeft.
WRITE_DAC (0x00040000L) Vereist voor het wijzigen van de DACL in de beveiligingsdescriptor voor het object.
WRITE_OWNER (0x00080000L) Vereist om de eigenaar in de beveiligingsdescriptor voor het object te wijzigen.

 

De volgende tabel bevat de taakspecifieke toegangsrechten.

Waarde Betekenis
JOB_OBJECT_ALL_ACCESS (0x1F001F) Combineert alle geldige toegangsrechten voor taakobjecten.
JOB_OBJECT_ASSIGN_PROCESS (0x0001) Vereist voor het aanroepen van de functie AssignProcessToJobObject om processen toe te wijzen aan het taakobject.
JOB_OBJECT_QUERY (0x0004) Vereist voor het ophalen van bepaalde informatie over een taakobject, zoals kenmerken en boekhoudgegevens (zie QueryInformationJobObject en IsProcessInJob).
JOB_OBJECT_SET_ATTRIBUTES (0x0002) Vereist om de functie SetInformationJobObject aan te roepen om de kenmerken van het taakobject in te stellen.
JOB_OBJECT_SET_SECURITY_ATTRIBUTES (0x0010) Deze vlag wordt niet ondersteund. U moet beveiligingsbeperkingen afzonderlijk instellen voor elk proces dat is gekoppeld aan een taakobject.Windows Server 2003 en Windows XP: Vereist om de functie SetInformationJobObject aan te roepen met de informatieklasse JobObjectSecurityLimitInformation om beveiligingsbeperkingen in te stellen voor de processen die aan het taakobject zijn gekoppeld. Ondersteuning voor deze vlag is verwijderd in Windows Vista en Windows Server 2008.
JOB_OBJECT_TERMINATE (0x0008) Vereist om de functie TerminateJobObject aan te roepen om alle processen in het taakobject te beëindigen.

 

De ingang die wordt geretourneerd door CreateJobObject heeft JOB_OBJECT_ALL_ACCESS toegang tot het taakobject. Wanneer u de functie OpenJobObject aanroept, controleert het systeem de aangevraagde toegangsrechten op de beveiligingsdescriptor van het object. Als een taakobject zich in een hiërarchie van geneste takenbevindt, heeft een aanroeper met impliciet toegang tot het taakobject toegang tot alle onderliggende taken in de hiërarchie.

U kunt de ACCESS_SYSTEM_SECURITY toegang tot een taakobject aanvragen als u de SACL van het object wilt lezen of schrijven. Zie Access-Control Lijsten (ACL's) en SACL Access Rightvoor meer informatie.

U moet beveiligingsbeperkingen afzonderlijk instellen voor elk proces dat is gekoppeld aan een taakobject, in plaats van deze in te stellen voor het taakobject zelf. Zie procesbeveiligings- en toegangsrechtenvoor meer informatie.

Windows Server 2003 en Windows XP: U kunt de functie SetInformationJobObject gebruiken om beveiligingsbeperkingen voor het taakobject in te stellen. Deze mogelijkheid is verwijderd in Windows Vista en Windows Server 2008.