IAM으로 액세스 제어

이 페이지에서는 Identity and Access Management를 사용하여 데이터 소스 및 결과 대상을 포함한 AutoML Tables 리소스에 대한 액세스를 제어하는 방법을 설명합니다.

Identity and Access Management 개요

AutoML Tables를 사용하면 Identity and Access Management(IAM)로 리소스에 대한 액세스를 관리할 수 있습니다. IAM을 사용하면 특정 Google Cloud 리소스에 더욱 세분화된 액세스 권한을 부여하고 다른 리소스에 대한 무단 액세스를 방지할 수 있습니다. 이 페이지에서는 AutoML Tables의 IAM 권한과 역할을 설명합니다. IAM에 대한 자세한 설명은 IAM 문서를 참조하세요.

IAM은 최소 권한의 보안 원칙을 채택하여 리소스에 대해 필요한 액세스 권한만 부여할 수 있게 해줍니다.

IAM을 사용하면 하나 이상의 역할을 부여하여 어떤 리소스에 대해 누가(사용자) 어떤(역할) 액세스 권한을 갖는지 제어할 수 있습니다. 사용자에게 특정 권한을 부여하면 됩니다. 예를 들어 사용자가 프로젝트의 리소스를 볼 수 있도록 AutoML 뷰어 역할(roles.automl.viewer)을 부여할 수 있습니다. 이 사용자가 리소스를 만들거나 업데이트해야 하면 AutoML 편집자 역할(roles.automl.editor)을 부여하면 됩니다.

역할

AutoML Tables는 AutoML 리소스에 대한 액세스를 쉽게 제어할 수 있도록 사전 정의된 역할 집합을 제공하는 AutoML API를 사용합니다.

사전 정의된 역할에 필요한 권한 집합이 없는 경우에는 자체 커스텀 역할을 만들 수도 있습니다.

또한 AutoML 역할처럼 세분화된 제어 기능을 제공하지는 않지만 이전의 기본 역할(편집자, 뷰어, 소유자)도 사용할 수 있습니다. 가능하다면 기본 역할을 사용하지 마세요. 기본 역할은 AutoML뿐만 아니라 Google Cloud 전체 리소스에 대한 액세스를 제공합니다. 기본 역할 자세히 알아보기

사전 정의된 역할

이 섹션에는 AutoML에서 제공하는 사전 정의된 역할이 요약되어 있습니다.

Role Permissions

(roles/automl.admin)

Full access to all AutoML resources

Lowest-level resources where you can grant this role:

  • Dataset
  • Model

automl.*

  • automl.annotationSpecs.create
  • automl.annotationSpecs.delete
  • automl.annotationSpecs.get
  • automl.annotationSpecs.list
  • automl.annotationSpecs.update
  • automl.annotations.approve
  • automl.annotations.create
  • automl.annotations.list
  • automl.annotations.manipulate
  • automl.annotations.reject
  • automl.columnSpecs.get
  • automl.columnSpecs.list
  • automl.columnSpecs.update
  • automl.datasets.create
  • automl.datasets.delete
  • automl.datasets.export
  • automl.datasets.get
  • automl.datasets.getIamPolicy
  • automl.datasets.import
  • automl.datasets.list
  • automl.datasets.setIamPolicy
  • automl.datasets.update
  • automl.examples.delete
  • automl.examples.get
  • automl.examples.list
  • automl.examples.update
  • automl.files.delete
  • automl.files.list
  • automl.humanAnnotationTasks.create
  • automl.humanAnnotationTasks.delete
  • automl.humanAnnotationTasks.get
  • automl.humanAnnotationTasks.list
  • automl.locations.get
  • automl.locations.getIamPolicy
  • automl.locations.list
  • automl.locations.setIamPolicy
  • automl.modelEvaluations.create
  • automl.modelEvaluations.get
  • automl.modelEvaluations.list
  • automl.models.create
  • automl.models.delete
  • automl.models.deploy
  • automl.models.export
  • automl.models.get
  • automl.models.getIamPolicy
  • automl.models.list
  • automl.models.predict
  • automl.models.setIamPolicy
  • automl.models.undeploy
  • automl.operations.cancel
  • automl.operations.delete
  • automl.operations.get
  • automl.operations.list
  • automl.tableSpecs.get
  • automl.tableSpecs.list
  • automl.tableSpecs.update

resourcemanager.projects.get

resourcemanager.projects.list

serviceusage.services.get

serviceusage.services.list

(roles/automl.editor)

Editor of all AutoML resources

Lowest-level resources where you can grant this role:

  • Dataset
  • Model

automl.annotationSpecs.*

  • automl.annotationSpecs.create
  • automl.annotationSpecs.delete
  • automl.annotationSpecs.get
  • automl.annotationSpecs.list
  • automl.annotationSpecs.update

automl.annotations.*

  • automl.annotations.approve
  • automl.annotations.create
  • automl.annotations.list
  • automl.annotations.manipulate
  • automl.annotations.reject

automl.columnSpecs.*

  • automl.columnSpecs.get
  • automl.columnSpecs.list
  • automl.columnSpecs.update

automl.datasets.create

automl.datasets.delete

automl.datasets.export

automl.datasets.get

automl.datasets.import

automl.datasets.list

automl.datasets.update

automl.examples.*

  • automl.examples.delete
  • automl.examples.get
  • automl.examples.list
  • automl.examples.update

automl.files.*

  • automl.files.delete
  • automl.files.list

