0

ENV Diff Checker

Sammenlign to .env-filer (staging vs. produksjon, før vs. etter en distribusjon) og se nøyaktig hvilke nøkler som ble lagt til, fjernet eller endret, med hemmelige verdier maskert automatisk.

Buy Me a Coffee at ko-fi.com
Behandler... 0%
Parser begge filene
Beregningsdiff
Maskering av hemmeligheter
Ferdig

Resultat

Å sammenligne en iscenesettelse .env-fil med produksjon, eller dagens distribusjonskonfigurasjon med forrige ukes, er hvordan reelle utfall starter: en manglende DATABASE_URL, en PORT som stille endret seg, en API-nøkkel som ble rotert i ett miljø, men ikke det andre. Det hjelper heller ikke mye å lime inn begge filene i en generisk tekstdiff – den viser deg hvilke linjer som er forskjellige, ikke hvilke miljøvariabler som faktisk endret seg, og den skriver gjerne ut hver hemmelig verdi i det øyeblikket du deler utdataene med en lagkamerat.

Dette verktøyet analyserer begge filene slik dotenv faktisk leser dem - ett KEY=verdipar per linje, # kommentarer og tomme linjer ignorert, enkelt- eller dobbeltanførselsverdier uten anførselstegn (med \n ikke escaped kun innenfor doble anførselstegn, nøyaktig slik dotenv-konvensjonen spesifiserer), og et valgfritt eksport KEY=verdi-prefiks tolererte måten shell-sourcer brukte det på. Hver fil blir et rent nøkkel-til-verdi-kart, og de to kartene er så forskjellige med nøkkel: bare tilstede i fil A er 'fjernet', tilstede bare i fil B er 'lagt til', tilstede i begge med en annen verdi er 'endret', og identiske verdier er 'uendret' og skjult som standard slik at tabellen forblir fokusert på hva som faktisk skiller seg.

Funksjonen som gjør dette trygt å faktisk bruke med ekte hemmeligheter er automatisk maskering. Hver verdi som vises i diff-tabellen blir sjekket mot to uavhengige signaler: ser nøkkelnavnet ut som en hemmelighet (et ufølsomt samsvar mot KEY, SECRET, TOKEN, PASSWORD, PRIVATE eller CREDENTIAL), eller har verdien i seg selv høy Shannon-entropi - det samme informasjonsteoretiske målet (-Σ p(c)·log2) som verdier, flagger og API-tegn) tilfeldige passord er statistisk forskjellige fra vanlige ord selv når nøkkelnavnet ikke gir noen hint. Begge signalene er nok til å maskere en verdi ned til de første og to siste tegnene, beregnet uavhengig for den gamle og nye siden av hver endrede rad.

Alt – analysering, diffing, entropi-scoring og maskering – kjører utelukkende i nettleseren din; verken fil, eller noen verdi hentet fra dem, sendes noen gang noe sted. Det er den riktige garantien for et verktøy hvis hele jobben er å se på to filer som sannsynligvis inneholder ekte databaselegitimasjon, API-nøkler og passord side om side.