Beschrijf GitHub als het systeem van record- en besturingsvlak
Agentische systemen hebben een omgeving nodig die meer doet dan code opslaan. Ze hebben een omgeving nodig die intenties kan vastleggen, acties kan vastleggen, validatie kan afdwingen en beleid kan toepassen. In dit leertraject is GitHub die omgeving.
In deze eenheid leer je
Wat het betekent dat GitHub fungeert als een recordsysteem voor agentwerkstromen
Hoe GitHub controle afdwingt via opslagplaatsbeleid en -werkstromen
Welke GitHub besturingselementen worden gebruikt om het gedrag van agents te controleren en te beperken
GitHub als recordsysteem
GitHub is het recordsysteem omdat hiermee de artefacten worden opgeslagen waarmee ontwikkelwerkzaamheden worden voorgesteld en geëvalueerd:
Opslagplaatsen en vertakkingen
Doorvoeringen en pull-aanvragen
Problemen en discussies (context en intentie)
Werkstroomuitvoeringen en artefacten (bewijsmateriaal)
Geschiedenis van besluiten bekijken
In een agentische werkstroom doen deze artefacten dubbele plicht: ze ondersteunen ontwikkeling en zorgen ervoor dat agentgedrag na het feit kan worden geïnspecteerd.
Note
Deze module is gericht op algemene GitHub governancepatronen. GitHub Geavanceerde beveiligingsfuncties, zoals geheim scannen en pushbeveiliging, worden hier niet behandeld, maar kunnen worden geïntegreerd als aanvullende validatiesignalen in productieomgevingen.
GitHub als controlevlak
GitHub is het besturingsvlak, omdat het (wanneer geconfigureerd door beleid) afdwingingspunten biedt die bepalen wat bijdragen van agents wel en niet kunnen doen.
Besturingselementen in één oogopslag
| GitHub control | Wat het afdwingt | Waarom het belangrijk is voor agenten |
|---|---|---|
| Pull-aanvragen | Wijzigingen worden voorgesteld voordat u samenvoegt | Maakt het werk van de agent controleerbaar en bespreekbaar |
| Vereiste beoordelingen | Goedkeuringspoort voor mens en agent | Voorkomt niet-bekeken samenvoegingen en ondersteunt verantwoording |
| Vereiste statuscontroles | CI-bewijs vóór het samenvoegen | Converteert evaluatie naar afdwingbaar beleid |
| CODEOWNERS | Routering per pad controleren | Zorgt ervoor dat de juiste experts toezicht houden op wijzigingen met een hoge impact |
| Regelsets/vertakkingsbeveiliging | Gecentraliseerd vertakkingsbeleid | Voorkomt onveilige samenvoegingen en dwingt consistente kaders af |
| Environments | Goedkeuringen voor implementaties/geheimen | Besturingselementen voor gevoelige uitvoering en geheime toegang |
Note
Dit afdwingingsgedrag is afhankelijk van configuratie en machtigingen. Het inschakelen van vereiste controles en regelsets is bijvoorbeeld meestal een beheerderstaak. Het toezichtmodel werkt overal; afdwingen vereist dat de besturingselementen worden ingeschakeld.
GitHub Actions behoort tot het besturingsvlak
Werkstromen zijn waar de uitvoering wordt gevalideerd, maar machtigingen zijn net zo belangrijk als controles. Een belangrijk beveiligingsprincipe is minimale bevoegdheden:
Stel de standaardmachtigingen voor werkstroomtoken conservatief in (bijvoorbeeld alleen-lezen indien mogelijk).
Verlenen alleen hogere machtigingen aan de taken die ze nodig hebben.
Gebruik omgevingen en goedkeuringen om de toegang tot gevoelige geheimen en implementaties te beheren.
Voor agentische systemen vermindert 'wat de agent kan doen' vaak tot 'wat de werkstroomtoken en hulpprogrammareferenties kunnen doen'. Besturingselementen en machtigingen moeten dienovereenkomstig worden ontworpen.
Implementatievoorbeelden
Werkstroomuitvoering wordt door mensen beheerst In sommige agent PR-werkstromen moet een mens mogelijk expliciet werkstromen goedkeuren (bijvoorbeeld een actie "Werkstromen goedkeuren en uitvoeren"). Dit is een ingebouwde beveiliging: het vermindert het risico dat geprivilegeerde werkstromen automatisch worden uitgevoerd voor onbetrouwbare wijzigingen.
Omgevingen poortgeheimen en implementaties Als een werkstroomtaak is gericht op een omgeving met de vereiste revisoren, wacht de taak totdat goedkeuring is verleend. Hiermee voorkomt u dat een door een agent geactiveerde werkstroom toegang krijgt tot beveiligde geheimen of wordt geïmplementeerd zonder menselijke beoordeling (wanneer deze is geconfigureerd).
Beoordelingen van CODEOWNERS-routes voor paden met een hoog risico Als de agent bestanden in een gevoelig pad wijzigt (bijvoorbeeld .github/workflows/ of infra/), kan CODEOWNERS automatisch een beoordeling aanvragen bij de eigenaren van deze paden. In combinatie met de vereiste beoordelingen helpt dit ervoor te zorgen dat de juiste experts toezicht houden op belangrijke wijzigingen.
Hoe GitHub in de praktijk controle afdwingt
De agent opent een pull request met een beveiligingsfix. GitHub:
De wijziging in de pull request zichtbaar maken
Stuurt naar de juiste beoordelaars via CODEOWNERS (indien geconfigureerd)
Evalueert het middels vereiste verificaties en werkprocessen.
Blokkeert samenvoegen totdat aan beleidsvereisten wordt voldaan (indien geconfigureerd)
Hiermee voorkomt u toegang tot beveiligde omgevingsgeheimen totdat goedkeuringen worden verleend (indien geconfigureerd)
Dit is wat het betekent om te zeggen GitHub het besturingsvlak is: het is waar afdwinging plaatsvindt.
GitHub is niet alleen de plek waar het werk van agents wordt opgeslagen. Het is de plaats waar het werk van de agent wordt gecontroleerd, gevalideerd en beheerd. Opslagplaatsen en pull-aanvragen maken werk zichtbaar; controles, beoordelingen, CODEOWNERS, regelsets, vertakkingsbeveiliging en omgevingen maken werkbeheerbaar.
Nu u hebt gezien hoe GitHub het gedrag van agents kunt beperken en valideren, is de volgende stap het onderzoeken van de verantwoordelijkheid. In de volgende les bekijkt u wie verantwoordelijk blijft wanneer agents in een werkstroom handelen.