0

Σύγκριση Αρχείων ENV

Συγκρίνετε δύο αρχεία .env (staging με production, πριν και μετά από ένα deploy) και δείτε ακριβώς ποια κλειδιά προστέθηκαν, αφαιρέθηκαν ή άλλαξαν, με τις τιμές που μοιάζουν με μυστικά να αποκρύπτονται αυτόματα.

🔒 Επεξεργάζεται εξ ολοκλήρου στο πρόγραμμα περιήγησής σας — τίποτα που εισάγετε εδώ δεν μεταφορτώνεται ποτέ.

Επεξεργασία... 0%
Ανάλυση και των δύο αρχείων
Υπολογισμός διαφορών
Απόκρυψη μυστικών
Ολοκληρώθηκε

Αποτέλεσμα

Η σύγκριση ενός αρχείου .env του staging με το production, ή της σημερινής ρύθμισης deploy με την περσινή, με το μάτι είναι ο τρόπος που ξεκινούν πραγματικές διακοπές λειτουργίας: ένα DATABASE_URL που λείπει, ένα PORT που άλλαξε αθόρυβα, ένα API key που εναλλάχθηκε σε ένα περιβάλλον αλλά όχι στο άλλο. Η επικόλληση και των δύο αρχείων σε μια γενική σύγκριση κειμένου δεν βοηθάει πολύ ούτε αυτό — σας δείχνει ποιες γραμμές διαφέρουν, όχι ποιες μεταβλητές περιβάλλοντος άλλαξαν πραγματικά, και εκτυπώνει με χαρά κάθε μυστική τιμή σε κοινή θέα τη στιγμή που μοιράζεστε το αποτέλεσμα με έναν συνάδελφο.

Αυτό το εργαλείο αναλύει και τα δύο αρχεία με τον τρόπο που το dotenv τα διαβάζει πραγματικά — ένα ζεύγος KEY=value ανά γραμμή, τα σχόλια # και οι κενές γραμμές αγνοούνται, οι τιμές με μονά ή διπλά εισαγωγικά αποκωδικοποιούνται (με το να αποκωδικοποιείται μόνο μέσα σε διπλά εισαγωγικά, ακριβώς όπως ορίζει η σύμβαση dotenv), και ένα προαιρετικό πρόθεμα export KEY=value γίνεται ανεκτό όπως το χρησιμοποιούν τα αρχεία env που προέρχονται από κέλυφος. Κάθε αρχείο γίνεται ένας καθαρός χάρτης κλειδιού-τιμής και οι δύο χάρτες συγκρίνονται στη συνέχεια ανά κλειδί: παρόν μόνο στο Αρχείο A σημαίνει 'αφαιρέθηκε', παρόν μόνο στο Αρχείο B σημαίνει 'προστέθηκε', παρόν και στα δύο με διαφορετική τιμή σημαίνει 'άλλαξε' και οι ίδιες τιμές είναι 'αμετάβλητες' και αποκρύπτονται από προεπιλογή, ώστε ο πίνακας να παραμένει εστιασμένος σε αυτό που πραγματικά διαφέρει.

Το χαρακτηριστικό που το καθιστά ασφαλές για χρήση με πραγματικά μυστικά είναι η αυτόματη απόκρυψη. Κάθε τιμή που εμφανίζεται στον πίνακα διαφορών ελέγχεται με δύο ανεξάρτητα σήματα: μοιάζει το όνομα του κλειδιού με μυστικό (αναζήτηση χωρίς διάκριση πεζών-κεφαλαίων για KEY, SECRET, TOKEN, PASSWORD, PRIVATE ή CREDENTIAL), ή έχει η ίδια η τιμή υψηλή εντροπία Shannon — το ίδιο μέτρο της θεωρίας πληροφοριών (-Σ p(c)·log2(p(c)) στους χαρακτήρες της τιμής) που υποδεικνύει τα API keys, τα tokens και τους τυχαίους κωδικούς ως στατιστικά διαφορετικά από τις συνηθισμένες λέξεις ακόμη και όταν το όνομα του κλειδιού δεν δίνει καμία ένδειξη. Οποιοδήποτε από τα δύο σήματα είναι αρκετό για να αποκρύψει μια τιμή στους δύο πρώτους και δύο τελευταίους χαρακτήρες της, υπολογισμένο ανεξάρτητα για την παλιά και τη νέα πλευρά κάθε γραμμής που άλλαξε.

Τα πάντα — ανάλυση, σύγκριση, βαθμολόγηση εντροπίας και απόκρυψη — εκτελούνται εξ ολοκλήρου στον browser σας· κανένα αρχείο, ούτε οποιαδήποτε τιμή εξαχθεί από αυτά, δεν αποστέλλεται ποτέ πουθενά. Αυτή είναι η σωστή εγγύηση για ένα εργαλείο του οποίου η αποκλειστική δουλειά είναι να εξετάζει δύο αρχεία που είναι πιθανό να περιέχουν πραγματικά διαπιστευτήρια βάσεων δεδομένων, API keys και κωδικούς πρόσβασης δίπλα-δίπλα.