0

ENV 차이 검사기

두 개의 .env 파일(스테이징과 프로덕션, 배포 전과 배포 후)을 비교하고 비밀처럼 보이는 값이 자동으로 마스킹되어 추가, 제거 또는 변경된 키를 정확히 확인하세요.

Buy Me a Coffee at ko-fi.com
처리 중... 0%
두 파일 모두 구문 분석
컴퓨팅 차이
마스킹 비밀
완료

결과

스테이징 .env 파일을 프로덕션 파일과 비교하거나 오늘의 배포 구성을 지난 주 파일과 비교하면 실제 중단이 어떻게 시작되는지 알 수 있습니다. 즉, 누락된 DATABASE_URL, 조용히 변경된 PORT, 한 환경에서는 순환되었지만 다른 환경에서는 순환되지 않은 API 키입니다. 두 파일을 일반 텍스트 diff에 붙여넣는 것도 큰 도움이 되지 않습니다. 실제로 어떤 환경 변수가 변경되었는지가 아니라 어떤 줄이 다른지 보여주고 출력을 팀원과 공유하는 순간 모든 비밀 값을 눈에 잘 띄게 인쇄합니다.

이 도구는 dotenv가 실제로 읽는 방식으로 두 파일을 모두 구문 분석합니다. 한 줄에 하나의 KEY=value 쌍, # 주석 및 빈 줄은 무시되고, 작은 따옴표 또는 큰 따옴표로 묶인 값은 따옴표가 없습니다(dotenv 규칙이 지정하는 대로 큰 따옴표 안에만 \n 이스케이프되지 않음). 선택적 내보내기 KEY=value 접두사는 쉘 소스 env 파일이 사용하는 방식을 허용합니다. 각 파일은 깔끔한 키-값 맵이 되고 두 맵은 키별로 다릅니다. 파일 A에만 존재하는 것은 '제거'되고, 파일 B에만 존재하는 것은 '추가'되고, 두 파일 모두에 다른 값이 있는 것은 '변경'되며, 동일한 값은 기본적으로 '변경되지 않고' 숨겨지므로 테이블은 실제로 다른 것에 초점을 유지합니다.

이것을 실제 비밀과 함께 실제로 사용할 수 있도록 안전하게 만드는 기능은 자동 마스킹입니다. diff 테이블에 표시된 모든 값은 두 개의 독립적인 신호에 대해 확인됩니다. 키 이름이 비밀(KEY, SECRET, TOKEN, PASSWORD, PRIVATE 또는 CREDENTIAL과 대소문자를 구분하지 않음)처럼 보이는지, 아니면 값 자체가 높은 Shannon 엔트로피를 갖고 있는지(값의 문자에 대한 동일한 정보 이론적 척도(-Σ p(c)·log2(p(c)))) API 키, 토큰 및 임의 비밀번호를 통계적으로 다른 것으로 표시합니다. 키 이름에 힌트가 없더라도 일반적인 단어입니다. 두 신호 중 하나는 변경된 모든 행의 이전 및 새 측면에 대해 독립적으로 계산된 첫 번째 및 마지막 두 문자까지 값을 마스킹하는 데 충분합니다.

구문 분석, 비교, 엔트로피 점수 매기기, 마스킹 등 모든 것이 브라우저에서 완전히 실행됩니다. 파일이나 그 파일에서 추출된 값은 어디에도 전송되지 않습니다. 이는 실제 데이터베이스 자격 증명, API 키 및 비밀번호가 나란히 포함될 가능성이 있는 두 개의 파일을 살펴보는 전체 작업을 수행하는 도구에 대한 올바른 보장입니다.