체크포인트
Create an instance with name as lab-1 in Project 1
/ 10
Update the default zone
/ 10
Create a configuration for Username 2 and name it as user2
/ 10
Restricting Username 2 to roles/viewer in Project 2
/ 10
Create a new role with permissions for the devops team
/ 10
Check binding to roles/iam.serviceAccountUser
/ 5
Bound Username 2 to devops role
/ 5
Create an instance with name as lab-2 in Project 1
/ 5
Check the created service account
/ 5
Check the binding for the service account to roles/iam.serviceAccountUser
/ 10
Check the binding for the service account to roles/compute.instanceAdmin
/ 10
Check lab-3 has the service account attached
/ 10
gcloud를 사용하여 IAM 권한 구성
GSP647
개요
이 실습에서는 IAM 및 gcloud와 관련하여 이해해야 할 세 가지 일반적인 영역을 살펴봅니다.
- gcloud 환경 구성
- 여러 gcloud 구성 사용
- 서비스 계정 사용
이 실습에서는 gcloud
CLI 도구를 사용하여 Cloud Identity and Access Management(IAM)의 명령어 특성을 설정하고 구성합니다.
학습할 내용
이 실습에서 학습할 내용은 다음과 같습니다.
- IAM 검토 및
gcloud
클라이언트 사용 - 여러 IAM 구성 생성 및 IAM 구성 간에 전환
- 올바른 IAM 권한 식별 및 할당
- 서비스 계정 생성 및 사용
환경 시작
두 개의 사용자 계정과 두 개의 프로젝트로 시작합니다.
-
user1
은 두 프로젝트의 '소유자'입니다. -
user2
는 첫 번째 프로젝트 한정 '뷰어'입니다.
첫 번째 프로젝트에는 실행 중인 Linux 가상 머신(VM)이 있습니다.
IAM이란?
Google Cloud는 누가(ID) 어떤 리소스에 어떤 액세스 권한(역할)이 있는지 정의하여 액세스 제어를 관리할 수 있는 Cloud Identity and Access Management(IAM)를 제공합니다.
IAM에서 리소스 액세스 권한은 최종 사용자에게 직접 부여되지 않습니다. 대신 권한이 역할로 그룹화되고 역할은 인증된 주 구성원에게 부여됩니다. 전에는 IAM에서 주 구성원을 구성원이라고 주로 지칭했습니다. 일부 API에서는 여전히 이 용어를 사용합니다.
ID
Cloud IAM을 통해 주 구성원에게 액세스 권한을 제공하며, 주 구성원은 다음 유형 중 하나일 수 있습니다.
- Google 계정
- 서비스 계정
- Google 그룹
- Google Workspace 계정
- Cloud ID 도메인
- 인증된 모든 사용자
- 모든 사용자
ID 유형에 대한 자세한 내용은 ID와 관련된 개념 가이드에서 자세히 알아보세요.
이 실습에서는 Google 계정, 서비스 계정, Cloud ID 도메인 그룹을 사용합니다.
역할
역할은 권한 모음입니다. 사용자에게 직접 권한을 할당할 수는 없으며, 대신 역할을 부여해야 합니다. 사용자에게 역할을 부여하면 역할에 포함된 모든 권한이 부여됩니다.
역할에 대한 자세한 내용은 역할 가이드를 참조하세요.
gcloud란?
gcloud CLI는 Cloud SDK에 포함되어 있습니다. gcloud 명령줄 도구를 사용하려면 먼저 시스템에 SDK를 다운로드하여 설치하고 초기화해야 합니다. 이 도구를 사용하여 명령줄이나 스크립트 및 기타 자동화에서 여러 가지 일반적인 플랫폼 작업을 수행할 수 있습니다.
gcloud에 대한 자세한 내용은 gcloud CLI 개요 가이드를 참조하세요.
설정 및 요건
실습 시작 버튼을 클릭하기 전에
다음 안내를 확인하세요. 실습에는 시간 제한이 있으며 일시중지할 수 없습니다. 실습 시작을 클릭하면 타이머가 시작됩니다. 이 타이머에는 Google Cloud 리소스를 사용할 수 있는 시간이 얼마나 남았는지 표시됩니다.
실무형 실습을 통해 시뮬레이션이나 데모 환경이 아닌 실제 클라우드 환경에서 직접 실습 활동을 진행할 수 있습니다. 실습 시간 동안 Google Cloud에 로그인하고 액세스하는 데 사용할 수 있는 새로운 임시 사용자 인증 정보가 제공됩니다.
이 실습을 완료하려면 다음을 준비해야 합니다.
- 표준 인터넷 브라우저 액세스 권한(Chrome 브라우저 권장)
- 실습을 완료하기에 충분한 시간---실습을 시작하고 나면 일시중지할 수 없습니다.
실습을 시작하고 Google Cloud 콘솔에 로그인하는 방법
-
실습 시작 버튼을 클릭합니다. 실습 비용을 결제해야 하는 경우 결제 수단을 선택할 수 있는 팝업이 열립니다. 왼쪽에는 다음과 같은 항목이 포함된 실습 세부정보 패널이 있습니다.
- Google Cloud 콘솔 열기 버튼
- 남은 시간
- 이 실습에 사용해야 하는 임시 사용자 인증 정보
- 필요한 경우 실습 진행을 위한 기타 정보
-
Google Cloud 콘솔 열기를 클릭합니다(Chrome 브라우저를 실행 중인 경우 마우스 오른쪽 버튼으로 클릭하고 시크릿 창에서 링크 열기를 선택합니다).
실습에서 리소스가 가동되면 다른 탭이 열리고 로그인 페이지가 표시됩니다.
팁: 두 개의 탭을 각각 별도의 창으로 나란히 정렬하세요.
참고: 계정 선택 대화상자가 표시되면 다른 계정 사용을 클릭합니다. -
필요한 경우 아래의 사용자 이름을 복사하여 로그인 대화상자에 붙여넣습니다.
{{{user_0.username | "Username"}}} 실습 세부정보 패널에서도 사용자 이름을 확인할 수 있습니다.
-
다음을 클릭합니다.
-
아래의 비밀번호를 복사하여 시작하기 대화상자에 붙여넣습니다.
{{{user_0.password | "Password"}}} 실습 세부정보 패널에서도 비밀번호를 확인할 수 있습니다.
-
다음을 클릭합니다.
중요: 실습에서 제공하는 사용자 인증 정보를 사용해야 합니다. Google Cloud 계정 사용자 인증 정보를 사용하지 마세요. 참고: 이 실습에 자신의 Google Cloud 계정을 사용하면 추가 요금이 발생할 수 있습니다. -
이후에 표시되는 페이지를 클릭하여 넘깁니다.
- 이용약관에 동의합니다.
- 임시 계정이므로 복구 옵션이나 2단계 인증을 추가하지 않습니다.
- 무료 체험판을 신청하지 않습니다.
잠시 후 Google Cloud 콘솔이 이 탭에서 열립니다.
작업 1. gcloud 환경 구성
이미 이 실습에는 gcloud
가 설치되지 않은 환경을 시뮬레이션하는 centos-clean이라는 Compute Engine 인스턴스가 있습니다. Google Cloud 콘솔을 사용하여 이 인스턴스에 연결합니다.
-
탐색 메뉴 > Compute Engine > VM 인스턴스로 이동하여 컴퓨팅 인스턴스 목록을 엽니다.
-
centos-clean이라는 이름의 컴퓨팅 인스턴스가 포함된 줄에서 SSH를 클릭합니다.
- 첫 테스트로, 버전을 확인하여
gcloud
가 성공적으로 설치되었는지 확인합니다. SSH 세션 내에서 다음을 실행합니다.
새 인스턴스 생성 및 기본 영역 업데이트
gcloud
명령줄 도구가 설치되었는지 확인한 후 컴퓨팅 인스턴스를 생성하여 몇 가지를 변경합니다.
- 먼저 gcloud에서 인증합니다. SSH 세션 내에서 다음을 실행합니다.
계속하시겠어요(Y/n)? 메시지가 표시되면 Enter 키를 누릅니다.
-
새 탭에 표시된 링크로 이동합니다.
-
활성 사용자 이름(
)을 클릭하고 허용을 클릭합니다. -
로그인하려는 머신의 gcloud CLI에 다음 인증 코드를 입력합니다 메시지가 표시되면 복사 버튼을 클릭한 다음 SSH 세션으로 돌아가서 승인 코드 입력: 메시지에 코드를 붙여넣습니다.
-
SSH 세션에서 다음과 같이 리전과 영역을 설정합니다.
- SSH 세션 내에서 다음을 실행합니다.
모두 올바르게 설정되어 있다면 명령어는 인스턴스를 생성합니다.
하지만 어떤 크기로 어디에 어떤 이미지가 사용될까요?
서비스에서 사용하는 기본값은 여러 가지가 있습니다. 일부는 gcloud
구성에서 제어할 수 있습니다. 예를 들어 인스턴스 위치는 영역 설정으로 제어할 수 있습니다.
- 현재 gcloud 구성을 확인합니다. SSH 세션 내에서 다음을 실행합니다.
이제 compute
섹션, core
섹션, active configuration
이 표시됩니다. 각각을 변경할 수 있지만 이 실습에서는 영역만 변경하겠습니다. VM이 만들어진 영역을 확인합니다.
- 이제 SSH 세션 실행 내에서 다음을 실행하여 사용할 수 있는 모든 영역을 나열합니다.
-
같은 리전에 있는 다른 영역 중 하나를 선택합니다. 예를 들어 현재 영역이
us-west2-a
라면us-west2-b
를 선택할 수 있습니다. -
현재 영역을 같은 리전의 다른 영역으로 변경합니다. SSH 세션 내에서 다음을 실행하여
ZONE
을 선택한 영역으로 바꿉니다.
- 영역이 변경되었는지 확인합니다. SSH 세션 내에서 다음을 실행합니다.
명시한 영역에 변경사항이 반영된 것을 확인할 수 있습니다.
gcloud config set
명령어를 사용하여 다른 설정을 변경할 수 있습니다. 이러한 변경사항은 영구적이며 홈 디렉터리에 기록됩니다.
기본 구성은 ~/.config/gcloud/configurations/config_default에 저장됩니다.
인스턴스를 만들 때 기본 영역이 아닌 다른 영역을 사용하려면 --zone switch를 사용하면 됩니다. 예를 들어 gcloud compute instances create lab-1 --zone us-central1-f
를 사용할 수 있습니다.
- 영역이 구성 파일에 기록되었는지 확인합니다. SSH 세션 내에서 다음을 실행합니다.
구성은 텍스트로만 저장되며 백업이나 복사가 가능함을 확인할 수 있습니다.
작업 2. 여러 IAM 구성 생성 및 IAM 구성 간에 전환
이제 1개 계정을 설정했습니다. 다른 팀에서 작업하거나 다른 계정에 액세스해야 하는 상황에서도 gcloud config
로 관리할 수 있습니다.
다음 작업에서는 두 번째 구성을 만들고 두 구성 간에 전환하는 방법을 알아봅니다.
새 IAM 구성 만들기
이 실습에서는 두 번째 Google 계정으로 로그온할 수 있습니다. 이 계정에는 첫 번째 프로젝트에 대해 읽기 전용(뷰어) 액세스 권한이 있습니다. 이 사용자에 대한 새 구성을 만듭니다.
- 두 번째 사용자 계정에 대해
gcloud
구성을 새로 시작합니다. SSH 세션 내에서 다음을 실행합니다.
-
옵션 2인 Create a new configuration(새 구성 만들기)을 선택합니다.
-
구성 이름: user2를 입력합니다.
-
새 계정으로 로그인: 옵션 3을 선택하면 제공된 다른 사용자 이름으로 로그인합니다.
-
계속하시겠어요(Y/n)? 메시지가 표시되면 Enter 키를 누릅니다.
-
새 탭에 표시된 링크로 이동합니다.
-
다른 계정 사용을 클릭합니다.
-
두 번째 사용자 계정(
)을 복사하고 이메일 또는 휴대전화 프롬프트에 붙여넣습니다. -
실습을 시작할 때 사용한 것과 동일한 비밀번호를 복사하고 비밀번호 입력 프롬프트에 붙여넣습니다.
-
이해함을 클릭합니다.
-
허용을 클릭합니다.
Cloud SDK가 Google 계정과 동일한 액세스 권한을 갖는 것에 동의하는 것입니다.
-
로그인하려는 머신의 gcloud CLI에 다음 인증 코드를 입력합니다 프롬프트가 표시되면 복사 버튼을 클릭한 다음 SSH 세션으로 돌아가서 Enter authorization code:(승인 코드 입력:) 프롬프트에 코드를 붙여넣습니다.
-
Pick cloud project to use(사용할 클라우드 프로젝트 선택):의 경우 현재 프로젝트(
)의 위치를 찾은 다음 프로젝트에 해당하는 번호를 입력합니다.
초기화가 완료되고 영역과 리전이 설정된 것을 확인할 수 있습니다.
새 계정 테스트하기
이 새 계정에는 프로젝트에 대한 뷰어 전용 액세스 권한이 있으므로 일부 리소스를 보고 생성하여 실제로 이 계정을 사용하고 있는지 테스트해 볼 수 있습니다.
- 첫 번째 프로젝트에서 세부정보를 볼 수 있는지 확인합니다. SSH 세션 내에서 다음을 실행합니다.
두 번째 사용자 계정에는 뷰어 액세스 권한이 있으므로 centos-clean
과 lab-1
인스턴스가 나열되어 있어야 합니다.
- 할당된 역할이 기본 뷰어이므로 첫 번째 프로젝트에서 인스턴스를 만들 수 없는지 확인합니다. SSH 세션 내에서 다음을 실행합니다.
두 번째 사용자 계정에는 뷰어 액세스 권한만 있어 인스턴스를 만들 수 없으므로 이 명령어는 작동하지 않습니다. 작동하지 않는 데까지는 시간이 조금 걸립니다.
- 첫 번째 사용자의 구성(기본값)으로 다시 변경합니다. SSH 세션 내에서 다음을 실행합니다.
이제 원래 사용자 계정의 사용자 인증 정보를 다시 사용합니다. 이후 역할과 권한에 대해 알아보면서 두 계정 간에 전환할 수 있습니다.
작업 3. 올바른 IAM 권한 식별 및 할당
이 프로젝트에는 두 개의 사용자 계정이 제공되어 있습니다. 첫 번째 사용자는 두 프로젝트에 대한 모든 권한이 있으므로 관리자 계정으로 생각할 수 있습니다. 두 번째 사용자에게는 두 프로젝트에 대한 뷰어 전용 액세스 권한만 있습니다. 두 번째 사용자를 DevOps 사용자라고 부르며 해당 사용자 ID는 일반적인 DevOps 수준의 사용자를 나타냅니다.
다음으로 gcloud
를 사용하여 버킷 및 인스턴스 생성을 허용하는 프로젝트의 맞춤 역할을 만들어 DevOps 사용자를 위한 하나의 프로젝트에 대한 액세스를 구성합니다.
역할 및 권한 검토
- 모든 역할을 보려면 SSH 세션 실행 내에서 다음을 실행합니다.
역할 목록이 반환됩니다. 명령어에 grep "name:"
을 추가하면 반환되는 데이터의 양이 역할 이름만 포함하도록 줄어듭니다.
이러한 역할 중 하나를 조사하여 역할에 할당된 권한을 확인합니다. 권한을 보려면 gcloud iam roles describe
를 사용합니다. 간략히 역할만 보려면 roles/compute.instanceAdmin을 사용합니다.
-
compute.instanceAdmin
의 사전 정의된 역할을 조사합니다. SSH 세션 내에서 다음을 실행합니다.
roles/compute.instanceAdmin에는 다음과 같은 많은 권한이 있지만, 나중에 필요한 최소 권한은 다음과 같습니다.
- compute.instances.create
- compute.instances.delete
- compute.instances.start
- compute.instances.stop
- compute.instances.update
- compute.disks.create
- compute.subnetworks.use
- compute.subnetworks.useExternalIp
- compute.instances.setMetadata
- compute.instances.setServiceAccount
전체 역할 목록과 할당된 권한을 검토하려면 IAM 권한 참조 가이드를 참조하세요.
두 번째 사용자에게 두 번째 프로젝트에 대한 액세스 권한 부여
역할에 권한이 포함되어 있다는 것을 알았으니 이제 사용자 계정에 역할과 그에 따른 모든 관련 권한을 할당하려면 어떻게 해야 할까요?
역할을 연결하는 방법에는 두 가지가 있습니다.
- 사용자 및 조직에 연결
- 사용자 및 프로젝트에 연결
다음으로 두 번째 사용자에게 두 번째 프로젝트에 대해 '뷰어'라는 기본 역할을 연결합니다.
두 번째 사용자에게 두 번째 프로젝트에 대한 액세스 권한이 없는지 테스트
-
gcloud
구성을 두 번째 사용자(user2)로 다시 전환합니다. SSH 세션 내에서 다음을 실행합니다.
이제 다시 user2
가 되었습니다.
-
PROJECTID2
를 두 번째 프로젝트로 설정합니다. SSH 세션 내에서 다음을 실행합니다.
bashrc
파일을 추가하므로 주의해야 합니다.WARNING: You do not appear to have access to project [your 2nd project id] or it does not exist
라는 경고가 표시됩니다.
- 계속하시겠어요(Y/n)? 메시지가 표시되면 N을 입력하고 Enter 키를 누릅니다.
이는 user2에 PROJECTID2 프로젝트에 대한 액세스 권한이 없다는 의미입니다. 이 부분은 다음 섹션에서 수정합니다.
두 번째 사용자에게 두 번째 프로젝트의 뷰어 역할 할당
- 두 번째 사용자에게 액세스를 부여할 권한이 있는 기본값 gcloud 구성으로 다시 전환합니다. SSH 세션 내에서 다음을 실행합니다.
- 다음과 같이
jq
를 설치합니다.
그런 다음 USERID2
값을 두 번째 사용자 이름으로 설정하고 두 번째 사용자에게 두 번째 프로젝트에 대한 뷰어 역할을 결합합니다.
- SSH 세션 내에서 다음을 실행합니다.
명령어를 실행하면 텍스트가 다음과 같이 표시됩니다. 위로 스크롤해야 할 수도 있습니다.
작업 4. user2에게 액세스 권한이 있는지 테스트
- gcloud 구성을 user2로 전환합니다. SSH 세션 내에서 다음을 실행합니다.
- user2에 대한 구성을 두 번째 프로젝트로 변경합니다. SSH 세션 내에서 다음을 실행합니다.
이번에는 오류 메시지가 표시되지 않아야 합니다.
- 뷰어 액세스 권한이 있는지 확인합니다. SSH 세션 내에서 다음을 실행합니다.
이제 이 프로젝트에서는 인스턴스가 0개 표시됩니다.
- 두 번째 프로젝트에서 두 번째 사용자로 인스턴스를 만들어 봅니다. SSH 세션 내에서 다음을 실행합니다.
user2는 프로젝트에 대한 뷰어 권한만 있기 때문에 이 명령어는 작동하지 않습니다.
- gcloud 구성을 기본값으로 전환합니다. SSH 세션 내에서 다음을 실행합니다.
이제 원래 사용자 계정의 사용자 인증 정보를 다시 사용합니다.
권한이 있는 새 역할 만들기
다음으로 DevOps팀에 필요한 권한 집합이 있는 새 역할을 만듭니다.
- 인스턴스를 만드는 권한이 있는
devops
라는 맞춤 역할을 만듭니다. SSH 세션 내에서 다음을 실행합니다.
이 명령어는 프로젝트에 인스턴스를 만들고 관리하는 권한이 있는 devops
라는 맞춤 역할을 만듭니다.
역할의 전체 이름이 나열되며, 역할이 프로젝트 내에 있으므로 경로는 projects/PROJECT/roles/ROLENAME
패턴입니다.
두 번째 계정에 두 프로젝트 모두에 대한 역할 결합
역할을 만들었으니 사용자와 역할을 프로젝트에 결합해야 합니다. gcloud projects add-iam-policy-binding
을 사용하여 결합합니다. 이 명령어를 더 쉽게 실행하기 위해 먼저 프로젝트 ID와 사용자 계정 등 몇 가지 환경 변수를 설정합니다.
- 두 번째 사용자에게 두 번째 프로젝트에 대한
iam.serviceAccountUser
역할을 결합합니다. SSH 세션 내에서 다음을 실행합니다.
서비스 계정이 연결된 인스턴스를 만들려면 권한이 필요합니다. iam.serviceAccountUser
역할에는 이러한 권한이 있으므로 이 사전 정의된 역할을 사용합니다.
- 두 번째 사용자에게 두 번째 프로젝트에 대한
devops
라는 맞춤 역할을 결합합니다. 이 페이지 왼쪽에서 두 번째 사용자 계정을 찾을 수 있습니다. 두 번째 사용자 계정에 USERID를 설정했는지 확인합니다.
SSH 세션 내에서 다음을 실행합니다.
명령어를 실행하면 텍스트가 다음과 같이 표시됩니다. 위로 스크롤해야 할 수도 있습니다.
새로 할당된 권한 테스트
- gcloud 구성을 user2로 전환합니다. SSH 세션 내에서 다음을 실행합니다.
이제 다시 user2가 되었습니다.
- lab-2라는 인스턴스를 만들어 봅니다. SSH 세션 내에서 다음을 실행합니다.
이제 user2에 대해 인스턴스 생성이 작동합니다.
- 인스턴스가 존재하는지 확인합니다. SSH 세션 내에서 다음을 실행합니다.
내 환경
마지막으로 변경 후 환경은 다음과 같습니다.
작업 5. 서비스 계정 사용
gcloud
를 사용하여 인증하고 역할을 통해 Google Cloud 서비스에 액세스하는 방법을 살펴보았습니다. 이제 일반적인 접근방식을 살펴보겠습니다.
애플리케이션 프로그래밍 인터페이스(API)를 사용하여 Cloud Storage 버킷을 읽고 쓰는 애플리케이션이 있습니다. 새 서버를 시작할 때마다 인증을 받아야 한다면 번거로울 뿐만 아니라 클라우드의 사용 취지와도 맞지 않으므로 서비스 계정을 사용합니다.
서비스 계정은 개별 최종 사용자가 아닌, 애플리케이션 또는 가상 머신(VM)에 속한 특별한 Google 계정입니다. 애플리케이션은 서비스 계정을 사용하여 Google API 서비스를 호출하므로 사용자가 직접 관여하지 않습니다.
서비스 계정에 대한 자세한 내용은 서비스 계정 가이드를 참조하세요.
이제 서비스 계정을 만들고 해당 서비스 계정을 컴퓨팅 인스턴스와 함께 사용한 다음 서비스 계정에서 필요한 액세스 권한이 허용되는지 테스트합니다.
서비스 계정 만들기
- gcloud 구성을 기본값으로 전환하면
user2
에는 서비스 계정을 설정하고 구성할 수 있는 권한이 없습니다. SSH 세션 내에서 다음을 실행합니다.
- 구성에서 프로젝트를
PROJECTID2
로 설정합니다. SSH 세션 내에서 다음을 실행합니다.
알맞은 프로젝트를 대상으로 하는지 확인합니다.
- 서비스 계정을 만듭니다. SSH 세션 내에서 다음을 실행합니다.
- 서비스 계정의 이메일 주소를 받습니다. SSH 세션 내에서 다음을 실행합니다.
- 이메일 주소를
SA
라는 로컬 변수에 넣습니다. SSH 세션 내에서 다음을 실행합니다.
이 명령어는 SA 로컬 변수를 서비스 계정의 이메일 주소로 설정합니다. 정말 유용한 명령어입니다.
- 서비스 계정에
iam.serviceAccountUser
역할을 부여합니다. SSH 세션 내에서 다음을 실행합니다.
이 역할을 통해 서비스 계정으로 컴퓨팅 인스턴스에 서비스 계정을 할당할 수 있습니다.
작업 6. 컴퓨팅 인스턴스와 함께 서비스 계정 사용
- 서비스 계정에
compute.instanceAdmin
역할을 부여합니다. SSH 세션 내에서 다음을 실행합니다.
이 역할을 통해 서비스 계정으로 컴퓨팅 인스턴스를 관리할 수 있습니다.
- DevOps 서비스 계정이 연결된 인스턴스를 만듭니다. 또한 인스턴스가 수행할 수 있는 API 호출을 정의하는 액세스 범위를 지정해야 합니다. SSH 세션 내에서 다음을 실행합니다.
액세스 범위는 인스턴스에 권한을 지정하는 기존 방법입니다. 액세스 범위는 보안 메커니즘이 아닙니다. 대신 gcloud
도구 또는 클라이언트 라이브러리의 요청에 사용되는 기본 OAuth 범위를 정의합니다. gRPC 또는 SignBlob API와 같은 OAuth를 통해 인증되지 않는 요청을 수행할 때는 아무런 영향을 주지 않습니다.
서비스 계정으로 실행되도록 인스턴스를 구성할 때는 액세스 범위를 설정해야 합니다.
인스턴스에 전체 cloud-platform 액세스 범위를 설정한 후 IAM 역할을 통해 서비스 계정의 API 액세스 권한을 안전하게 제한하는 것이 가장 좋습니다.
액세스 범위는 인스턴스별로 적용됩니다. 인스턴스를 만들 때 액세스 범위를 설정합니다. 액세스 범위는 인스턴스 수명 동안에만 유지됩니다.
서비스 계정이 속한 프로젝트에서 관련 API를 사용 설정하지 않았으면 액세스 범위가 적용되지 않습니다. 예를 들어 가상 머신 인스턴스에서 Cloud Storage에 액세스 범위를 부여하면 프로젝트에서 Cloud Storage API를 사용 설정한 경우에만 인스턴스가 Cloud Storage API를 호출할 수 있습니다.
작업 7. 서비스 계정 테스트
-
gcloud compute ssh
를 사용하여 새로 만든 인스턴스에 연결합니다. SSH 세션 내에서 다음을 실행합니다.
계속 진행할지 묻는 메시지가 표시되면 Enter 키를 누릅니다.
비밀번호 생성 단계를 건너뛰려면 Enter 키를 두 번 누릅니다.
- 사용된 기본 이미지에는 이미
gcloud
구성이 포함되어 있습니다. SSH 세션 내에서 다음을 실행합니다.
이제 구성에 서비스 계정이 포함되었습니다.
- 인스턴스를 만듭니다. 이를 통해 서비스 계정에 필수 권한이 있는지 테스트합니다.
Enter 키를 눌러 이 VM의 기본 영역으로 지정할 수 있습니다.
- 연결된 역할이 작동하는지 확인합니다. SSH 세션 내에서 다음을 실행합니다.
서비스 계정에 권한이 있으므로 인스턴스가 나열되었음을 확인할 수 있습니다.
환경이 다음과 같이 표시됩니다.
수고하셨습니다
Cloud SDK 도구인 gcloud
를 사용하여 다음 작업을 완료했습니다.
- gcloud 클라이언트 설치 및 구성
- 여러 IAM 구성 생성 및 IAM 구성 간에 전환
- 올바른 IAM 권한 식별 및 할당
- 서비스 계정 생성 및 사용
다음 단계/더 학습하기
- Cloud Identity and Access Management 문서
- 다음 실습을 확인하세요.
Google Cloud 교육 및 자격증
Google Cloud 기술을 최대한 활용하는 데 도움이 됩니다. Google 강의에는 빠른 습득과 지속적인 학습을 지원하는 기술적인 지식과 권장사항이 포함되어 있습니다. 기초에서 고급까지 수준별 학습을 제공하며 바쁜 일정에 알맞은 주문형, 실시간, 가상 옵션이 포함되어 있습니다. 인증은 Google Cloud 기술에 대한 역량과 전문성을 검증하고 입증하는 데 도움이 됩니다.
설명서 최종 업데이트: 2024년 4월 10일
실습 최종 테스트: 2024년 4월 10일
Copyright 2024 Google LLC All rights reserved. Google 및 Google 로고는 Google LLC의 상표입니다. 기타 모든 회사명 및 제품명은 해당 업체의 상표일 수 있습니다.