Secret Manager는 API 키, 비밀번호, 인증서, 기타 민감한 정보를 위한 안전하고 편리한 스토리지 시스템입니다. Secret Manager는 Google Cloud에서 보안 비밀을 관리, 액세스, 감사하는 중앙의 단일 정보 소스를 제공합니다.
Workflows의 Secret Manager API용 커넥터를 사용하여 워크플로 내의 Secret Manager에 액세스할 수 있습니다. 그러면 커넥터가 요청 형식을 처리하고 Secret Manager API의 세부정보를 알 필요가 없도록 메서드와 인수를 제공하므로 통합이 간소화됩니다. 또한 커넥터에는 재시도 및 장기 실행 작업 처리를 위한 기본 제공 동작이 설정되어 있습니다. Workflows 커넥터 사용에 대한 상세 설명은 커넥터 이해를 참조하세요.
Workflows 서비스 계정에 Secret Manager 액세스 권한 부여
Secret Manager는 액세스 제어에 Identity and Access Management(IAM)를 사용합니다. 보안 비밀 만들기, 관리, 나열, 액세스를 위해서는 프로젝트 수준 및 개별 리소스 수준에서 적절한 IAM 권한을 부여해야 합니다. 자세한 내용은 IAM으로 액세스 제어를 참조하세요.
Workflows는 서비스 계정을 사용하여 워크플로에 Google Cloud 리소스에 대한 액세스 권한을 부여합니다. 보안 비밀 버전에 액세스하려면 서비스 계정에 보안 비밀, 프로젝트, 폴더 또는 조직에 대한 Secret Manager 보안 비밀 접근자 역할(roles/secretmanager.secretAccessor
)을 부여해야 합니다. 사용자 관리 서비스 계정으로 워크플로 배포에 대해 자세히 알아보세요.
API 사용 설정
Secret Manager API에 대해 Workflows 커넥터를 사용하기 전에 Secret Manager 및 Workflows API를 사용 설정합니다.
콘솔
gcloud
gcloud services enable secretmanager.googleapis.com workflows.googleapis.com
커넥터 호출
HTTP 엔드포인트를 호출하는 것과 마찬가지로 커넥터 호출에는 call
및 args
필드가 필요합니다. 자세한 내용은 커넥터 호출을 참조하세요.
호출 단계를 사용하는 것 외에도 다음과 같이 표현식에서 도우미 메서드를 호출할 수 있습니다.
${googleapis.secretmanager.v1.projects.secrets.versions.accessString(secret_id, version, project_id)}
예를 들어 도우미 메서드 accessString
을 사용하여 보안 비밀 데이터를 문자열로 검색할 수 있습니다. 보안 비밀 데이터는 자동으로 문자열 형식으로 디코딩되므로 access
API를 사용하는 것이 더 간단합니다.
또한 도우미 메서드 addVersionString
을 사용하여 기존 보안 비밀에 새 보안 비밀 값을 추가할 수 있습니다. 보안 비밀 데이터가 addVersion
에 필요한 base-64 문자열로 자동으로 인코딩되므로 addVersion
API를 사용하는 것보다 간단합니다.
Secret Manager 커넥터를 사용하여 보안 비밀 검색
다음 워크플로는 Secret Manager 커넥터를 사용하여 보안 비밀을 검색하는 방법을 보여줍니다.