Skip to main content
Skip to content

Zulassen der Ausführung sicherer Befehle ohne manuelle Genehmigung

Die assisted permissions Option reduziert manuelle Genehmigungsaufforderungen, indem ein großes Sprachmodell verwendet wird, um Berechtigungsanforderungen zu bewerten.

Introduction

Wenn Copilot an einer Aufgabe arbeitet, muss es häufig Aktionen ausführen, die Ihr System ändern können, z. B. das Ausführen von Shellbefehlen, das Bearbeiten von Dateien oder den Zugriff auf URLs. Sie können auswählen, wie Berechtigungsanforderungen für diese Aktionen behandelt werden.

Das Beantworten von Genehmigungsaufforderungen sorgt dafür, dass Sie die Kontrolle behalten, kann Sie jedoch verlangsamen, insbesondere zu Beginn einer Sitzung, wenn Copilot festlegen muss, welche Aktionen es ausführen darf. Um die Anzahl der Eingabeaufforderungen zu verringern, können Sie Copilot bedingungslose Berechtigungen erteilen, aber dadurch verlieren Sie die Aufsicht über einzelne Aktionen.

Assisted permissions ist eine Mitte zwischen der manuellen Genehmigung und der Gewährung umfassender Berechtigungen mit einer Option "Alle zulassen". Es verwendet ein großes Sprachmodell, um Berechtigungsanforderungen zu überprüfen und automatisch Aktionen zu genehmigen, die es im Kontext Ihrer Aufgabe als sicher einstuft. In einer standardmäßigen interaktiven Sitzung werden Anforderungen, die noch eine Genehmigung erfordern, an Sie gestellt.

Hinweis

Assisted permissions ist in GitHub Copilot CLI, Visual Studio Code und der GitHub Copilot app verfügbar.

Genehmigungsoptionen

Sie können zwischen drei Optionen wählen, die bestimmen, wie viel Sie an der Genehmigung der Aktionen, die Copilot ausführt, beteiligt sein möchten. Bestehende Sperrregeln und Unternehmenseinschränkungen gelten weiterhin. Anfragen, die bereits von Ihren Berechtigungen zugelassen sind, können ohne Aufforderung oder Modellüberprüfung ausgeführt werden.

  • **Manuelle Genehmigung:**Copilot bittet um Ihre Genehmigung, wenn eine Aktion noch nicht zulässig ist, z. B. das Ausführen eines Befehls, der nicht nur lesend ist, das Bearbeiten einer Datei oder den Zugriff auf eine URL. Sie können eine Aktion einmal oder für den Rest der Sitzung genehmigen. Dies gibt Ihnen die größte Kontrolle, erfordert jedoch, dass Sie auf die meisten Eingabeaufforderungen reagieren.

  • **Assisted permissions:**Copilot Verwendet ein Modell, um berechtigte Berechtigungsanforderungen zu bewerten und automatisch diejenigen zu genehmigen, die es als sicher einstuft. Sie werden benachrichtigt, wenn eine Anfrage weiterhin Ihre Genehmigung benötigt. Dadurch werden Aufforderungen reduziert, ohne eine pauschale Berechtigung zum Ausführen von Befehlen zu erteilen.

  • **Bedingungslose Genehmigung:**Copilot verfügt über eine umfassende Berechtigung für die Verwendung von Tools, Pfaden und URLs ohne Modellsicherheitsprüfung oder individuelle Genehmigungsaufforderungen. Dies ist die am wenigsten restriktive Option und hebt Ihre Aufsicht über einzelne Aktionen auf. Dies ist das Verhalten, das Sie in Copilot CLI erhalten, wenn Sie die --allow-all Befehlszeilenoption (oder --yolo) oder den /permissions allow-all (oder /yolo) Schrägstrichbefehl verwenden.

Ihr Administrator kann die bedingungslose Genehmigung mit permissions.disableBypassPermissionsMode: "disable" deaktivieren, ohne assisted permissions zu deaktivieren. Die separate permissions.disableAssistedPermissionsMode: true Einstellung deaktiviert assisted permissions. Weitere Informationen findest du unter Unternehmensverwaltete Einstellungen.

