Cloud SQL 보안 비밀 자동 순환

이 문서에서는 Secret Manager에서 Cloud SQL 보안 비밀의 자동 순환을 설명합니다. 자동 순환을 사용하면 Secret Manager가 보안 비밀번호를 생성하고, 타겟 Cloud SQL 데이터베이스 인스턴스의 보안 비밀을 업데이트하고, 새 보안 비밀을 최신 보안 비밀 버전으로 저장합니다.

자동 회전의 이점

자동 회전은 다음과 같은 이점을 제공합니다.

  • 사용자 인증 정보를 순환하기 위해 맞춤 Cloud Run 함수를 유지할 필요가 없습니다.
  • 사용자 인증 정보를 자주 교체하여 유출된 사용자 인증 정보의 영향을 최소화합니다.
  • 결제 카드 산업 데이터 보안 표준 (PCI-DSS)과 같이 정기적인 비밀번호 순환을 요구하는 규정 준수 요구사항을 충족할 수 있습니다. 자세한 내용은 규정 준수 리소스 센터를 참고하세요.

주요 개념

자동 회전을 사용하려면 다음 개념을 이해해야 합니다.

보안 비밀 유형

보안 비밀 유형을 사용하여 보안 비밀을 분류할 수 있습니다. 자동 순환을 사용 설정하려면 생성 중에 Cloud SQL DB credentials 비밀 유형을 선택합니다. 자세한 내용은 리전 보안 비밀 만들기를 참고하세요.

기존 보안 비밀은 자동 순환을 지원하지 않습니다.

보안 비밀의 기본 제공 ID

보안 비밀은 기본 제공 ID가 있는 리소스 유형입니다. 각 보안 비밀에는 Cloud de Confiance by S3NS 프로젝트의 다른 모든 리소스와 구분되는 고유 식별자가 있습니다. 시스템은 보안 비밀을 만들 때 이 고유 식별자를 자동으로 생성하고 보안 비밀 리소스의 iamPolicyUidPrincipal 필드에 저장합니다. 자세한 내용은 리소스의 기본 제공 ID를 참고하세요.

기본 제공 ID에 Cloud SQL 인스턴스의 사용자 인증 정보를 업데이트하는 데 필요한 권한을 부여해야 합니다. 이렇게 하면 보안 비밀이 자체 사용자 인증 정보를 순환하는 데 필요한 권한만 보유하여 최소 권한의 원칙을 준수합니다.

순환 일정 및 상태

순환 일정을 사용하여 보안 비밀을 순환할 빈도를 지정할 수 있습니다. 예를 들어 30일 또는 90일마다

시스템은 보안 비밀의 순환 상태를 사용하여 순환 일정의 상태를 추적합니다.

  • Enabled: 순환 일정이 사용 설정되어 있으며 가장 최근의 순환이 성공했습니다.
  • Disabled: 순환 일정이 일시중지되었습니다. 회전 시도가 실패하면 상태도 Disabled로 변경됩니다.

순환 전략

Cloud SQL DB credentials 보안 비밀은 하나의 데이터베이스 사용자 인증 정보 (Cloud SQL 인스턴스 ID, 사용자 이름, 비밀번호)를 관리합니다.

순환 중에 Secret Manager는 Cloud SQL 사용자의 보안 비밀번호를 생성하고 Secret Manager와 타겟 Cloud SQL 인스턴스 모두에서 보안 비밀을 업데이트합니다.

회전 수명 주기

자동 순환 프로세스는 Secret Manager에서 관리하는 특정 수명 주기를 따르며 워크플로에는 다음 단계가 포함됩니다.

  1. 시작: 구성된 순환 일정 또는 주문형 수동 순환에 따라 프로세스가 시작됩니다.
  2. 생성: Secret Manager가 Cloud SQL 비밀번호 정책을 준수하는 보안 비밀번호를 생성합니다.
  3. 동기화: Secret Manager가 타겟 Cloud SQL 인스턴스의 비밀번호를 업데이트하고 새 보안 비밀을 최신 보안 비밀 버전으로 저장합니다. 이 단계에서는 Cloud SQL 인스턴스에 새 비밀번호가 있지만 비밀 alias는 여전히 이전 버전을 가리킵니다.
  4. 별칭 업데이트: Secret Manager가 새 보안 비밀 버전을 가리키도록 보안 비밀 별칭을 업데이트합니다.
  5. 알림 보내기: 구성된 경우 Secret Manager는 순환의 성공 또는 실패를 알리는 Pub/Sub 알림을 보냅니다.

순환이 실패하면 시스템에서 자동으로 다시 시도합니다. 실패가 지속되면 Secret Manager가 순환 상태를 Disabled로 설정합니다. 순환을 재개하려면 기본 문제를 해결하고 순환을 다시 사용 설정해야 합니다.

다음 단계