Διαδρομή 03Μάθημα 2 / 6

Περιορίστε την εξουσιοδότηση ενός agent

Ορίστε επιτρεπόμενες ενέργειες, πόρους και συνθήκες. Επαληθεύστε τα δικαιώματα έξω από το μοντέλο και διαχωρίστε την υλοποίηση από τη διάθεση.

Πρακτικό επίπεδο9 minΕλέγχθηκε

Εκδότης Πώς γράφουμε

Ελέγξτε τι κατανοήσατεΔίνετε οδηγία σε έναν agent να επεξεργαστεί ένα branch, αλλά το token του μπορεί να κάνει push στο προεπιλεγμένο branch. Ποιο είναι το πραγματικό όριο;Κάντε την άσκηση
Δίνετε οδηγία σε έναν agent να επεξεργαστεί ένα branch, αλλά το token του μπορεί να κάνει push στο προεπιλεγμένο branch. Ποιο είναι το πραγματικό όριο;

Τι θα μάθετε

  • Εκφράστε ένα δικαίωμα ως ενέργεια, πόρο και συνθήκη.
  • Διαχωρίστε την έγκριση εργασίας από την εξουσιοδότηση εκτέλεσης.
  • Δοκιμάστε ότι μια απαγορευμένη ενέργεια απορρίπτεται.

Περιγράψτε την εργασία πριν παραχωρήσετε πρόσβαση

Ένας agent που διαβάζει κώδικα χρειάζεται διαφορετική εξουσιοδότηση από έναν agent που κάνει deployment υπηρεσίας. Μην παραχωρείτε και τα δύο σύνολα δικαιωμάτων επειδή το ίδιο προϊόν υποστηρίζει και τις δύο ενέργειες.

Χρησιμοποιήστε τρία μέρη για να ορίσετε την εξουσιοδότηση: μια ενέργεια, έναν πόρο και μια συνθήκη. Για μια πλασματική διόρθωση αναφοράς, ο agent μπορεί να γράφει σε ένα feature branch όσο η εργασία είναι ενεργή. Μπορεί να διαβάζει εγκεκριμένα αρχεία αποθετηρίου. Δεν μπορεί να τροποποιεί δεδομένα παραγωγής ή κανόνες προστασίας αποθετηρίου.

Απαιτούμενη ενέργειαΠαράδειγμα ορίου
Εξέταση κώδικαΑνάγνωση του επιλεγμένου αποθετηρίου
Εκτέλεση ελέγχωνΧρήση απομονωμένου περιβάλλοντος με πλασματικά fixtures
Προετοιμασία αλλαγήςΕγγραφή στο branch της εργασίας
Αίτημα ανασκόπησηςΆνοιγμα PR χωρίς merge
Διάθεση λογισμικούΧρήση ξεχωριστής προστατευμένης διαδικασίας deployment

Ο ακριβής μηχανισμός επιβολής εξαρτάται από το εργαλείο. Αν ένα token δεν μπορεί να εκφράσει περιορισμό branch, χρησιμοποιήστε πρόσθετους ελέγχους αποθετηρίου ή υπηρεσία εκτέλεσης. Τεκμηριώστε με ειλικρίνεια την εξουσιοδότηση που παραμένει.

Επιβάλετε το όριο έξω από το μοντέλο

Ένα prompt δεν είναι σύστημα ελέγχου πρόσβασης. Το συστατικό εκτέλεσης πρέπει να ελέγχει τη ζητούμενη ενέργεια και τον στόχο με βάση τα τρέχοντα δικαιώματα. Δεν πρέπει να αποδέχεται τη δήλωση του μοντέλου ότι υπάρχει ήδη έγκριση.

Η AWS συνιστά περιορισμένα δικαιώματα και προσωρινά διαπιστευτήρια για κατάλληλα workloads. Το OWASP εφαρμόζει παρόμοια λογική ελάχιστων προνομίων στους agents και στα εργαλεία τους. Αυτές οι αρχές απαιτούν υλοποίηση στα πραγματικά συστήματα ταυτοτήτων και εκτέλεσης. Οδηγίες AWS IAM, οδηγίες OWASP για agents.

