Cloud Build는 사용자 대신 기본 서비스 계정을 사용하여 빌드를 실행합니다. 예를 들어 Cloud Build 기존 서비스 계정이 생성될 때는 프로젝트에 대해 Cloud Build 서비스 계정 역할이 자동으로 부여됩니다. 이 역할은 서비스 계정에 여러 작업을 수행할 수 있는 권한을 제공하지만, 서비스 계정에 대해 권한을 더 부여해서 추가 작업을 수행할 수 있습니다. 이 페이지에서는 기본 Cloud Build 서비스 계정에 대해 권한을 부여 및 취소하는 방법을 설명합니다.
시작하기 전에
- Cloud Build 역할 및 권한을 이해합니다.
- Cloud Build 기본 서비스 계정을 읽습니다.
설정 페이지를 사용하여 Cloud Build 기본 서비스 계정에 역할 부여
Google Cloud 콘솔의 Cloud Build 설정 페이지를 사용하여 일반적으로 사용되는 특정 IAM 역할을 Cloud Build 기본 서비스 계정에 부여할 수 있습니다.
Cloud Build 설정 페이지를 엽니다.
서비스 계정 권한 페이지가 표시됩니다.
드롭다운 메뉴를 사용하여 업데이트할 서비스 계정을 선택합니다.
추가할 역할의 상태를 사용 설정으로 설정합니다.
IAM 페이지를 사용하여 Cloud Build 기본 서비스 계정에 역할 부여
부여할 역할이 Google Cloud 콘솔의 Cloud Build 설정 페이지에 없으면 IAM 페이지를 사용하여 역할을 부여합니다.
IAM 페이지 열기:
Google Cloud 프로젝트를 선택합니다.
권한 테이블 위에서 Google 제공 역할 부여 포함 체크박스를 선택합니다.
권한 테이블에 더 많은 행이 표시됩니다.
권한 테이블에서 Cloud Build 기본 서비스 계정을 찾습니다.
연필 아이콘을 클릭합니다.
Cloud Build 서비스 계정에 부여하려는 역할을 선택합니다.
저장을 클릭합니다.
Cloud Build 서비스 계정에서 역할 취소
IAM 페이지 열기:
Google Cloud 프로젝트를 선택합니다.
권한 테이블 위에서 Google 제공 역할 부여 포함 체크박스를 선택합니다.
권한 테이블에 더 많은 행이 표시됩니다.
권한 테이블에서 Cloud Build 기본 서비스 계정을 찾습니다.
연필 아이콘을 클릭합니다.
취소할 역할을 찾고 역할 옆에 있는 삭제 휴지통을 클릭합니다.
Cloud Build 서비스 에이전트에 역할 부여
Cloud Build 기본 서비스 계정 외에도 Cloud Build에는 다른 Google Cloud 서비스가 리소스에 액세스하도록 허용하는 Cloud Build 서비스 에이전트가 있습니다. Cloud Build API를 사용 설정한 후 Google Cloud 프로젝트에 서비스 에이전트가 자동으로 생성됩니다. 서비스 에이전트의 형식은 다음과 같습니다. 여기서 PROJECT_NUMBER
는 프로젝트 번호입니다.
service-PROJECT_NUMBER@gcp-sa-cloudbuild.iam.gserviceaccount.com
Google Cloud 콘솔의 IAM 페이지로 이동하여 Google 관리형 서비스 계정 표시 체크박스를 선택하면 프로젝트의 서비스 에이전트를 볼 수 있습니다.
프로젝트에서 Cloud Build 서비스 에이전트의 역할을 실수로 취소한 경우에는 다음 단계에 따라 수동으로 부여할 수 있습니다.
콘솔
Google Cloud 콘솔에서 IAM 페이지를 엽니다.
액세스 권한 부여를 클릭합니다.
다음 주 구성원을 추가합니다. 여기서
PROJECT_NUMBER
는 프로젝트 번호입니다.service-PROJECT_NUMBER@gcp-sa-cloudbuild.iam.gserviceaccount.com
역할로 서비스 에이전트 > Cloud Build 서비스 에이전트를 선택합니다.
저장을 클릭합니다.
gcloud
Cloud Build 서비스 에이전트에 roles/cloudbuild.serviceAgent
IAM 역할을 부여합니다.
gcloud projects add-iam-policy-binding PROJECT_ID \
--member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-cloudbuild.iam.gserviceaccount.com" \
--role="roles/cloudbuild.serviceAgent"
명령어의 자리 표시자 값을 다음으로 바꿉니다.
PROJECT_ID
: 프로젝트 IDPROJECT_NUMBER
: 프로젝트 번호
다음 단계
- 사용자 지정 서비스 계정 알아보기
- 서비스 계정에 대해 자세히 알아보기
- Cloud Build 리소스에 대한 액세스 구성 알아보기
- 빌드 로그 확인에 필요한 권한 알아보기