액세스 제어

ID 및 액세스 관리(IAM) 역할에서는 Secret Manager API를 사용할 수 있는 방법을 지정합니다. 다음은 Secret Manager에 사용할 수 있는 각 IAM 역할과 그 역할에 부여된 기능의 목록입니다.

역할 이름 설명 권한 최하위 리소스
roles/secretmanager.admin 보안 비밀 관리자 관리 보안 비밀 관리자 리소스를 관리할 수 있는 전체 액세스 권한입니다.
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • secretmanager.*
보안 비밀
roles/secretmanager.secretAccessor 보안 비밀 관리자 보안 비밀 접근자 보안 비밀의 페이로드에 액세스할 수 있습니다.
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • secretmanager.versions.access
보안 비밀
roles/secretmanager.secretVersionAdder 보안 비밀 관리자 보안 비밀 버전 추가자 기존 보안 비밀에 버전 추가를 허용합니다.
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • secretmanager.versions.add
보안 비밀
roles/secretmanager.secretVersionManager 보안 비밀 관리자 보안 비밀 버전 관리자 기존 보안 비밀을 만들고 버전을 관리하도록 허용합니다.
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • secretmanager.versions.add
  • secretmanager.versions.destroy
  • secretmanager.versions.disable
  • secretmanager.versions.enable
  • secretmanager.versions.get
  • secretmanager.versions.list
보안 비밀
roles/secretmanager.viewer 보안 비밀 관리자 뷰어 모든 보안 비밀 관리자 리소스의 메타데이터를 볼 수 있습니다.
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • secretmanager.locations.*
  • secretmanager.secrets.get
  • secretmanager.secrets.getIamPolicy
  • secretmanager.secrets.list
  • secretmanager.versions.get
  • secretmanager.versions.list
보안 비밀

최소 권한 원칙

최소 권한의 원칙을 따르면 지정된 태스크를 수행하는 데 필요한 최소 수준의 액세스 권한이 부여됩니다. 예를 들어 구성원이 단일 보안 비밀에 액세스해야 하는 경우 구성원에게 프로젝트 또는 조직의 다른 보안 비밀이나 모든 보안 비밀에 대한 액세스 권한을 부여하지 마세요. 구성원이 보안 비밀만 읽어야 하는 경우에는 구성원에게 보안 비밀 수정할 수 있는 권한을 부여하지 마세요.

IAM을 사용하여 Google Cloud 보안 비밀, 프로젝트, 폴더 또는 조직 수준의 IAM 역할과 권한을 부여할 수 있습니다. 항상 리소스 계층 구조에서 가장 낮은 수준의 권한을 적용합니다.

이 표에서는 Secret Manager 보안 비밀 접근자 역할(roles/secretmanager.secretAccessor)이 부여된 리소스 계층 구조의 수준을 기준으로 서비스 계정의 효과적인 기능을 보여줍니다.

리소스 계층 구조 역량
비밀번호 보안 비밀에만 액세스
프로젝트 프로젝트의 모든 보안 비밀에 액세스
폴더 폴더 내 모든 프로젝트의 모든 보안 비밀에 액세스
조직 조직 내 모든 프로젝트의 모든 보안 비밀에 액세스

구성원이 단일 보안 비밀 값에만 액세스해야 하는 경우 구성원에게 모든 보안 비밀에 액세스할 수 있는 권한을 부여하지 마세요. 예를 들어 서비스 계정에 단일 보안 비밀의 Secret Manager 보안 비밀 접근자 역할(roles/secretmanager.secretAccessor)을 부여할 수 있습니다.

구성원이 단일 보안 비밀만 관리해야 하는 경우 구성원에게 모든 보안 비밀을 관리할 수 있는 권한을 부여하지 마세요. 예를 들어 서비스 계정에 단일 보안 비밀의 보안 비밀 관리 역할(roles/secretmanager.admin)을 부여할 수 있습니다.

IAM 조건

IAM 조건을 사용하면 Secret Manager 리소스를 비롯한 일부 Google Cloud 리소스에 조건부 속성 기반 액세스 제어를 정의하고 적용할 수 있습니다.

Secret Manager에서 다음 속성을 기준으로 조건부 액세스를 적용할 수 있습니다.

  • 날짜/시간 속성: Secret Manager 리소스에 만료, 예약 또는 기간 제한 액세스를 설정하는 데 사용합니다. 예를 들어 사용자가 지정된 날짜까지 보안 비밀에 액세스하도록 허용할 수 있습니다.
  • 리소스 속성: 리소스 이름, 리소스 유형 또는 리소스 서비스 속성을 기준으로 조건부 액세스를 구성하는 데 사용합니다. Secret Manager에서 보안 비밀 속성과 보안 비밀 버전을 사용하여 조건부 액세스를 구성할 수 있습니다. 예를 들어 사용자가 특정 프리픽스로 시작하는 보안 비밀의 보안 비밀 버전만 관리하도록 허용하거나 특정 보안 비밀 버전에만 액세스하도록 허용할 수 있습니다.

IAM 조건에 대한 자세한 내용은 조건 개요를 참조하세요.

다음 단계