IAM으로 액세스 제어

Cloud Tasks는 액세스 제어에 Identity and Access Management (IAM)를 사용합니다. IAM 및 해당 기능에 대한 소개는 IAM 개요를 참조하세요. 액세스 권한을 부여하고 취소하는 방법을 알아보려면 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.

액세스 제어는 프로젝트 수준 및 큐 수준에서 구성할 수 있습니다. 예를 들어 사용자에게 작업을 생성하고 대기열에 추가할 수 있는 권한은 부여하되 대기열을 삭제할 수 있는 권한은 부여하지 않을 수 있습니다. 또는 사용자 그룹에 프로젝트 내의 모든 Cloud Tasks 리소스에 대한 액세스 권한을 부여할 수 있습니다. 자세한 내용은 큐 구성 보호를 참고하세요.

모든 Cloud Tasks 메서드는 호출자에게 필수 권한을 요구합니다. 이 페이지에서는 Cloud Tasks에서 지원하는 권한과 역할을 설명합니다. 권한은 queue.yaml 또는 queue.xml이 업데이트되거나 Google Cloud 콘솔이 사용될 때도 확인됩니다.

Cloud Tasks API 사용 설정

Cloud Tasks의 IAM 역할을 보고 할당하려면 프로젝트에 Cloud Tasks API를 사용 설정해야 합니다. API를 사용 설정할 때까지는 Google Cloud 콘솔에서 Cloud Tasks 역할을 볼 수 없습니다.

콘솔

Enable the Cloud Tasks API.

Roles required to enable APIs

To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

Enable the API

gcloud

Enable the Cloud Tasks API:

Roles required to enable APIs

To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

gcloud services enable cloudtasks.googleapis.com

사전 정의된 역할

다음 표에는 Cloud Tasks 사전 정의 IAM 역할과 해당 권한이 나와 있습니다.

사전 정의된 역할은 일반적인 사용 사례를 대부분 처리합니다. 사용 사례가 사전 정의된 역할로 처리되지 않는 경우, IAM 커스텀 역할을 만들 수 있습니다.

Role Permissions

(roles/cloudtasks.admin)

Full access to queues and tasks.

cloudtasks.*

  • cloudtasks.cmekConfig.get
  • cloudtasks.cmekConfig.update
  • cloudtasks.locations.get
  • cloudtasks.locations.list
  • cloudtasks.queues.create
  • cloudtasks.queues.delete
  • cloudtasks.queues.get
  • cloudtasks.queues.getIamPolicy
  • cloudtasks.queues.list
  • cloudtasks.queues.pause
  • cloudtasks.queues.purge
  • cloudtasks.queues.resume
  • cloudtasks.queues.setIamPolicy
  • cloudtasks.queues.update
  • cloudtasks.tasks.create
  • cloudtasks.tasks.delete
  • cloudtasks.tasks.fullView
  • cloudtasks.tasks.get
  • cloudtasks.tasks.list
  • cloudtasks.tasks.run

monitoring.timeSeries.list

resourcemanager.projects.get

resourcemanager.projects.list

(roles/cloudtasks.enqueuer)

Access to create tasks.

cloudtasks.tasks.create

cloudtasks.tasks.fullView

resourcemanager.projects.get

resourcemanager.projects.list

(roles/cloudtasks.queueAdmin)

Admin access to queues.

cloudtasks.locations.*

  • cloudtasks.locations.get
  • cloudtasks.locations.list

cloudtasks.queues.*

  • cloudtasks.queues.create
  • cloudtasks.queues.delete
  • cloudtasks.queues.get
  • cloudtasks.queues.getIamPolicy
  • cloudtasks.queues.list
  • cloudtasks.queues.pause
  • cloudtasks.queues.purge
  • cloudtasks.queues.resume
  • cloudtasks.queues.setIamPolicy
  • cloudtasks.queues.update

resourcemanager.projects.get

resourcemanager.projects.list

(roles/cloudtasks.serviceAgent)

Grants Cloud Tasks Service Account access to manage resources.

iam.serviceAccounts.getAccessToken

iam.serviceAccounts.getOpenIdToken

logging.logEntries.create

(roles/cloudtasks.taskDeleter)

Access to delete tasks.

cloudtasks.tasks.delete

resourcemanager.projects.get

resourcemanager.projects.list

(roles/cloudtasks.taskRunner)

Access to run tasks.

cloudtasks.tasks.fullView

cloudtasks.tasks.run

resourcemanager.projects.get

resourcemanager.projects.list

(roles/cloudtasks.viewer)

Get and list access to tasks, queues, and locations.

cloudtasks.cmekConfig.get

cloudtasks.locations.*

  • cloudtasks.locations.get
  • cloudtasks.locations.list

cloudtasks.queues.get

cloudtasks.queues.list

cloudtasks.tasks.fullView

cloudtasks.tasks.get

cloudtasks.tasks.list

monitoring.timeSeries.list

resourcemanager.projects.get

resourcemanager.projects.list

다음 단계