Delen via


BITS-beveiligings-, tokens- en beheerdersaccounts

Callbacks voor HTTP Server-certificaten

Het correct valideren van servercertificaten is een belangrijk onderdeel van het onderhouden van HTTPS-beveiliging. BITS helpt altijd servercertificaten te valideren op basis van een lijst met vereisten die zijn opgegeven door SetSecurityFlags. BITS maakt standaard gebruik van certificaatvalidatie in browserstijl.

U kunt ook een aangepaste functie opgeven die moet worden aangeroepen om het certificaat verder te valideren. Stel de callback van het servercertificaat in met de SetServerCertificateValidationInterface methode. Uw methode wordt alleen aangeroepen nadat het besturingssysteem het certificaat heeft gevalideerd op basis van de SetSecurityFlag aanroep.

HTTP-clientcertificaten

U kunt een clientcertificaat instellen voor een HTTP-taak met twee verschillende methoden voor certificaatinstellingen. U kunt een certificaat instellen op id of op het certificaat onderwerpnaam. Het clientcertificaat wordt gebruikt tijdens TLS-onderhandeling (of heronderhandeling) als de server clientverificatie vereist.

HTTP-headers met alleen-schrijven

BITS helpt u HTTP-verificatietokens te beveiligen tegen ongewenste toegang. Vaak heeft een HTTP-server een soort beveiligingstoken of tekenreeks nodig bij het downloaden of uploaden van een bestand naar HTTP-servers.

BITS beveiligt deze verificatietokens op verschillende manieren.

  • Met BITS kunt u HTTP-verbindingen met TLS- en SSL-beveiliging gebruiken door een HTTPS-URL op te geven.
  • Aangepaste headers worden altijd bewaard in een versleutelde indeling op schijf.
  • U kunt voorkomen dat headers van klanten worden geretourneerd naar andere programma's met de methode IBackgroundCopyJobHttpOptions3::MakeCustomHeadersWriteOnly.

Standaard- en beheerdersgebruikers

Een gebruiker die zich in de beheerdersgroep bevindt, kan een proces uitvoeren met standaardgebruikerstoegang of met verhoogde status (met beheerdersbevoegdheden). BITS voert de taak uit in beide statussen zolang de gebruiker is aangemeld op de computer. Als de gebruiker echter de taak heeft gemaakt of eigenaar is van de taak met een verhoogde status, moet de gebruiker de verhoogde status hebben om de taak op te halen of te wijzigen (anders mislukt de aanroep met Toegang geweigerd (0x80070005)). Als u de verhoogde status van een taak wilt bepalen, roept u de methode IBackgroundCopyJob4::GetOwnerElevationState aan.

Een standaardgebruiker kan taken die eigendom zijn van andere gebruikers niet inventariseren of wijzigen.

Integriteitsniveau

Naast de verhoogde status kan het integriteitsniveau van het token bepalen of de gebruiker een taak kan wijzigen. Een client kan taken die zijn gemaakt door een token met een hoger integriteitsniveau niet wijzigen. In het bijzonder hebben veel tokens van het lokale systeem een integriteitsniveau dat hoger is dan het integriteitsniveau van een venster met verhoogde bevoegdheden, en kunnen ze dus niet worden gewijzigd door een beheerder vanuit een gewoon opdrachtvenster met verhoogde bevoegdheid. Windows Update- en SMS-taken worden bijvoorbeeld uitgevoerd als LocalSystem met een hoger integriteitsniveau dan een token met verhoogde bevoegdheid, zodat een beheerder deze taken niet kan wijzigen of verwijderen. Als u deze taak wilt wijzigen, maakt u een Task Scheduler-taak die als lokaal systeem wordt uitgevoerd. De taak kan een consoletoepassing uitvoeren die gebruikmaakt van de BITS-API, of de taak kan een script uitvoeren dat BitsAdmin.exeaanroept. Als u het gebruikte integriteitsniveau wilt bepalen, roept u de methode IBackgroundCopyJob4::GetOwnerIntegrityLevel aan.

Service-identiteit

Vanaf de Update van Windows 10 mei 2019 (10.0; Build 18362), BITS-taken die zijn gestart vanuit een service, onderhouden de service-identiteit. Hierdoor kunnen services die BITS willen gebruiken, bestanden downloaden naar of uploaden vanuit een map waarvan de machtigingen zijn gekoppeld aan de service-SID. Daarnaast wordt netwerkverkeer correct toegeschreven aan de service die de BITS-taak heeft aangevraagd in plaats van te worden toegeschreven aan BITS.