Funktionsweise von assisted permissions

Wenn Sie diese Option aktivieren assisted permissions, werden vorhandene Regeln und menschliche Genehmigungen vor einer Modellüberprüfung ausgewertet. Für zulässige Anfragen, die noch nicht aufgelöst wurden – sei es das Ausführen eines Befehls, der Zugriff auf einen Pfad oder das Abrufen einer URL – bewertet das Modell, ob die Aktion sicher ist und innerhalb der Autorität liegt, die Sie für die Aufgabe angegeben haben.

In Copilot CLI, Enterprise-Regeln ask für Shellbefehle, Dateilesevorgänge, Dateischreibvorgänge und URLs können mit Modellgenehmigung erfüllt werden, wenn die Anforderung für eine Überprüfung infrage kommt. Dies bedeutet, dass diese Regeln nicht immer zu einer Aufforderung zu Ihrer Bestätigung führen. Sperrregeln auf Unternehmensebene gelten weiterhin.

Assisted permissions überprüft keine anderen Toolaufrufe, die Sie gemäß Unternehmensregeln genehmigen müssen, oder Anforderungen zum Umgehen der lokalen Sandboxing. Diese Anfragen unterliegen der normalen Berechtigungsbehandlung der Sitzung.

Für Anfragen, die es überprüfen kann, gibt das Modell eine Empfehlung aus:

  • Wenn das Modell sicher ist, dass die Anforderung sicher ist, Copilot genehmigt sie automatisch und fährt fort, ohne Sie dazu aufzufordern.
  • Wenn das Modell nicht sicher ist, dass die Anforderung sicher ist, Copilot fragt Sie nach Ihrer Genehmigung, wie es dies auch bei manueller Genehmigung tun würde.

Wenn eine Sicherheitsüberprüfung nicht verfügbar ist oder keine Anfrage auswerten kann, folgt die Anfrage der normalen Berechtigungsbehandlung der Sitzung.

Hinweis

Im Autopilot-Modus und bei nicht-interaktiven Ausführungen werden Anfragen, die weiterhin Ihre Genehmigung erfordern, stattdessen abgelehnt. Wenn die Sicherheitsüberprüfung eine Freigabe erfordert, wird die Begründung dafür an Copilot zurückgegeben, damit es einen anderen Ansatz ausprobieren kann. Siehe GitHub Copilot autonom arbeiten zu lassen.

Copilot wählt das Für die Sicherheitsüberprüfung verwendete Modell aus, das sich von dem Modell unterscheiden kann, das Sie für Ihre Unterhaltung ausgewählt haben. Wenn das ausgewählte Überprüfungsmodell nicht verfügbar ist, kann die Überprüfung stattdessen das aktive Modell Ihrer Sitzung verwenden. Wenn Sie Ihren eigenen Modellanbieter verwenden, verwendet die Überprüfung das aktive Modell Ihrer Sitzung.

Wichtig

Assisted permissions reduziert, wie oft Sie dazu aufgefordert werden, aber es entbindet Sie nicht von der Verantwortung für das, was Copilot tut. Das Modell kann Fehler machen und gefährliche oder unbeabsichtigte Aktionen genehmigen. Dieses Feature ist kein Ersatz für Sandboxing oder Zugriffseinschränkungen. Wie bei jeder Option für die automatische Genehmigung sollten Sie die Aktionen, die Copilot ausführt, überprüfen und erwägen, sie in einer Sandbox oder anderen isolierten Umgebung auszuführen. Weitere Informationen findest du unter GitHub Copilot-CLI.

Verwendung von assisted permissions in GitHub Copilot app

So aktivieren Sie assisted permissions für eine lokale Sitzung:

  1. Öffnen Sie im Eingabeaufforderungsfeld das Modusmenü, in dem der aktuelle Modus angezeigt wird, z. B. "Interaktiv", "Plan" oder "Autopilot".
  2. Klicken Sie auf Toolberechtigungen, und wählen Sie dann Assisted aus.

