본문 바로가기
CSP (Cloud Service Provider)/GCP

[GCP] Service Account Impersonate 실습

by BTC_금쪽이 2023. 9. 1.

베하~! 안녕하세요 금쪽상담소의 오은영석사와 금쪽이입니다!!

한주동안 잘 지내셨나요?

가을이 성큼성큼 다가오고 있는 것이 느껴지는 여름의 끝자락이네요.

이번 시간에는 지난 시간에 같이 배웠던 Service Account Impersonate를 실습해보는 시간을 가져보겠습니다.

지난 시간이 기억나지 않는다면 아래의 링크를 참조해주세요!!

2023.08.28 - [CSP (Cloud Service Provider)/GCP] - [GCP] Service Account Impersonate

 

[GCP] Service Account Impersonate

베하~! 안녕하세요 금쪽상담소의 오은영석사와 금쪽이입니다!! 한주동안 잘 지내셨나요? 가을이 성큼성큼 다가오고 있는 것이 느껴지는 여름의 끝자락이네요. 무더웠던 여름날의 마지막으로 배

btcd.tistory.com

 

자 그럼 시작해 볼까요?!


우선, 서비스 계정을 가장하기 위해서 필요한 권한을 확인하기 위해서는 Service Account Token Creator 권한이 필요합니다.

 

Service Account를 가장하려고 하는 사용자(ex. 본인)에게 먼저 권한을 부여해 주도록 하겠습니다.

혹시나, 본인이 Owner(소유자) 권한을 가지고 있다면, 위 권한을 별도로 부여해 줄 필요는 없습니다.

 

저는 설명을 위해 위 권한을 부여하도록 하겠습니다.

이 후 본인이 사용할 Service Account의 권한을 확인합니다.

 

여기서 저는 Google Cloud SDK를 통해 Compute Engine Resource를 확인하고 싶다고 가정하겠습니다.

그렇다면 저에게 필요한 Service Account는 이 계정이겠군요!

 

저는 이 Service Account의 권한을 기반으로 Compute Engine Resource를 확인해야하기 때문에, 해당 계정에게

Workload Identity User 권한을 부여하도록 하겠습니다.

 

이 후 Google Cloud SDK 환경에 접속하여 Login을 하고 현재 Info를 확인합니다.

gcloud info

 

여기서 세팅한 Service Account를 가장하기 위해서는 다음 명령어를 실행합니다.

gcloud config set auth/impersonate_service_account SERVICE_ACCOUNT_EMAIL

위 그림 처럼 Current Properties에서 서비스 계정을 가장한 형태가 나타납니다.

 

이후 Compute Engine Resource를 확인하기 위한 명령어를 실행 시켜 보겠습니다.

 

Service Account를 가장하여 해당 API를 통해 Instance의 list를 확인해오는 것을 확인했습니다.

 

해당 권한을 Gcloud Auth 등록이 아닌, 해당 명령어를 사용할 때만 쓰고 싶다면 아래 형태의 명령어를 사용하시면 됩니다.

gcloud storage buckets list --impersonate-service-account=SERVICE_ACCT_EMAIL

위 형태 처럼 사용하고 싶은 명령어의 뒤에 옵션을 통해 사용이 가능합니다.

--impersonate-service-account=

 

이러한 기능 사용이 필요가 없어짐에 따라 해당 가장을 제거하기 위해서는 아래의 명령어를 사용하면 됩니다.

gcloud config unset auth/impersonate_service_account SERVICE_ACCOUNT_EMAIL

 


자, 이렇게 해서 오늘은 Service Account Impersonate를 실습해보았습니다.

 

Key 사용에 대해서 민감하고, 보안이슈를 줄이기 위해서 CSP에서 제공하는 다양한 인증을 통해서

안전하게 권한을 관리하실 수 있으면 좋을 것 같습니다!!

 

그럼 여기서 이번 시간을 마치겠습니다!

 

베빠~!

'CSP (Cloud Service Provider) > GCP' 카테고리의 다른 글

Cloud Armor & Firewall  (0) 2023.09.14
BigQuery - Time Travel이란?  (4) 2023.09.01
[GCP] Service Account Impersonate  (0) 2023.08.28
Filestore란?  (0) 2023.08.18
[GCP] Dataproc 생성 hands-on  (0) 2023.08.18

댓글