Google Cloud

다운로드 0
업데이트 2026. 10. 20.

gcp-check-permissions

서비스 계정이 조회 범위에서 Google Cloud 확장 명령어에 필요한 권한을 가졌는지 확인합니다.

문법

gcp-check-permissions [profile=STRING] [scope=STRING]

옵션

profile=STRING
선택 옵션. Google Cloud 접속 프로파일 식별자. 쉼표로 여러 개를 지정하면 프로파일마다 차례로 조회하고 profile 필드로 구분합니다. 생략하면 사용 권한이 있는 모든 Google Cloud 접속 프로파일로 조회합니다. 조회 중 한 프로파일에서 오류가 나면 그때까지 출력한 결과는 남고, 나머지 프로파일은 조회하지 않은 채 쿼리가 오류로 끝납니다.
scope=STRING
선택 옵션. 점검할 범위. projects/프로젝트ID(또는 projects/프로젝트번호), folders/폴더번호, organizations/조직번호 중 하나. 생략하면 서비스 계정 JSON 키의 프로젝트를 점검합니다.

출력 필드

필드타입이름설명
profile문자열프로파일접속 프로파일 이름
scope문자열조회 범위점검한 조회 범위
permission문자열권한IAM 권한
granted불리언보유 여부서비스 계정이 조회 범위에서 권한을 가졌는지 여부
required_by문자열사용 명령어이 권한이 필요한 확장 명령어
recommended_role문자열권장 역할권한이 없을 때 부여할 기본 역할. 실제 부여된 역할이 아닌 안내값

오류 코드

파싱 오류

오류 메시지원인해결
사용 가능한 Google Cloud 프로파일이 없습니다.프로파일 식별자가 틀렸거나 사용 권한이 없음profile 옵션에 접속 프로파일 식별자 입력, 프로파일 사용 권한 확인
scope 형식이 올바르지 않습니다: {scope}scope 형식 오류projects/, folders/, organizations/ 다음에 ID·번호 입력

런타임 오류

오류 메시지원인해결
HTTP 403: PERMISSION_DENIED - Cloud Resource Manager API has not been used in project ...서비스 계정 프로젝트에서 Cloud Resource Manager API 미사용 설정서비스 계정이 속한 프로젝트에서 Cloud Resource Manager API 사용 설정
token exchange failed, HTTP 400: Invalid grantJSON 키 오류, 서비스 계정·키 삭제새 키를 발급해 접속 프로파일 수정

설명

Cloud Resource Manager API v3의 testIamPermissions로 서비스 계정이 지정한 범위에서 아래 권한을 가졌는지 확인하고, 권한마다 한 행을 출력합니다. 권한을 바꾸지 않고 확인만 합니다.

권한사용 명령어 (required_by)권장 역할 (recommended_role)
cloudasset.assets.searchAllResourcesgcp-assets, gcp-iam-policiesroles/cloudasset.viewer (Cloud 애셋 뷰어)
cloudasset.assets.searchAllIamPoliciesgcp-iam-policiesroles/cloudasset.viewer (Cloud 애셋 뷰어)
resourcemanager.projects.getgcp-projectsroles/browser (탐색자)

권한이 없는 범위를 지정해도 오류 없이 granted가 false로 나옵니다. 설치 직후나 다른 명령어에서 권한 오류가 났을 때 원인을 확인하는 용도로 사용합니다.

Note
이 명령어를 실행하는 데는 별도 역할이 필요 없지만, 서비스 계정이 속한 프로젝트에서 Cloud Resource Manager API가 사용 설정돼 있어야 합니다. 역할을 부여한 직후에는 반영까지 몇 분 걸릴 수 있습니다.

사용 예

예시: 조직 범위 권한 점검

상황: 조직 단위로 조회하기 전에 서비스 계정에 필요한 권한이 모두 있는지 확인합니다.

gcp-check-permissions profile=gcp scope=organizations/123456789012

예상 결과:

profilescopepermissiongrantedrequired_byrecommended_role
gcporganizations/123456789012cloudasset.assets.searchAllResourcestruegcp-assets, gcp-iam-policiesroles/cloudasset.viewer
gcporganizations/123456789012cloudasset.assets.searchAllIamPoliciestruegcp-iam-policiesroles/cloudasset.viewer
gcporganizations/123456789012resourcemanager.projects.gettruegcp-projectsroles/browser

결과 해석: granted가 false인 행이 있으면 recommended_role 필드의 역할을 해당 범위에 부여합니다.

예시: 부족한 권한만 보기

상황: 여러 접속 프로파일 중 권한이 부족한 것을 찾습니다.

gcp-check-permissions profile=gcp,gcp2
| search granted == false
| fields profile, scope, permission, required_by, recommended_role

결과 해석: 결과가 없으면 모든 프로파일이 필요한 권한을 가진 것입니다.