효과적인 코드 서명 정책을 만들고 시행하는 방법은 무엇입니까? 내부 코드 서명 정책 가이드 작성
안정화된 서명 요구 사항에 대한 필요성이 커짐에 따라 조직과 개발팀은 소프트웨어를 보호하기 위해 강력한 서명 정책과 프로세스를 수립하고 운영해야 합니다. 공식 코드 서명 정책을 만들어 문서화하면 개발자와 엔지니어는 구축하는 소프트웨어를 보호하는 데 필요한 모범 사례를 따를 수 있습니다.
코드 서명 정책 가이드에는 어떤 내용을 포함해야 합니까?
효과적인 코드 서명 정책은 다음과 같은 사안을 비롯하여 코드 서명 키의 발급 및 사용에 필요한 가이드라인과 절차를 포함해야 합니다.
키 발급
관리 프로토콜을 수립할 때는 누가, 언제 키를 발급할 수 있는지에 대한 제어 사항과 절차를 설정해야 합니다. 팀원은 맡은 역할에 따라 키를 언제 발급하는 것이 적절한지 인지하고 있어야 합니다. 발급되는 키의 유형과 관련된 속성을 관리하면 공격 당할 잠재성을 가진 취약한 알고리즘으로 구성된 새로운 키가 발급되는 상황을 방지할 수 있습니다.
키 관리
사용자 역할에 대한 제어 사항과 절차를 설정해야 합니다. 누가 키를 관리하는지, 팀이나 조직, 프로덕션 단계에서 역할에 따라 키 관리를 어떻게 구분할 것인지 설정해야 합니다. 이러한 절차에는 조직 전반의 모든 키에 대한 위치 추적을 포함해야 합니다.
키 저장소
키는 보호되어야 합니다. 사용 여부에 관계없이 키 저장소에 대한 제어 사항과 절차를 설정해야 합니다. 여기에는 HSM, 토큰, USB 및 다중 요소 인증을 사용한 키 액세스를 포함해야 합니다. 팀원은 키를 분실하거나 잘못 저장하지 않는 방법을 알고 있어야 합니다.
서명 권한
팀원은 누가 서명 권한이 있는지, 언제 서명하는 게 적절한지 알고 있어야 합니다. 그리고 서명 권한이 부여되지 않은 경우와 권한이 담당 역할에 포함되지 않았을 때 서명을 요청하는 방법 또한 인지하고 있어야 합니다.
키 사용
키를 사용하고 사용하지 않는 방식은 올바른 서명 절차의 중요한 요소입니다. 키는 적절한 사용자가 적합한 시기에 사용해야 합니다.
키 공유 방지
키 공유는 아주 흔하게 발생하지만, 높은 위험성을 가진 관행 중 하나입니다. 팀원은 리포지토리나 내부 서버, 시스템, 네트워크 내에서도 키를 공유해서는 안 됩니다. 키는 역할에 따라 적절한 개인이 고유하게 발급, 제어 및 저장해야 합니다.
연속 서명
코드 및 소프트웨어 서명 단계를 나중으로 미뤄도 되거나 중요도가 낮은 규정 준수 단계로 취급하면 안 됩니다. 코드 보안이 정확하고 일관되게 실행되려면 모든 CI/CD 파이프라인에 CS(연속 서명)가 포함되어야 합니다.
내부 코드 서명 정책을 작성하는 방법을 포괄적으로 알아보려면 여기에서 가이드를 참조하십시오.