Ihre Auswahl gilt für die aktuelle Sitzung und wird auch als Standard für neue lokale Sitzungen gespeichert. Andere vorhandene Sitzungen werden nicht geändert. Wenn Sie den Standardwert ändern möchten, ohne die aktuelle Sitzung zu ändern, öffnen Sie "Einstellungen", wählen Sie "Sitzungen" aus, und wählen Sie unter Toolberechtigungen****Unterstützt aus.

Um assisted permissions nur für die aktuell aktive Sitzung zu aktivieren, ohne den Standardwert zu ändern, geben Sie /permissions assisted in das Eingabeaufforderungsfeld ein. Drücken Sie /permissions manual, um diese Sitzung zur manuellen Genehmigung zurückzugeben, oder /permissions show, um den Berechtigungsmodus zu überprüfen.

Steuerelemente für Tool-Berechtigungen sind für Cloud-Sitzungen nicht verfügbar. Für Sitzungen auf einem Remotehost hängen die verfügbaren Berechtigungsmodi davon ab, was dieser Host unterstützt. Administratoreinschränkungen gelten weiterhin, auch wenn Sie "Assistiert" als Standard auswählen.

Verwenden von assisted permissions in GitHub Copilot CLI

Es gibt drei Möglichkeiten zum Aktivieren von assisted permissions, je nachdem, ob Sie es für die Sitzung, in der Sie sich befinden, für jede neue Sitzung oder für eine einzelne automatisierte Ausführung aktivieren möchten.

Es während einer interaktiven Sitzung aktivieren

Geben Sie den folgenden Schrägstrichbefehl ein:

Copilot prompt
/permissions assisted

Um zur manuellen Genehmigung zurückzukehren, geben Sie /permissions manual ein. Um zu überprüfen, in welchem Berechtigungsmodus Sie sich gerade befinden, geben Sie /permissions show ein. Sie können auch /permissions ohne Argument eingeben, um einen Modus aus einer Liste auszuwählen.

Als Standard für neue Sitzungen festlegen

Wenn Sie assisted permissions zu ihrem bevorzugten Modus für neue interaktive Sitzungen festlegen möchten, legen Sie defaultPermissionMode in der Benutzerkonfigurationsdatei (~/.copilot/settings.json) auf "assisted" fest. Sie können die Datei direkt bearbeiten oder den /settings Slash-Befehl während einer Sitzung verwenden. Weitere Informationen findest du unter GitHub Copilot CLI-Konfigurationsverzeichnis.

Die Einstellung gilt nur für neue interaktive Sitzungen. Wenn Ihr Administrator festlegt permissions.defaultMode, hat dieser verwaltete Standardwert Vorrang vor Ihrer Einstellung. Sie können weiterhin einen anderen Modus für eine Sitzung auswählen, z. B. mit /permissions manual, wenn die Richtlinie dies zulässt.

Wiederaufgenommene Sitzungen behalten ihren gespeicherten Berechtigungsmodus bei, vorbehaltlich der aktuellen Richtlinieneinschränkungen. Die --allow-all Oder --yolo Option hat Vorrang vor beiden Standardeinstellungen, wenn die Richtlinie dies zulässt. Wenn der ausgewählte Standardwert nicht verfügbar oder durch die Richtlinie blockiert ist, startet die CLI mit manueller Bestätigung.

Wenn Sie die manuelle Genehmigung als bevorzugte Standardeinstellung festlegen möchten, setzen Sie defaultPermissionMode auf "manual". Wenn weder Sie noch Ihr Administrator einen Standard konfiguriert haben, können neue Sitzungen im manuellen oder unterstützten Modus gestartet werden. Verwenden Sie /permissions show, um zu überprüfen.

Für einen nicht interaktiven Lauf verwenden

Wenn Sie Copilot CLI nicht interaktiv ausführen – mit der Option -p oder --prompt oder in einer Umgebung ohne angeschlossenes Terminal, z. B. in einem CI/CD-Workflow – verwenden Sie die Befehlszeilenoption --assisted-approval:

Shell
copilot -p "Fix the failing tests" --assisted-approval

Sie können auch die COPILOT_ASSISTED_APPROVAL Umgebungsvariable auf truefestlegen, die in automatisierten Umgebungen nützlich ist, in denen Sie den befehl, der ausgeführt wird, nicht einfach ändern können.

