Teilen über


BITS-Sicherheits-, Token- und Administratorkonten

HTTP Server-Zertifikatrückrufe

Die ordnungsgemäße Überprüfung von Serverzertifikaten ist ein wichtiger Bestandteil der Aufrechterhaltung der HTTPS-Sicherheit. BITS hilft, indem serverzertifikate immer anhand einer Liste der anforderungen überprüft werden, die durch SetSecurityFlagsangegeben werden. Standardmäßig verwendet BITS die Zertifikatüberprüfung im Browserstil.

Sie können auch eine benutzerdefinierte Funktion angeben, die aufgerufen werden soll, um das Zertifikat weiter zu überprüfen. Legen Sie den Serverzertifikatrückruf mit der SetServerCertificateValidationInterface--Methode fest. Ihre Methode wird nur aufgerufen, nachdem das Betriebssystem das Zertifikat basierend auf dem SetSecurityFlag Aufrufs überprüft hat.

HTTP-Clientzertifikate

Sie können ein Clientzertifikat für einen HTTP-Auftrag mit zwei verschiedenen Zertifikateinstellungenmethoden festlegen. Sie können ein Zertifikat entweder durch ID- oder durch das Zertifikat Antragstellernamensfestlegen. Das Clientzertifikat wird während der TLS-Aushandlung (oder Neuverhandlung) verwendet, wenn der Server eine Clientauthentifizierung erfordert.

Schreibgeschützte HTTP-Header

BITS hilft Ihnen, HTTP-Authentifizierungstoken vor unerwünschtem Zugriff zu schützen. Häufig benötigt ein HTTP-Server eine Art Sicherheitstoken oder eine Zeichenfolge beim Herunterladen oder Hochladen einer Datei auf HTTP-Server.

BITS schützt diese Authentifizierungstoken auf verschiedene Arten.

  • MIT BITS können Sie TLS- und SSL-geschützte HTTP-Verbindungen verwenden, indem Sie eine HTTPS-URL angeben.
  • Benutzerdefinierte Header werden immer in einem verschlüsselten Format auf dem Datenträger beibehalten.
  • Sie können verhindern, dass Kundenkopfzeilen mit der IBackgroundCopyJobHttpOptions3::MakeCustomHeadersWriteOnly-Methode an andere Programme zurückgegeben werden.

Standard- und Administratorbenutzer

Ein Benutzer, der sich in der Administratorgruppe befindet, kann einen Prozess mit Standardbenutzerzugriff oder in einem erweiterten Zustand (mit Administratorrechten) ausführen. BITS führt den Auftrag in beiden Status aus, solange der Benutzer auf dem Computer angemeldet ist. Wenn der Benutzer jedoch den Auftrag erstellt oder den Besitz des Auftrags in einem Zustand mit erhöhten Rechten übernommen hat, muss sich der Benutzer im Zustand mit erhöhten Rechten befinden, um den Auftrag abzurufen oder zu ändern (andernfalls schlägt der Aufruf mit "Zugriff verweigert" (0x80070005) fehl. Um den Zustand mit erhöhten Rechten eines Auftrags zu ermitteln, rufen Sie die IBackgroundCopyJob4::GetOwnerElevationState-Methode auf.

Ein Standardbenutzer kann keine Aufträge aufzählen oder ändern, die im Besitz anderer Benutzer sind.

Integritätsebene

Zusätzlich zum Zustand mit erhöhten Rechten kann die Integritätsebene des Tokens bestimmen, ob der Benutzer einen Auftrag ändern kann. Ein Client kann keine Aufträge ändern, die von einem Token mit einer höheren Integritätsebene erstellt wurden. Insbesondere tragen viele lokale Systemtoken eine Integritätsstufe höher als die Integritätsebene eines Fensters mit erhöhten Rechten, sodass sie nicht von einem Administrator aus einem normalen Befehlsfenster mit erhöhten Rechten geändert werden können. Beispielsweise werden Windows Update- und SMS-Aufträge als LocalSystem ausgeführt, die eine höhere Integritätsstufe als ein erhöhtes Token aufweisen, sodass ein Administrator diese Aufträge nicht ändern oder löschen kann. Um diesen Auftrag zu ändern, erstellen Sie eine Taskplanungsaufgabe, die als lokales System ausgeführt wird. Die Aufgabe kann eine Konsolenanwendung ausführen, die die BITS-API verwendet, oder die Aufgabe kann ein Skript ausführen, das BitsAdmin.exeaufruft. Rufen Sie zum Ermitteln der verwendeten Integritätsebene die IBackgroundCopyJob4::GetOwnerIntegrityLevel-Methode auf.

Dienstidentität

Ab windows 10 Mai 2019 Update (10.0; Build 18362), BITS-Aufträge, die von einem Dienst gestartet wurden, verwalten die Dienstidentität. Dies ermöglicht Diensten, die BITS verwenden möchten, um Dateien in ein Verzeichnis herunterzuladen oder hochzuladen, dessen Berechtigungen an die Dienst-SID gebunden sind. Darüber hinaus wird der Netzwerkdatenverkehr ordnungsgemäß dem Dienst zugeordnet, der den BITS-Auftrag angefordert hat, anstatt BITS zuzuordnen.