서버도 값을 모릅니다
비밀값은 브라우저 안에서 암호화된 뒤에 서버로 갑니다. 서버에는 암호문만 남고, 서버가 통째로 털려도 값은 나오지 않습니다.
데이터베이스 비밀번호, API 키, 서명 키. 프로젝트가 늘수록 비밀값은 흩어집니다. KEY 는 듀오랩스가 고객의 비밀값을 맡아 두는 방식이고, 말로 설명하는 대신 직접 열어 볼 수 있게 했습니다.
사람이 쓰는 값도, 배포가 쓰는 값도 같은 곳에서 나갑니다. 값은 한 벌이고, 가리키는 곳만 여럿입니다.
비밀값은 브라우저 안에서 암호화된 뒤에 서버로 갑니다. 서버에는 암호문만 남고, 서버가 통째로 털려도 값은 나오지 않습니다.
원천은 한 곳에만 있고 프로젝트는 그것을 가리킵니다. 비밀번호를 한 번 바꾸면 그것을 쓰는 모든 프로젝트가 따라옵니다.
값을 꺼내 본 것, 고친 것, 지운 것이 모두 기록됩니다. 담당자가 바뀌어도 값은 메신저와 메모장에 흩어지지 않습니다.
인증 마크가 아니라 코드에 있는 것만 적습니다
값은 필요한 모양으로 나갑니다. .env 파일, Docker 환경 파일, JSON 으로 내려받고, 터미널에서는 가져오기·비교·실행을, 배포처에는 GitHub Actions 와 Vercel 로 밀어 넣습니다. 어디로 나가든 원천은 한 곳입니다.
비밀값 사고는 대개 암호가 뚫려서가 아니라, 값이 어디에 몇 벌 있는지 아무도 몰라서 납니다.
묶음 하나가 몇 개 환경에 붙어 있는지 목록에서 바로 보입니다. 바꿀 곳을 세지 않습니다.
개발과 운영은 주소만 다릅니다. 다른 부분만 덮어쓰고 비밀번호는 복사하지 않습니다.
사람이든 배포 도구든, 값을 꺼낸 일은 누가 언제 했는지와 함께 남습니다.
환경마다 어떤 묶음이 붙어 있는지 한눈에 봅니다. 프로젝트 폴더 속 .env 를 뒤지지 않습니다.
백업이 있는지만 묻지 않고, 마지막으로 되살려 본 날을 적습니다. 한 번도 안 해본 백업은 경고로 뜹니다.
새 담당자에게 값을 복사해 보내지 않습니다. 볼트를 열 수 있는 사람을 바꾸면 되고, 떠난 사람이 무엇을 봤는지는 기록에 있습니다.
어느 프로젝트가 그 값을 쓰는지 찾아다니지 않습니다. 원천을 고치면 그것을 가리키는 환경 전부에 같은 값이 나갑니다.
변수 이름 하나로 그것이 어느 원천에서 와서 어느 프로젝트로 가는지 따라갑니다. 바꿔야 할 범위를 추측하지 않습니다.
열쇠까지
책임집니다
만드는 것에서 끝나지 않습니다. 굴리는 데 필요한 열쇠까지 같은 기준으로 맡습니다.