Diese Option gilt nur für nicht interaktive Ausführungen. Wenn Sie sie beim Starten einer interaktiven Sitzung verwenden, beendet sich die CLI mit einer Fehlermeldung. Um defaultPermissionMode in einer interaktiven Sitzung zu verwenden, nutzen Sie stattdessen assisted permissions oder die Einstellung /permissions assisted.

Wann sollte die Befehlszeilenoption verwendet werden?

In einer nicht interaktiven Ausführung steht niemand zur Beantwortung von Genehmigungsaufforderungen zur Verfügung, sodass Sie andernfalls zwischen zwei wenig attraktiven Optionen wählen müssten. Ohne Berechtigungsoptionen wird Copilot alles verweigert, was eine Genehmigung benötigt, und kann die Aufgabe häufig nicht abschließen. Mit --allow-all-tools gewähren Sie umfassende Tool-Berechtigungen ohne eine Modellsicherheitsprüfung.

--assisted-approval ist der Mittelweg. Anforderungen, mit denen Sicherheitsprüfer als sicher eingestuft werden, werden automatisch genehmigt. Wenn die Überprüfung Ihre Genehmigung erfordert, wird die Anfrage abgelehnt, und deren Begründung wird an Copilot zurückgegeben, damit sie einen anderen Ansatz ausprobieren kann. Andere Anforderungen, die noch eine Genehmigung erfordern, werden ebenfalls verweigert.

Verwenden Sie es, wenn eine unbeaufsichtigte Ausführung – in einem CI/CD-Workflow, einem geplanten Auftrag oder einem Batchskript – echte Arbeit erledigen soll, ohne Copilot bedingungslos die Berechtigung zum Ausführen eines Befehls zu erteilen.

Weitere Informationen zum programmgesteuerten Ausführen von Copilot CLI finden Sie unter Programmatisches Ausführen GitHub Copilot CLI.

Warnung

Wenn Sie erfolgreich aktiviert wurde, hat --assisted-approval Vorrang vor --allow-all-tools, aber sie ändert --allow-all-urls oder --allow-all-paths nicht. Wenn Sie sie mit --allow-all (oder --yolo) kombinieren, kann der Pfad- und URL-Zugriff weiterhin uneingeschränkt sein, obwohl assisted permissions für Toolanforderungen aktiviert ist.

Wenn assisted permissions sie nicht aktiviert werden kann – beispielsweise weil Ihre Unternehmenseinstellungen sie blockieren – schreibt die CLI eine Warnung auf stderr. Es wird keine separate --allow-all-tools Option aufgehoben, die Sie angegeben haben, sodass Toolanforderungen ohne Sicherheitsüberprüfung noch genehmigt werden können. Überprüfen Sie diese Warnung in der Ausgabe automatisierter Ausführungen.

Wie sich assisted permissions in Copilot CLI verhält

  • Das Aktivieren in einer Sitzung wirkt sich nur auf diese Sitzung aus. Wenn Sie /permissions assisted aufrufen, bleibt assisted permissions für den Rest dieser Sitzung aktiviert, es sei denn, Sie deaktivieren sie. Es wirkt sich nicht auf andere Sitzungen aus, die Sie derzeit geöffnet haben. Verwenden Sie die oben beschriebene defaultPermissionMode-Einstellung, um sie auf zukünftige Sitzungen anzuwenden.

  • Sie können jederzeit zu assisted permissions wechseln. Wenn Sie eine Sitzung mit der am freizügigsten Einstellung (--allow-all oder ihrem Alias --yolo) gestartet haben, wechseln Sie durch die Eingabe von /permissions assisted von der bedingungslosen Genehmigung zu assisted permissions.

  • Sie können die assisted permissions Funktion aktivieren, während Copilot ausgeführt wird. Sie müssen nicht warten, bis eine Aufgabe abgeschlossen ist. Nachfolgende zulässige Berechtigungsanfragen verwenden assisted permissions. Je nach vorheriger Einstellung kann dies die Anzahl der Genehmigungsanforderungen erhöhen oder verringern, die während des Vorgangs angezeigt werden.

Weiterführende Lektüre