Χρησιμοποιήστε διαπιστευτήρια μικρής διάρκειας όπου υποστηρίζονται. Κρατήστε τα άσχετα μυστικά έξω από το περιβάλλον. Μια εργασία αποθετηρίου μόνο για ανάγνωση δεν πρέπει να κληρονομεί κωδικό βάσης δεδομένων παραγωγής από το shell του προγραμματιστή.

Συνδέστε την έγκριση με την πραγματική ενέργεια

Η έγκριση προετοιμασίας μιας αλλαγής δεν συνεπάγεται έγκριση deployment. Μια απόφαση deployment πρέπει να προσδιορίζει το artifact, το περιβάλλον-στόχο και τις σχετικές συνθήκες. Αν αυτά αλλάξουν, η προηγούμενη απόφαση μπορεί να μην ισχύει πλέον.

Εξετάστε έναν agent που προτείνει ασφαλή ανάγνωση βάσης δεδομένων, αλλά εκτελεί διαφορετικό ερώτημα αφού λάβει έγκριση. Ένας χρήσιμος μηχανισμός έγκρισης ελέγχει την ενέργεια που πραγματικά εκτελείται. Ένα γενικό μήνυμα «συνεχίστε» χωρίς ορισμένο στόχο μπορεί να κρύβει αυτή τη διαφορά.

Διαχωρίστε επίσης την ταυτότητα από τη δυνατότητα. Καταγράψτε ποιο άτομο ή workload ξεκίνησε την εκτέλεση. Επαληθεύστε ότι η ταυτότητα που την ξεκίνησε εξακολουθεί να έχει δικαίωμα όταν πραγματοποιείται η ενέργεια. Η αφαίρεση πρόσβασης ενός ατόμου πρέπει να έχει ρητή επίδραση στην εργασία που βρίσκεται σε ουρά.

Δοκιμάστε μια απόρριψη και μια διακοπή

Επαληθεύστε περισσότερα από την επιτυχή διαδρομή. Σε απομονωμένο περιβάλλον δοκιμών, επιχειρήστε ενέργεια έξω από τον επιτρεπόμενο πόρο. Επιβεβαιώστε ότι το σύστημα εκτέλεσης την απορρίπτει. Εξετάστε το συμβάν audit χωρίς να καταγράφετε διαπιστευτήρια.

Έπειτα δοκιμάστε ακύρωση ή λήξη διαπιστευτηρίων. Προσδιορίστε ποια εργασία σταματά αμέσως και ποια ενέργεια μπορεί να ολοκληρωθεί. Ένα κουμπί διακοπής δεν αντιστρέφει απαραίτητα μια ενέργεια που έχει ήδη φτάσει σε άλλο σύστημα.

Κρατήστε μια μικρή καταγραφή δικαιωμάτων μαζί με την εργασία. Συμπεριλάβετε τον υπεύθυνο, την εγκεκριμένη έκταση, τους πραγματικούς ελέγχους, τη δοκιμή απόρριψης και τη λήξη. Αυτό κάνει μια μεταγενέστερη ανασκόπηση αρκετά συγκεκριμένη ώστε να βελτιώσει τη ροή εργασίας.

Κάντε την άσκηση

Ορίστε δικαιώματα για agent που διορθώνει ένα φίλτρο αναφοράς. Καταγράψτε τρεις επιτρεπόμενες και τρεις απαγορευμένες ενέργειες. Συμπεριλάβετε αποθετήριο, branch, περιβάλλον και λήξη. Περιγράψτε πώς θα δοκιμάσετε κάθε απόρριψη χωρίς να αλλάξετε την παραγωγή.

Λήψη φύλλου εργασίας (Markdown)
Ελέγξτε τι κατανοήσατε ↑

Συνεχίστε τη μάθηση

Πηγές και πρόσθετη μελέτη

Σχετικό υλικό από την Taiga

← Προηγούμενο μάθημα: Ορίστε πού μπορούν να πάνε τα δεδομένα σας