2009-08-25 4 views
5

코드 서명과 관련하여 몇 가지 모범 사례를 알고 싶습니다. Eclipse 기반 응용 프로그램이 있으며 플러그인에 서명하는 것이 적절하다고 생각합니다.코드 빌드 프로세스의 일부로 서명

  • 가/개인 키 소스 제어에 있어야합니다 수 :이 질문을 많이 제기?

  • 야간 빌드 과정 의 일부로 코드에 서명해야합니까? 아니면 출시 절차 중 부분으로 코드에 서명해야합니까?

  • 코드에 자동으로 서명해야합니까, 아니면 수동 단계 여야하는 이유가 있습니까?

내 성향은 "예", "야간"및 "자동"이지만 릴리스 제품에만 서명하는 것에 대한 논점을 볼 수 있습니다. SQA가 코드를 확인한 후 SQA가 코드에 서명해야한다고 주장 할 수도 있습니다.하지만 실제로 릴리스 프로세스가 엉망이 되더라도 말입니다.

어떻게 다른 사람들이 이것을 관리합니까?

답변

7

개인 키가 얼마나 안전 할 것인가에 따라, 소스 액세스 권한을 가진 임시 직원이 전체 액세스 권한을 갖기를 원하는 것이 아닐 수도 있습니다. 내 작품에서

, 우리가 다음을 수행하십시오

"테스트 기호"바이너리를 우리의 일상의 한 부분으로하면 키를 확인하여 작성합니다. 이를 위해서는 바이너리를 트러스트하기 위해 테스트 루트 인증서가 기계 상에 있어야하지만 비트가 회사 외부에 배포되는 경우 신뢰되지 않습니다.

주간 (외부 릴리스의 경우) 실제 키로 서명합니다. 이는 별도의 약간 수동 프로세스를 통해 수행됩니다. 소수의 사람들 만이 제품에 사인 할 수있는 열쇠에 접근 할 수 있습니다.

3

나는 이것이 큰 회사에서 어떻게 이루어 졌는지 알 수 있습니다. 개별 개발자가 코드를 작성할 수는 있지만 서명 할 수는 없습니다. 그것은 개인적인 건축물이 될 것입니다. Contiguos 통합 머신은 회사 인증 기관 (즉, 회사 내에서만 신뢰할 수있는 키)에 의해 서명 된 테스트 키가 될 빌드 머신 키 저장소에 저장된 키로 서명 된 야간 빌드를 삭제합니다. 공식 빌드는 통제 된 컴퓨터에서만 서명 할 수 있으며 공식적인 글로벌 인증 기관이 서명하고 서명 된 키는 통제 된 액세스 룸의 하드웨어 모듈에 저장됩니다.

개인 키는 실제로 세계에서 단 하나의 복사본 만 가져야한다는 개념입니다 (에스크로의 경우 최대 하나). 열쇠의 전체 가치는 다른 것에서가 아니라 개인 정보에서 파생됩니다. 순간은 조직 전체에서 사용할 수 있으며 해적판에 배치하는 것만 큼 좋습니다.

관련 문제