automl.humanAnnotationTasks.*

  • automl.humanAnnotationTasks.create
  • automl.humanAnnotationTasks.delete
  • automl.humanAnnotationTasks.get
  • automl.humanAnnotationTasks.list

automl.locations.get

automl.locations.list

automl.modelEvaluations.*

  • automl.modelEvaluations.create
  • automl.modelEvaluations.get
  • automl.modelEvaluations.list

automl.models.create

automl.models.delete

automl.models.deploy

automl.models.export

automl.models.get

automl.models.list

automl.models.predict

automl.models.undeploy

automl.operations.*

  • automl.operations.cancel
  • automl.operations.delete
  • automl.operations.get
  • automl.operations.list

automl.tableSpecs.*

  • automl.tableSpecs.get
  • automl.tableSpecs.list
  • automl.tableSpecs.update

resourcemanager.projects.get

resourcemanager.projects.list

serviceusage.services.get

serviceusage.services.list

(roles/automl.predictor)

Predict using models

Lowest-level resources where you can grant this role:

  • Model

automl.models.predict

resourcemanager.projects.get

resourcemanager.projects.list

(roles/automl.viewer)

Viewer of all AutoML resources

Lowest-level resources where you can grant this role:

  • Dataset
  • Model

automl.annotationSpecs.get

automl.annotationSpecs.list

automl.annotations.list

automl.columnSpecs.get

automl.columnSpecs.list

automl.datasets.get

automl.datasets.list

automl.examples.get

automl.examples.list

automl.files.list

automl.humanAnnotationTasks.get

automl.humanAnnotationTasks.list

automl.locations.get

automl.locations.list

automl.modelEvaluations.get

automl.modelEvaluations.list

automl.models.get

automl.models.list

automl.operations.get

automl.operations.list

automl.tableSpecs.get

automl.tableSpecs.list

resourcemanager.projects.get

resourcemanager.projects.list

serviceusage.services.get

serviceusage.services.list

홈 프로젝트의 AutoML Tables에 권한 부여

AutoML Tables가 자동으로 생성하는 서비스 계정에 추가 역할을 부여해야 하는 경우가 있습니다. 예를 들어 Bigtable 데이터 소스 기반의 BigQuery 외부 테이블을 사용하는 경우 자동으로 생성된 서비스 계정에 추가 역할을 부여해야 BigQuery 및 Bigtable의 데이터를 읽고 쓸 수 있습니다.

홈 프로젝트의 AutoML Tables에 대해 자동으로 생성된 서비스 계정에 추가 역할을 부여하려면 다음 안내를 따르세요.

  1. 홈 프로젝트의 Google Cloud Console에서 IAM 페이지로 이동합니다.

    IAM 페이지로 이동

  2. 오른쪽 상단에서 Google 제공 역할 부여 포함 체크박스를 선택합니다.

  3. 이름이 AutoML Service Agent인 서비스 계정의 연필 아이콘을 클릭합니다.

  4. 서비스 계정에 필수 역할을 부여하고 변경사항을 저장합니다.

다른 프로젝트의 AutoML Tables에 권한 부여

다른 프로젝트에서 데이터 소스나 대상을 사용할 때는 해당 프로젝트에 AutoML Tables 서비스 계정 권한을 부여해야 합니다. AutoML Tables 서비스 계정은 AutoML Tables API를 사용 설정하면 자동으로 생성됩니다.

다른 프로젝트의 AutoML Tables에 권한을 추가하려면 다음 안내를 따르세요.

  1. 홈 프로젝트(AutoML Tables를 사용 중인 프로젝트)의 Google Cloud 콘솔에서 IAM 페이지로 이동합니다.

    IAM 페이지로 이동

  2. 오른쪽 상단에서 Google 제공 역할 부여 포함 체크박스를 선택합니다.

  3. 이름이 AutoML Service Agent인 서비스 계정을 찾은 다음 주 구성원 아래에 나열된 이메일 주소를 복사합니다.

  4. 프로젝트를 권한을 부여해야 하는 프로젝트로 변경합니다.

  5. 추가를 클릭하고 새 주 구성원에 이메일 주소를 입력합니다.

  6. 모든 필수 역할을 추가하고 저장을 클릭합니다.

Google 스프레드시트에 대한 액세스 제공

Google 스프레드시트 기반의 외부 BigQuery 데이터 소스를 사용하는 경우 스프레드시트를 AutoML 서비스 계정과 공유해야 합니다. AutoML Tables 서비스 계정은 AutoML Tables API를 사용 설정하면 자동으로 생성됩니다.

AutoML Tables가 스프레드시트 파일에 액세스하도록 승인하려면 다음 안내를 따르세요.

  1. Google Cloud 콘솔에서 IAM 페이지로 이동합니다.

    IAM 페이지로 이동

  2. 오른쪽 상단에서 Google 제공 역할 부여 포함 체크박스를 선택합니다.

  3. 이름이 AutoML Service Agent인 서비스 계정을 찾습니다.

  4. 주 구성원 이름을 클립보드에 복사합니다.

    주 구성원 이름은 이메일 주소로 다음 예시와 유사하게 나타납니다.

    service-358517216@gcp-sa-automl.iam.gserviceaccount.com
    
  5. 스프레드시트 파일을 열고 이 이메일 주소와 공유합니다.

IAM 역할 관리

Google Cloud 콘솔, IAM API 또는 gcloud 명령줄 도구를 사용하여 IAM 역할을 부여, 변경, 취소할 수 있습니다. 자세한 내용은 액세스 권한 부여, 변경, 취소를 참조하세요.

다음 단계

Identity and Access Management에 대해 자세히 알아봅니다.