권한 구성

이 주제에서는 Cloud 애셋 인벤토리 API를 호출하는 데 필요한 권한과 사용자 인증 정보를 구성하는 방법을 설명합니다.

인증

Cloud 애셋 인벤토리 API를 호출하려면 먼저 최종 사용자 또는 서비스 계정으로 인증해야 합니다. 인증에 대한 자세한 내용은 인증 개요를 참조하세요.

gcloud CLI에 필요한 권한 부여

gcloud CLI를 사용하여 Cloud 애셋 인벤토리 API에 액세스하려면 대상 리소스의 상위 요소(조직, 프로젝트 또는 폴더)에 필요한 권한을 부여해야 합니다. API 요청의 parent 필드에 이 상위 요소를 지정해야 합니다.

계정이 리소스의 상위 요소에 Cloud 애셋 소유자 역할(roles/cloudasset.owner) 또는 소유자 기본 역할(roles/owner)을 가지고 있다면 Cloud 애셋 인벤토리 API를 호출할 수 있는 충분한 권한이 있으며. 사용자 인증 정보 다운로드로 건너뛸 수 있습니다. Cloud 애셋 인벤토리 역할에 대한 자세한 내용은 역할을 참조하세요.

역할 부여

계정에 역할을 부여하려면 Google Cloud CLI를 사용하여 다음 단계를 완료합니다. gcloud CLI 설치 및 초기화 방법을 알아보세요.

사용자 계정

사용자 계정에 필요한 역할을 부여하려면 다음 단계를 완료하세요.

  1. 사용자 계정으로 로그인하려면 다음 명령어를 실행합니다.

    gcloud auth login USER_ACCOUNT_EMAIL
    
  2. 사용자 계정에 루트(상위) 리소스에 대한 Cloud 애셋 뷰어 역할 (roles/cloudasset.viewer) 또는 Cloud 애셋 소유자 역할 (roles/cloudasset.owner)을 부여합니다. 이 프로젝트는 Cloud 애셋 인벤토리 API가 사용 설정된 프로젝트일 수 있습니다.

    사용자 계정에 Cloud 애셋 뷰어 역할을 부여하려면 다음 명령어를 실행하세요.

    gcloud projects add-iam-policy-binding TARGET_PROJECT_ID \
        --member user:USER_ACCOUNT_EMAIL \
        --role roles/cloudasset.viewer
    

    gcloud asset 명령어에 --billing-project 플래그를 추가하여 Cloud 애셋 인벤토리 API가 사용 설정된 결제 프로젝트를 지정할 수 있습니다.

    --billing-project PROJECT_ID
    

    이 플래그를 지정하면, 계정이 프로젝트 PROJECT_ID에 대한 serviceusage.services.use 권한을 필요로 합니다. 이 권한을 포함하여 사전 정의된 역할 목록은 역할 이해를 참조하세요.

서비스 계정

서비스 계정에 필요한 역할을 부여하려면 다음 단계를 완료하세요. 서비스 계정에 대한 자세한 내용은 서비스 계정 생성 및 관리를 참조하세요.

  1. 새 서비스 계정을 만들려면 다음 명령어를 실행하세요. Cloud 애셋 인벤토리 API가 사용 설정된 프로젝트에 서비스 계정이 이미 있는 경우에는 이 단계를 건너뛸 수 있습니다.

    gcloud iam service-accounts create SERVICE_ACCOUNT_NAME \
        --display-name "SERVICE_ACCOUNT_DISPLAY_NAME"
    
  2. 서비스 계정에 루트(상위) 리소스에 대한 Cloud 애셋 뷰어 역할 (roles/cloudasset.viewer) 또는 Cloud 애셋 소유자 역할 (roles/cloudasset.owner)을 부여합니다. 이 프로젝트는 Cloud 애셋 인벤토리 API가 사용 설정된 프로젝트와 동일할 수 있습니다.

    서비스 계정에 Cloud 애셋 뷰어 역할을 부여하려면 다음 명령어를 실행하세요.

    gcloud projects add-iam-policy-binding TARGET_PROJECT_ID \
        --member serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com \
        --role roles/cloudasset.viewer