기본적으로 Google Cloud 프로젝트 생성자만 프로젝트 및 해당 리소스에 액세스할 수 있습니다. 다른 사용자에게 액세스 권한을 부여하려면 프로젝트 또는 특정 Cloud Build 리소스에 대한 Identity and Access Management(IAM) 역할을 부여하면 됩니다.
이 페이지에서는 Cloud Build 리소스에 대한 액세스 제어 설정 방법을 설명합니다.
시작하기 전에
- IAM의 기본 개념 이해
- Cloud Build 역할 및 권한에 대해 알아보세요.
프로젝트 역할 부여
콘솔
- Google Cloud 콘솔에서 IAM 페이지를 엽니다. 
- 프로젝트를 선택하고 계속을 클릭합니다. 
- 액세스 권한 부여를 클릭합니다. 
- 사용자 또는 서비스 계정의 이메일 주소를 입력합니다. 
- 드롭다운 메뉴에서 원하는 역할을 선택합니다. Cloud Build 역할은 Cloud Build 아래에 있습니다. 
- 저장을 클릭합니다. 
gcloud
주 구성원에 역할을 부여하려면 add-iam-policy-binding 명령어를 실행하세요.
gcloud group add-iam-policy-binding resource \
    --member=principal --role=role-id
각 항목의 의미는 다음과 같습니다.
- group: 업데이트할 리소스의 gcloud CLI 그룹입니다. 예를 들어 프로젝트 또는 조직을 사용할 수 있습니다. 
- resource: 리소스 이름입니다. 
- principal: 주 구성원의 식별자로, 대개 principal-type:id 형식을 따릅니다. 예를 들면 user:my-user@example.com입니다. 주 구성원, 구성원, 유형의 전체 목록은 정책 바인딩 참조를 참조하세요. 
- role-id: 역할의 이름입니다. 
예를 들어 my-project 프로젝트에 대해 my-user@example.com 사용자에게 Cloud Build 뷰어 역할을 부여하려면 다음 안내를 따르세요.
gcloud projects add-iam-policy-binding my-project \
    --member=user:my-user@example.com --role=roles/cloudbuild.builds.viewer
gcloud 명령어 실행 권한 부여
cloudbuild.builds.viewer 또는 cloudbuild.builds.editor 역할만 있는 사용자가 gcloud builds 명령어를 실행하기 위해서는 serviceusage.services.use 권한도 필요합니다. 사용자에게 이 권한을 부여하려면 serviceusage.serviceUsageConsumer 역할을 부여합니다.
roles/editor 및 roles/owner 역할의 사용자는 추가 serviceusage.services.use 권한 없이 gcloud builds 명령어를 실행할 수 있습니다.
빌드 로그를 볼 수 있는 권한
빌드 로그를 보려면 빌드 로그를 기본 Cloud Storage 버킷에 저장할지 아니면 사용자가 지정한 Cloud Storage 버킷에 저장할지에 따라 추가 권한이 필요합니다. 빌드 로그를 보는 데 필요한 권한에 대한 자세한 내용은 빌드 로그 보기를 참조하세요.
프로젝트 역할 취소
콘솔
- Google Cloud 콘솔에서 IAM 페이지를 엽니다. 
- 프로젝트를 선택하고 계속을 클릭합니다. 
- 권한 테이블에서 주 구성원의 이메일 ID를 찾고 연필 아이콘을 클릭합니다. 
- 취소하려는 역할을 삭제합니다. 
- 저장을 클릭합니다. 
gcloud
사용자에게서 역할을 취소하려면 remove-iam-policy-binding 명령어를 실행합니다.
gcloud group remove-iam-policy-binding resource \
    --member=principal --role=role-id
각 항목의 의미는 다음과 같습니다.
- group: 업데이트할 리소스의 gcloud CLI 그룹입니다. 예를 들어 프로젝트 또는 조직을 사용할 수 있습니다. 
- resource: 리소스 이름입니다. 
- principal: 주 구성원의 식별자로, 대개 principal-type:id 형식을 따릅니다. 예를 들면 user:my-user@example.com입니다. 주 구성원, 구성원, 유형의 전체 목록은 정책 바인딩 참조를 참조하세요. 
- role-id: 역할의 이름입니다. 
예를 들어 my-project 프로젝트에 대해 my-user@example.com 사용자에게 Cloud Build 뷰어 역할을 부여하려면 다음 안내를 따르세요.
gcloud projects remove-iam-policy-binding my-project \
    --member=user:my-user@example.com --role=roles/cloudbuild.builds.viewer
프로젝트 역할 보기
콘솔
- Google Cloud 콘솔에서 IAM 페이지를 엽니다. 
- 프로젝트를 선택하고 계속을 클릭합니다. 
- 보기 기준에서 역할을 클릭합니다. 
- 특정 역할이 부여된 주 구성원을 보려면 해당 역할 이름을 확장합니다. 
gcloud
프로젝트에서 특정 역할이 부여된 모든 사용자를 보려면 Google Cloud 다음 명령어를 실행하세요.
gcloud projects get-iam-policy project-id \
    --flatten="bindings[].members" \
    --format="table(bindings.members)" \
    --filter="bindings.role:role-id"
각 항목의 의미는 다음과 같습니다.
- project-id는 프로젝트 ID입니다. 
- role-id는 주 구성원을 보려는 역할의 이름입니다. 
예를 들어 한 프로젝트에서 Google Cloud 프로젝트 뷰어 역할이 부여된 모든 주 구성원을 보려면 다음 명령어를 실행하세요.
gcloud projects get-iam-policy my-project \
    --flatten="bindings[].members" \
    --format="table(bindings.members)" \
    --filter="bindings.role:roles/cloudbuild.builds.viewer"
IAM 커스텀 역할 만들기
자신이 지정하는 권한 묶음이 포함된 고유 역할을 정의하려는 사용자를 위해 IAM에서는 커스텀 역할이 제공됩니다. IAM 커스텀 역할 만들기 및 사용에 대한 자세한 내용은 커스텀 역할 만들기 및 관리를 참조하세요.
다음 단계
- 기본 Cloud Build 서비스 계정에 대해 알아보세요.
- Cloud Build 서비스 계정에 대한 액세스 구성 방법 알아보기.
- 빌드 로그 확인에 필요한 권한 알아보기