보안
애초에 저장할 비밀번호가 없기 때문입니다. untactit은 이미 쓰고 있는 ID 공급자로 인증합니다. 여기에는 뚫릴 비밀번호 데이터베이스 자체가 없습니다.
로그인은 Google, Microsoft, 또는 사용 중인 SAML 공급자를 거칩니다. 우리는 비밀번호를 보지도, 갖고 있지도, 전송하지도 않습니다 — 훔쳐 갈 자격 증명 테이블 자체가 없습니다.
모든 레코드에는 소속 조직이 붙어 있습니다. 쿼리는 화면에서 거르는 것이 아니라 데이터 계층에서 범위가 제한됩니다 — 필터가 누락되면 열리는 쪽이 아니라 닫히는 쪽으로 동작합니다.
누가, 무엇을, 언제, 어디서 바꿨는지. 기록은 한 번 쓰이면 다시는 고쳐지지 않습니다 — 우리도 예외가 아닙니다.
권한은 요청이 올 때마다 서버가 판정합니다. 화면은 그 판정을 비출 뿐, 스스로 판단하지 않습니다.
ID 공급자
외부에서 서비스로 들어오는 모든 연결에 TLS를 적용합니다.
벤더 자격 증명을 비롯한 민감 필드는 별도 키로 애플리케이션 계층에서 암호화합니다. 데이터베이스 덤프만으로는 내용이 드러나지 않습니다.
암호화 키에는 버전이 있습니다. 이전 버전을 읽을 수 있는 상태로 두고 새 키를 승격할 수 있어, 교체에 다운타임이나 마이그레이션 시간을 잡을 필요가 없습니다.
SSO 사용자는 저장되는 것이 없습니다. 로컬 자격 증명이 있는 경우에도 레코드마다 솔트를 붙인 PBKDF2-HMAC-SHA256 해시라 되돌릴 수 없습니다.
디스크 수준 암호화는 도난당한 드라이브까지만 막습니다. 유출된 백업이나 범위가 과한 쿼리는 막지 못합니다. 그래서 민감한 필드는 따로 암호화합니다.
감사 로그는 아무도 손대지 않았음을 증명할 수 있을 때에만 값어치가 있습니다. 저희 로그는 각 항목을 바로 앞 항목의 해시에 이어 붙입니다 — 한 줄만 고쳐도 그 뒤의 모든 줄이 검증을 통과하지 못합니다.
로그가 답하는 것
변경은 공개 인터넷에서 닿을 수 없는 개발용 번들에서 구현합니다.
문법과 심볼, 타입 검사, 실데이터 검증, 실행 동작, 보안 점검, 의존성 취약점, 그리고 자격증명이 빠져나갈 수 있는 자리에 남아 있지 않은지까지 봅니다. 하나라도 걸리면 배포되지 않습니다.
검증을 마친 번들은 명령 하나로 운영에 올라갑니다. 직전 릴리스로 되돌리는 것도 명령 하나입니다.
검토를 «누가 보고 있느냐»에 맡기지 않습니다. 고정된 기준이 거부권을 쥐고, 모든 변경에서 돌아가며, 지치지 않습니다.
어떤 제품이든 그 안에서 돌아가는 것 대부분은 남이 쓴 코드입니다. 저희는 저희 몫의 자재명세서를 유지하고, 공개 취약점 데이터베이스와 대조합니다.
뭔가 발견하셨다면 보안 연락처로 보내주세요. 접수 사실을 알려드리고, 어떻게 대응하는지 함께 전해드립니다.
고객 데이터에 손대는 다른 주체
연결한 툴은 고객사의 자격 증명과, 고객사가 그 벤더와 맺은 계약 아래에서 동작합니다. 저희의 하위 수탁자가 아닙니다. 저희 쪽 수탁자를 추가할 때는 30일 전에 알려드립니다.
보안 페이지에는 보통 인증 목록이 걸립니다. 여기에는 우리가 실제로 어디까지 왔는지를 적습니다.
이 페이지에 담지 않은 상세는 NDA 하에 제공합니다 — CAIQ v4 자가진단서 261문항 전량, 아키텍처와 데이터 흐름 문서, 하위 처리자 목록, 그리고 DPA 입니다. 보안 검토자는 전체 그림을 받습니다. 다만 그것을 공개 인터넷에 올려 두지 않을 뿐이고, 고객 데이터에 적용하는 기준과 같습니다.
보안 문의, 취약점 제보, DPA 요청 — 연락 주세요. 보안 메일에는 영업 메일보다 먼저 답합니다.