
Το GitHub μπλοκάρει ασύμβατες άδειες — μόνο με Code Security

Στις 16 Οκτωβρίου 2026, το GitHub ανακοίνωσε τη γενική διαθεσιμότητα της λειτουργίας open source license compliance για πελάτες GitHub Enterprise Cloud, μαζί με τις εγκαταστάσεις διαμονής δεδομένων. Στα αποθετήρια απαιτείται ενεργό GitHub Code Security. Όταν ένα ενεργό branch ruleset απαιτεί αποτέλεσμα ελέγχου αδειών, ένα pull request που εισάγει εξάρτηση εκτός εταιρικής πολιτικής μπορεί να σταματήσει πριν από τη συγχώνευση.
Η ανάλυση του Beyond the News καταγράφει ότι η κυκλοφορία συνδυάζει τον έλεγχο στο merge με διαχείριση εξαιρέσεων και REST API για έλεγχο πακέτων πριν επιλεγούν ως εξαρτήσεις. Για μια ομάδα ανάπτυξης, η ουσιαστική αλλαγή είναι η θέση της απόφασης: η άδεια ελέγχεται όσο η αλλαγή βρίσκεται ακόμη στο pull request. Η δυνατότητα αφορά την εταιρική συνδρομή και τα αποθετήρια στα οποία έχει ενεργοποιηθεί το Code Security.
Τι ελέγχεται σε κάθε pull request
Η τεκμηρίωση διαμόρφωσης του GitHub ορίζει ως προϋπόθεση τον ενεργό dependency graph και περιγράφει έλεγχο τόσο των άμεσων όσο και των μεταβατικών εξαρτήσεων. Το έναυσμα είναι η αλλαγή σε package manifest μέσα σε pull request. Το GitHub συγκρίνει τις αλλαγές εξαρτήσεων ανάμεσα στον βασικό κλάδο και στον κλάδο της προτεινόμενης αλλαγής, αντιπαραβάλλει τις άδειες που εντοπίζει με την ισχύουσα πολιτική και σημειώνει τις παραβιάσεις στο pull request.
- Μια αλλαγή σε package manifest προσθέτει ή τροποποιεί εξάρτηση και υποβάλλεται ως pull request.
- Ο dependency graph αναδεικνύει τις νέες ή αλλαγμένες εξαρτήσεις, μαζί με όσες εισάγονται έμμεσα μέσω άλλου πακέτου.
- Ο έλεγχος αδειών συγκρίνει τις εντοπισμένες άδειες με την πολιτική που ισχύει για το συγκεκριμένο αποθετήριο.
- Το αποτέλεσμα εμφανίζεται ως παρατήρηση. Με ενεργό κανόνα που απαιτεί συμμόρφωση, η ανεπίλυτη παραβίαση εμποδίζει το merge.
Ένα υποθετικό παράδειγμα δείχνει γιατί έχει σημασία ο έμμεσος έλεγχος: μια ενημέρωση βιβλιοθήκης μπορεί να φέρει νέα μεταβατική εξάρτηση, παρότι ο προγραμματιστής δεν την πρόσθεσε ρητά στο manifest. Αν η άδειά της δεν περιλαμβάνεται στις επιτρεπόμενες, η παρατήρηση εμφανίζεται στο pull request της ενημέρωσης. Η ομάδα μπορεί να αλλάξει το πακέτο, να τροποποιήσει την πολιτική όπου αυτό δικαιολογείται ή να ζητήσει εξαίρεση. Η σύγκριση αφορά την αλλαγή εξαρτήσεων που φέρνει το pull request, όχι αυτοτελή νομική έγκριση όλου του κώδικα του αποθετηρίου.
Από το Evaluate στο Active ανά αποθετήριο
Η εταιρική πολιτική μπορεί να ισχύει σε πολλά αποθετήρια, αλλά ο φραγμός δεν χρειάζεται να ενεργοποιηθεί σε όλα ταυτόχρονα. Το GitHub επιτρέπει rulesets σε επίπεδο επιχείρησης, οργανισμού ή αποθετηρίου. Για σταδιακή εφαρμογή, η τεκμηρίωση προτείνει μια προσαρμοσμένη ιδιότητα αποθετηρίου με τιμές inactive, evaluate και active, μαζί με χωριστά rulesets που στοχεύουν τις αντίστοιχες τιμές. Πρόκειται για τρόπο οργάνωσης που ρυθμίζει ο διαχειριστής, όχι για αυτόματη μετάβαση των αποθετηρίων.
Στο Evaluate, ο έλεγχος τρέχει και προσθέτει παρατηρήσεις, ενώ το συγκεκριμένο ruleset δεν απαιτεί την άρση τους για να γίνει merge. Έτσι φαίνεται ποια ενημέρωση εξάρτησης συγκρούεται με την πολιτική πριν η σύγκρουση γίνει εμπόδιο στη ροή εργασίας. Στο Active, το ruleset με την απαίτηση αποτελέσματος κρατά το pull request εκτός merge έως ότου αντιμετωπιστούν οι παραβιάσεις. Οι υπόλοιποι απαιτούμενοι έλεγχοι του αποθετηρίου εξακολουθούν να ισχύουν και στους δύο τρόπους.
Μια υποθετική μετάβαση ξεκινά με αποθετήρια χαρακτηρισμένα inactive όσο διαμορφώνεται η βασική πολιτική, συνεχίζει με evaluate για να εμφανιστούν πραγματικές παρατηρήσεις και μεταφέρει επιλεγμένα αποθετήρια σε active αφού οριστεί ποιος αποφασίζει για τις εξαιρέσεις. Η τιμή της προσαρμοσμένης ιδιότητας καθορίζει ποιο ruleset τα στοχεύει. Αυτό επιτρέπει στην ομάδα να αντιμετωπίσει τις διαφωνίες για τις άδειες στα συγκεκριμένα πακέτα που τις προκαλούν, χωρίς να επιβάλει την ίδια στιγμή φραγμό σε κάθε ενημέρωση εξάρτησης της επιχείρησης.
Ποιος μπορεί να άρει μια παραβίαση
Η πολιτική ξεκινά από έναν εταιρικό κατάλογο επιτρεπόμενων αδειών. Οι διαχειριστές μπορούν να επιλέξουν άδειες από την ενσωματωμένη λίστα ή να καταχωρίσουν αναγνωριστικά SPDX, και οι εξαιρέσεις συμπληρώνουν αυτή τη βάση. Όταν εμφανιστεί παρατήρηση, ο προγραμματιστής μπορεί πρώτα να αντικαταστήσει την εξάρτηση. Αν χρειάζεται να τη διατηρήσει, υποβάλλει αίτημα άρσης της ειδοποίησης με τις πληροφορίες που ζητά το GitHub· η παρατήρηση από μόνη της δεν δημιουργεί αίτημα εξαίρεσης.
Τα αιτήματα εξετάζονται από πρόσωπα ή ομάδες με τον ρόλο Enterprise Open-Source License Manager, που μπορούν να εγκρίνουν ή να απορρίψουν την εξαίρεση. Αν εγκριθεί, η εξαίρεση μπορεί να αφορά πακέτο, άδεια ή μοτίβο πακέτων και να ισχύει για ένα αποθετήριο ή σε επίπεδο επιχείρησης. Η σχετική ειδοποίηση κλείνει και το pull request αποδεσμεύεται εφόσον δεν αποτυγχάνει άλλος απαιτούμενος έλεγχος. Οι διαχειριστές λαμβάνουν ειδοποιήσεις για εκκρεμή αιτήματα, ενώ οι αλλαγές πολιτικής καταγράφονται στο audit log, ώστε να είναι ορατό πότε άλλαξε η βάση της απόφασης.
Η απόφαση μπορεί να προηγηθεί του merge
Τα νέα REST API επιτρέπουν τη λήψη, ενημέρωση και αντικατάσταση της εταιρικής πολιτικής. Ξεχωριστό endpoint μπορεί να ελέγξει αν υποψήφια πακέτα θα παραβίαζαν την πολιτική πριν προστεθούν στις εξαρτήσεις ενός αποθετηρίου. Έτσι, ένα εσωτερικό εργαλείο επιλογής πακέτων ή ένας coding agent μπορεί να λάβει αποτέλεσμα συμμόρφωσης πριν προτείνει την αλλαγή. Ο έλεγχος στο pull request παραμένει το σημείο όπου η πολιτική επιβάλλεται στη συγκεκριμένη αλλαγή που πρόκειται να συγχωνευθεί.
Ο αυτοματισμός στηρίζεται στα δεδομένα εξαρτήσεων, στις άδειες που έχουν αναγνωριστεί και στους κανόνες που επέλεξε η επιχείρηση. Η κατηγοριοποίηση της ενσωματωμένης λίστας αδειών έχει πληροφοριακό χαρακτήρα: μια πράσινη ένδειξη συμμόρφωσης με την εταιρική πολιτική δεν λύνει από μόνη της ζητήματα όπως οι υποχρεώσεις διανομής ή η καταλληλότητα μιας άδειας για συγκεκριμένη χρήση. Αυτά χρειάζονται νομική αξιολόγηση όταν προκύπτουν. Στα αποθετήρια με Active ruleset, η απόφαση για μια αναγκαία εξαίρεση επηρεάζει πλέον άμεσα το πότε μπορεί να συγχωνευθεί μια ενημέρωση εξάρτησης.
Διαβάστε επίσης:
Σχετικά άρθρα


Cursor ή GitHub Copilot: τα agent tasks αλλάζουν την τιμή εισόδου

Cursor ή GitHub Copilot: οι σύνθετες αλλαγές έχουν άλλη τιμή

Claude Code ή Codex: το είδος εργασίας μετρά περισσότερο από το σκορ

Το GitHub κόβει 86% από τον χρόνο σάρωσης μυστικών — αλλά όχι από κάθε έλεγχο

GitHub ή GitLab: τα δωρεάν CI λεπτά κρύβουν διαφορετικό κόστος
Εγγραφείτε στο newsletter μας
Λάβετε τα τελευταία νέα για Web3, AI και κρυπτονομίσματα απευθείας στα εισερχόμενά σας.