InfoGrab DocsInfoGrab Docs

Sigstore 워크로드 증명

Teleport의 Sigstore 통합을 사용하여 워크로드 공급망 보안을 보장하기

Teleport의 Sigstore 통합을 사용하면 워크로드 신원과 그것이 보호하는 리소스에 대한 접근을 서명된 컨테이너 이미지로만 제한하여 공급망 공격 의 범위를 줄일 수 있습니다. Teleport Enterprise 필요 Teleport Workload Identity의 Sigstore 증명 기능을 사용하려면 유효한 Teleport Enterprise 라이선스가 필요합니다. 작동 방식 # 서명 # 아티팩트 서명 및 증명은 cosign 또는 GitHub의 attest-build-provenance 액션과 같은 Sigstore 호환 도구를 사용하여 생성됩니다. 키리스 모드에서는 이러한 서명이 Fulcio 에서 발행된 일회용 X.509 인증서로 서명되며, 이 인증서는 서명자의 OIDC 신원(예: 사용자의 Google 계정 또는 GitHub Actions 토큰)을 인코딩합니다. 사용자는 대안으로 전통적인 장기 개인/공개 키 쌍으로 서명하고 소비자에게 직접 공개 키를 배포할 수 있습니다. 서명과 관련 메타데이터는 감사 가능성, 부인 방지 및 서명 타임스탬프를 위해 Rekor 투명성 로그에 기록됩니다. 키리스 서명 인증서의 단기 특성으로 인해 인증서의 유효 기간(not before, not after)을 사용할 수 없기 때문입니다. 사용자는 투명성 로그의 다른 기능이 필요하지 않은 경우 Rekor 대신 또는 Rekor에 추가로 RFC 3161 타임스탬프 기관을 사용할 수 있습니다. 서명, 인증서, 투명성 로그 포함 증명 및 RFC 3161 타임스탬프는 컨테이너 이미지 레지스트리에 업로드됩니다. 검증 # 컨테이너 기반 워크로드가 tbot 의 SPIFFE Workload API에 연결하면, tbot 은 플랫폼별 증명자(예: Kubernetes, Docker 또는 Podman)를 사용하여 워크로드가 실행 중인 컨테이너 이미지를 검색합니다. 그런 다음 해당 특정 이미지 다이제스트와 관련된 서명을 위해 관련 컨테이너 레지스트리에 쿼리합니다. 이러한 서명은 SVID를 요청할 때 Teleport Auth Service로 전송됩니다. WorkloadIdentity 규칙에 sigstore.policy_satisfied 호출이 포함된 경우, Auth Service는 지정된 SigstorePolicy 객체를 로드하고 평가합니다. 이러한 정책은 서명의 진위를 검증하는 데 사용할 "신뢰할 수 있는 루트"를 결정하는 데 사용됩니다. 키리스 서명의 경우 Fulcio 및 Rekor 인증서 체인이 포함됩니다. 전통적인 키 기반 서명의 경우 서명자의 공개 키가 사용됩니다. 정책에는 서명에 대한 요구 사항도 포함되어 있습니다. 예를 들어 어떤 in-toto 증명 술어 유형이 필요한지 또는 cosign 단순 서명 기반 아티팩트 서명이 필요한지 여부 등입니다. SigstorePolicy 리소스 # kind: sigstore_policy version: v1 metadata: # SigstorePolicy 리소스의 이름. `sigstore.policy_satisfied` 규칙 # 표현