arrow_back

IAM 살펴보기(Azure)

로그인 가입
700개 이상의 실습 및 과정 이용하기

IAM 살펴보기(Azure)

실습 1시간 universal_currency_alt 크레딧 5개 show_chart 입문
info 이 실습에는 학습을 지원하는 AI 도구가 통합되어 있을 수 있습니다.
700개 이상의 실습 및 과정 이용하기

클라우드 전문가라면 이미 Azure Identity and Access Management(IAM) 아키텍처에 익숙할 뿐 아니라 일부 권장사항을 따른 경험도 있을 것입니다. IAM에 관한 일반적인 우려사항은 다음과 같습니다.

  • 리소스에 대한 액세스를 관리하는 가장 좋은 방법은 무엇일까요?
  • 사용자에게 실제로 필요한 리소스에 대한 액세스 권한만 부여하려면 어떻게 해야 할까요?

Azure에서는 조직이 IAM, Azure Active Directory(Azure AD), 사용자, 그리고 연결된 정책이 적용되는 역할을 함께 사용하여 다양한 Azure 계정에 대한 액세스를 제어할 수 있습니다.

Azure AD는 Azure 리소스에 대한 액세스 제어 및 관리 기능을 제공하는 멀티 테넌트 클라우드 기반 디렉터리 겸 ID 관리 서비스입니다.

Azure 다이어그램

이제 Google Cloud에서 IAM 제어를 구현하는 방법을 살펴보겠습니다.

개요

이 실습에서는 서비스 계정 사용자 역할을 사용하는 방법과 역할을 부여하는 방법을 알아봅니다.

목표

이 실습에서는 다음 작업을 수행하는 방법을 알아봅니다.

  • IAM을 사용하여 액세스 제어 구현하기
  • 특정 기능 또는 리소스에 대한 액세스 제한하기
  • 서비스 계정 사용자 역할 사용하기

실습 설정

각 실습에서는 정해진 기간 동안 새 Google Cloud 프로젝트와 리소스 집합이 무료로 제공됩니다.

  1. 실습 시작 버튼을 클릭합니다. 실습 비용을 결제해야 하는 경우 결제 수단을 선택할 수 있는 팝업이 열립니다. 왼쪽에는 다음과 같은 항목이 포함된 실습 세부정보 패널이 있습니다.

    • Google Cloud 콘솔 열기 버튼
    • 남은 시간
    • 이 실습에 사용해야 하는 임시 사용자 인증 정보
    • 필요한 경우 실습 진행을 위한 기타 정보
  2. Google Cloud 콘솔 열기를 클릭합니다(Chrome 브라우저를 실행 중인 경우 마우스 오른쪽 버튼으로 클릭하고 시크릿 창에서 링크 열기를 선택합니다).

    실습에서 리소스가 가동되면 다른 탭이 열리고 로그인 페이지가 표시됩니다.

    팁: 두 개의 탭을 각각 별도의 창으로 나란히 정렬하세요.

    참고: 계정 선택 대화상자가 표시되면 다른 계정 사용을 클릭합니다.
  3. 필요한 경우 아래의 사용자 이름을 복사하여 로그인 대화상자에 붙여넣습니다.

    {{{user_0.username | "Username"}}}

    실습 세부정보 패널에서도 사용자 이름을 확인할 수 있습니다.

  4. 다음을 클릭합니다.

  5. 아래의 비밀번호를 복사하여 시작하기 대화상자에 붙여넣습니다.

    {{{user_0.password | "Password"}}}

    실습 세부정보 패널에서도 비밀번호를 확인할 수 있습니다.

  6. 다음을 클릭합니다.

    중요: 실습에서 제공하는 사용자 인증 정보를 사용해야 합니다. Google Cloud 계정 사용자 인증 정보를 사용하지 마세요. 참고: 이 실습에 자신의 Google Cloud 계정을 사용하면 추가 요금이 발생할 수 있습니다.
  7. 이후에 표시되는 페이지를 클릭하여 넘깁니다.

    • 이용약관에 동의합니다.
    • 임시 계정이므로 복구 옵션이나 2단계 인증을 추가하지 않습니다.
    • 무료 체험판을 신청하지 않습니다.

잠시 후 Google Cloud 콘솔이 이 탭에서 열립니다.

참고: Google Cloud 제품 및 서비스 목록이 있는 메뉴를 보려면 왼쪽 상단의 탐색 메뉴를 클릭하거나 검색창에 제품 또는 서비스 이름을 입력합니다. 탐색 메뉴 아이콘

작업 1. 두 사용자 설정하기

첫 번째 사용자로 Cloud 콘솔에 로그인하기

  1. 이 실습은 연결 세부정보 대화상자에서 확인할 수 있는 두 개의 사용자 이름을 프로비저닝합니다. 시크릿 창에서 Cloud 콘솔에 평소처럼 로그인하되, Qwiklabs에서 제공한 사용자 이름 1을 사용합니다. 두 사용자 이름 모두 동일한 비밀번호 하나를 사용한다는 데 유의하세요.

두 번째 사용자로 Cloud 콘솔에 로그인하기

  1. 시크릿 창에서 탭을 하나 더 엽니다.
  2. console.cloud.google.com으로 이동합니다.
  3. 화면의 오른쪽 상단에 있는 사용자 아이콘을 클릭한 다음 계정 추가를 클릭합니다.
  4. Qwiklabs에서 제공한 사용자 이름 2로 Cloud 콘솔에 로그인합니다.
참고: 실습 중간에 사용자 이름 1 계정에서 로그아웃하는 경우 Qwiklabs에서 사용자 이름 2 계정을 삭제합니다. 따라서 사용자 이름 2 사용을 마칠 때까지 사용자 이름 1의 로그인 상태를 유지하세요.

작업 2. IAM 콘솔 탐색

사용자 이름 1 Cloud 콘솔 탭이 표시되었는지 확인합니다.

IAM 콘솔로 이동하여 역할 살펴보기

  1. 탐색 메뉴(탐색 메뉴 아이콘)에서 IAM 및 관리자 > IAM을 클릭합니다.
  2. 액세스 권한 부여를 클릭하고 드롭다운 메뉴에서 역할을 살펴봅니다. 역할 메뉴를 탐색하면서 각 리소스와 연결된 다양한 역할을 확인하세요.
  3. 취소를 클릭합니다.
  4. 사용자 이름 2의 Cloud 콘솔 탭으로 전환합니다.
  5. 탐색 메뉴(탐색 메뉴 아이콘)에서 IAM 및 관리자 > IAM을 클릭합니다. 목록을 둘러보면서 Qwiklabs 연결 세부정보 대화상자의 사용자 이름 1사용자 이름 2와 연결된 이름이 있는 행을 찾습니다.
참고: 사용자 이름 2는 현재 프로젝트에 액세스할 수 있지만 프로젝트 소유자 역할이 없기 때문에 어떤 역할도 편집할 수 없습니다. 사용자 이름 2의 연필 아이콘 위로 마우스를 가져가면 확인해 볼 수 있습니다.
  1. 사용자 이름 1의 Cloud 콘솔 탭으로 다시 전환합니다.
  2. IAM 콘솔에서 사용자 이름 2의 연필 아이콘을 클릭합니다. 사용자 이름 2는 현재 뷰어 역할을 가지고 있습니다. 프로젝트 역할을 변경하면 안 됩니다.
  3. 취소를 클릭합니다.

작업 3. 액세스 테스트를 위한 리소스 준비

버킷을 만들고 샘플 파일 업로드하기

  1. 사용자 이름 1의 Cloud 콘솔 탭으로 전환합니다.

  2. 탐색 메뉴(탐색 메뉴 아이콘)에서 Cloud Storage > 버킷을 클릭합니다.

  3. 버킷 만들기를 클릭합니다.

  4. 다음을 지정하고 나머지 설정은 기본값으로 둡니다.

속성 값(지정된 대로 값 입력 또는 옵션 선택)
이름 전역적으로 고유한 이름을 입력
위치 유형 멀티 리전
참고: 버킷 이름을 기록해 두세요. 이후 단계에서 [YOUR_BUCKET_NAME]에 사용됩니다.
  1. 만들기를 클릭합니다.
참고: 공개 액세스가 차단됨이라는 메시지가 표시되고 이 버킷에 공개 액세스 방지 적용 옵션이 선택된 경우 확인을 클릭합니다.
  1. 파일 업로드를 클릭합니다.
  2. 로컬 머신에서 원하는 샘플 파일을 업로드합니다.
  3. 파일 업로드가 끝나면 파일이 포함된 행 끝의 점 3개를 클릭하고 이름 바꾸기를 클릭합니다.
  4. 파일 이름을 sample.txt로 바꾼 후 이름 바꾸기를 클릭합니다.

내 진행 상황 확인하기를 클릭하여 목표를 확인합니다. 버킷을 만들고 샘플 파일 업로드하기

프로젝트 뷰어 액세스 확인하기

  1. 사용자 이름 2의 Cloud 콘솔 탭으로 전환합니다.

  2. 콘솔에서 탐색 메뉴 > Cloud Storage > 버킷으로 이동합니다.

  3. 사용자 이름 2가 버킷을 볼 수 있는지 확인합니다.

작업 4. 프로젝트 액세스 권한 삭제

사용자 이름 2의 프로젝트 뷰어 역할 삭제하기

  1. 사용자 이름 1의 Cloud 콘솔 탭으로 전환합니다.
  2. 탐색 메뉴(탐색 메뉴 아이콘)에서 IAM 및 관리자 > IAM을 클릭합니다.
  3. 사용자 이름 2를 선택하고 액세스 권한 삭제를 클릭합니다.
참고: 사용자 이름 2의 액세스 권한을 삭제하는지 확인합니다. 실수로 사용자 이름 1의 액세스 권한을 삭제한 경우 이 실습을 다시 시작해야 합니다.
  1. 확인을 클릭하여 확인합니다.

사용자가 목록에서 사라진 것을 알 수 있습니다. 이제 이 사용자에게는 액세스 권한이 없습니다.

내 진행 상황 확인하기를 클릭하여 목표를 확인합니다. 프로젝트 액세스 권한 삭제하기

사용자 이름 2의 액세스 권한 상실 확인하기

  1. 사용자 이름 2의 Cloud 콘솔 탭으로 전환합니다.

  2. 탐색 메뉴(탐색 메뉴 아이콘)에서 Cloud 개요 > 대시보드를 클릭합니다.

  3. 탐색 메뉴(탐색 메뉴 아이콘)에서 Cloud Storage > 버킷을 클릭합니다. 오류가 표시됩니다. 오류가 표시되지 않으면 페이지를 새로고침하세요. 사용자 이름 2는 여전히 Google Cloud 계정을 가지고 있지만 프로젝트에 액세스할 수 없습니다.

작업 5. 스토리지 액세스 권한 추가

스토리지 권한 추가하기

  1. Qwiklabs 연결 세부정보 대화상자에서 사용자 이름 2의 값을 복사합니다.
  2. 사용자 이름 1의 Cloud 콘솔 탭으로 전환합니다.
  3. 탐색 메뉴(탐색 메뉴 아이콘)에서 IAM 및 관리자 > IAM을 클릭합니다.
  4. 액세스 권한 부여를 클릭하여 사용자를 추가합니다.
  5. 새 주 구성원에 Qwiklabs 연결 세부정보 대화상자에서 복사한 사용자 이름 2 값을 붙여넣습니다.
  6. 역할 선택에서 Cloud Storage > 스토리지 객체 뷰어를 선택합니다.
  7. 저장을 클릭합니다.

내 진행 상황 확인하기를 클릭하여 목표를 확인합니다. 스토리지 권한 추가하기

사용자 이름 2에게 스토리지 액세스 권한이 있음을 확인하기

  1. 사용자 이름 2의 Cloud 콘솔 탭으로 전환합니다.
참고: 사용자 이름 2에는 프로젝트 뷰어 역할이 없으므로 사용자는 콘솔에서 프로젝트나 프로젝트의 어떤 리소스도 볼 수 없습니다. 하지만 이 사용자에게는 Cloud Storage에 대한 특정 액세스 권한이 있습니다.
  1. Cloud Shell을 시작하려면 Cloud Shell 활성화(Cloud Shell 활성화 아이콘)를 클릭합니다. 메시지가 표시되면 계속을 클릭합니다.
  2. 앞서 만든 버킷의 콘텐츠를 보려면 [YOUR_BUCKET_NAME]을 직접 만든 Cloud Storage 버킷의 고유한 이름으로 바꾸어 다음 명령어를 실행합니다.
gcloud storage ls gs://[YOUR_BUCKET_NAME]

사용자 이름 2에 Cloud Storage에 대한 제한적 액세스 권한이 있는 것을 볼 수 있습니다.

  1. 사용자 이름 2의 Cloud 콘솔 탭을 닫습니다. 실습의 나머지 부분은 사용자 이름 1의 Cloud 콘솔 탭에서 진행됩니다.
  2. 사용자 이름 1의 Cloud 콘솔 탭으로 전환합니다.

작업 6. 서비스 계정 사용자 설정

여기서는 서비스 계정에 제한적인 권한을 할당하고 서비스 계정 사용자 역할을 사용하는 방법을 알아봅니다.

서비스 계정 만들기

  1. 탐색 메뉴(탐색 메뉴 아이콘)에서 IAM 및 관리자 > 서비스 계정을 클릭합니다.
  2. + 서비스 계정 생성을 클릭합니다.
  3. 서비스 계정 이름read-bucket-objects로 지정합니다.
  4. 만들고 계속하기를 클릭합니다.
  5. 역할 선택에서 Cloud Storage > 스토리지 객체 뷰어를 선택합니다.
  6. 계속을 클릭합니다.
  7. 완료를 클릭합니다.

서비스 계정에 사용자 추가하기

  1. read-bucket-objects 서비스 계정을 선택합니다.
  2. 서비스 계정 이름의 오른쪽에 있는 점 3개를 클릭한 후 권한 관리를 클릭합니다.
참고: 사용자에게 서비스 계정 사용자 역할을 부여합니다. VM에 액세스할 수 있는 사용자의 경우 VM에서 서비스 계정을 사용할 수 있게 됩니다. 특정 사용자, 그룹 또는 도메인을 대상으로 이 작업을 수행할 수 있습니다. 이 실습에서는 Altostrat.com이라는 회사 내의 모든 사용자에게 서비스 계정 사용자 역할을 부여합니다. Altostrat.com은 데모와 학습에 사용되는 가상의 회사입니다.
  1. 액세스 권한 부여 버튼을 클릭합니다. 다음을 지정하고 나머지 설정은 기본값으로 둡니다.
속성 값(지정된 대로 값 입력 또는 옵션 선택)
새 주 구성원 altostrat.com
역할 서비스 계정 > 서비스 계정 사용자
  1. 저장을 클릭합니다.

Compute Engine 액세스 권한 부여하기

이제 Altostrat 조직 전체에 Compute Engine 관리자 역할을 부여합니다.

  1. 탐색 메뉴(탐색 메뉴 아이콘)에서 IAM 및 관리자 > IAM을 클릭합니다.
  2. 액세스 권한 부여를 클릭합니다.
  3. 다음을 지정하고 나머지 설정은 기본값으로 둡니다.
속성 값(지정된 대로 값 입력 또는 옵션 선택)
새 주 구성원 altostrat.com
역할 선택 Compute Engine > Compute 인스턴스 관리자(v1)
  1. 저장을 클릭합니다.
참고: 특정 사용자에 대해 수행하는 작업의 리허설 단계입니다. 이 작업으로 사용자는 VM 인스턴스를 제한적으로 사용할 수 있게 됩니다. 사용자는 SSH를 통해 VM에 연결하고 몇 가지 관리 작업을 수행할 수 있습니다.

서비스 계정 사용자로 VM 만들기

  1. 탐색 메뉴(탐색 메뉴 아이콘)에서 Compute Engine > VM 인스턴스를 클릭합니다.
  2. 인스턴스 만들기를 클릭합니다.
  3. 다음을 지정하고 나머지 설정은 기본값으로 둡니다.
속성 값(지정된 대로 값 입력 또는 옵션 선택)
이름 demoiam
리전
영역
시리즈 E2
머신 유형 e2-micro(vCPU 2개, 1GB 메모리)
부팅 디스크 Debian GNU/Linux 11(bullseye)
서비스 계정 read-bucket-objects
액세스 범위 각 API에 액세스 설정
스토리지 읽기 쓰기
  1. 만들기를 클릭합니다.

내 진행 상황 확인하기를 클릭하여 목표를 확인합니다. 서비스 계정 사용자 설정 및 VM 만들기

작업 7. 서비스 계정 사용자 역할 살펴보기

이 시점에서 SSH를 통해 VM에 연결하고 다음 작업을 수행하여 사용자 테스트 액세스 권한을 가질 수 있습니다. 프로젝트의 소유자이므로 서비스 계정 사용자 역할은 이미 가지고 있습니다. 따라서 SSH를 사용하여 Cloud 콘솔에서 VM에 액세스하면 사용자의 경험을 시뮬레이션할 수 있습니다.

수행하는 작업과 결과는 타겟 사용자의 경우와 동일합니다.

서비스 계정 사용자 사용하기

  1. demoiam에 대해 SSH를 클릭하여 터미널을 실행하고 연결합니다.
  2. 다음 명령어를 실행합니다.
gcloud compute instances list

결과(예시 출력):

ERROR: (gcloud.compute.instances.list) Some requests did not succeed: - Required 'compute.zones.list' permission for 'projects/qwiklabs-gcp'

어떻게 된 것일까요? 왜 이렇게 되었을까요?

  1. 앞서 만든 버킷에서 sample.txt 파일을 복사합니다. 아래 명령어에서 끝에 있는 마침표도 명령어의 일부이며, '이 위치'에 복사하라는 의미입니다.
gcloud storage cp gs://[YOUR_BUCKET_NAME]/sample.txt .

결과(예시 출력):

Copying gs://train-test-iam/sample.txt... / [1 files][ 28.0 B/ 28.0 B] Operation completed over 1 objects/28.0 B.
  1. 복사한 파일의 이름을 바꾸려면 다음 명령어를 실행합니다.
mv sample.txt sample2.txt
  1. 이름을 바꾼 파일을 버킷에 다시 복사하려면 다음 명령어를 실행합니다.
gcloud storage cp sample2.txt gs://[YOUR_BUCKET_NAME]

결과(예시 출력):

AccessDeniedException: 403 Caller does not have storage.objects.create access to bucket train-test-iam. 참고: 어떻게 된 것일까요? SSH를 통해 인스턴스에 연결했기 때문에 같은 권한을 가지고 서비스 계정으로 작업할 수 있습니다. 인스턴스가 시작된 서비스 계정에는 스토리지 뷰어 역할이 있으므로 프로젝트의 GCS 버킷에서 객체를 다운로드할 수 있습니다. 프로젝트 내의 인스턴스를 나열하려면 compute.instance.list 권한을 부여해야 합니다. 서비스 계정에 이 권한이 없기 때문에 프로젝트에서 실행 중인 인스턴스를 나열할 수 없습니다. 서비스 계정에 객체 다운로드 권한이 있기 때문에 버킷에서 객체를 다운로드할 수 있습니다. 객체를 쓰는 권한은 없으므로 403 액세스 거부됨 메시지가 표시됩니다.
  1. 탐색 메뉴(탐색 메뉴 아이콘)에서 IAM 및 관리자 > IAM을 클릭합니다.
  2. 목록을 둘러보면서 read-bucket-objects가 있는 행을 찾아 연필 아이콘을 클릭합니다. read-bucket-objects에는 현재 스토리지 객체 뷰어 역할이 있습니다. 역할Cloud Storage > 스토리지 객체 생성자로 변경합니다.
  3. 저장을 클릭합니다.
  4. demoiam의 SSH 창으로 돌아갑니다.
  5. 이름을 바꾼 파일을 버킷에 다시 복사하려면 다음 명령어를 실행합니다.
gcloud storage cp sample2.txt gs://[YOUR_BUCKET_NAME]

서비스 계정에 올바른 권한이 있기 때문에 이번에는 명령어가 성공합니다.

작업 8. 복습

이 실습에서는 IAM 역할을 사용자 이름 2 사용자와 서비스 계정 사용자에게 차례로 부여하고 취소하는 방법을 연습했습니다. 서비스 계정 사용자 인증 정보를 할당하고 이를 VM에 '베이크'하여 특정 목적의 승인된 배스천 호스트를 만들 수 있었습니다.

요약

IAM은 Azure, Google Cloud 모두에서 다양한 서비스 및 리소스에 대한 액세스를 안전하게 제어할 수 있는 웹 서비스입니다. 이 도구를 사용해 인증(액세스 권한이 있는 사용자) 및 승인(사용자에게 허용되는 작업)을 관리할 수 있습니다.

다음과 같은 여러 주 구성원을 만들고 관리할 수도 있습니다.

  • 사용자
  • 역할
  • 정책

Google Cloud IAM과 Azure AD는 운영 방식이 여러모로 유사합니다. 두 시스템 모두 클라우드 인프라를 쉽게 보호할 수 있도록 역할 기반 액세스 제어, 다중 인증(MFA), 사용자 관리 등 다양한 기능을 제공합니다. 두 시스템 모두 세분화된 정책으로 관리 작업을 위임하고 리소스에 대한 액세스를 제어할 수 있습니다.

물론 차이점도 존재합니다. Google Cloud IAM은 직관적이고 단순한 사용자 인터페이스를 사용합니다. Azure AD는 다른 애플리케이션에 대한 통합 싱글 사인온(SSO), 조건부 액세스 등의 기능을 사용합니다.

실습 종료하기

실습을 완료하면 실습 종료를 클릭합니다. Google Cloud Skills Boost에서 사용된 리소스를 자동으로 삭제하고 계정을 지웁니다.

실습 경험을 평가할 수 있습니다. 해당하는 별표 수를 선택하고 의견을 입력한 후 제출을 클릭합니다.

별점의 의미는 다음과 같습니다.

  • 별표 1개 = 매우 불만족
  • 별표 2개 = 불만족
  • 별표 3개 = 중간
  • 별표 4개 = 만족
  • 별표 5개 = 매우 만족

의견을 제공하고 싶지 않다면 대화상자를 닫으면 됩니다.

의견이나 제안 또는 수정할 사항이 있다면 지원 탭을 사용하세요.

Copyright 2020 Google LLC All rights reserved. Google 및 Google 로고는 Google LLC의 상표입니다. 기타 모든 회사명 및 제품명은 해당 업체의 상표일 수 있습니다.

시작하기 전에

  1. 실습에서는 정해진 기간 동안 Google Cloud 프로젝트와 리소스를 만듭니다.
  2. 실습에는 시간 제한이 있으며 일시중지 기능이 없습니다. 실습을 종료하면 처음부터 다시 시작해야 합니다.
  3. 화면 왼쪽 상단에서 실습 시작을 클릭하여 시작합니다.

시크릿 브라우징 사용

  1. 실습에 입력한 사용자 이름비밀번호를 복사합니다.
  2. 비공개 모드에서 콘솔 열기를 클릭합니다.

콘솔에 로그인

    실습 사용자 인증 정보를 사용하여
  1. 로그인합니다. 다른 사용자 인증 정보를 사용하면 오류가 발생하거나 요금이 부과될 수 있습니다.
  2. 약관에 동의하고 리소스 복구 페이지를 건너뜁니다.
  3. 실습을 완료했거나 다시 시작하려고 하는 경우가 아니면 실습 종료를 클릭하지 마세요. 이 버튼을 클릭하면 작업 내용이 지워지고 프로젝트가 삭제됩니다.

현재 이 콘텐츠를 이용할 수 없습니다

이용할 수 있게 되면 이메일로 알려드리겠습니다.

감사합니다

이용할 수 있게 되면 이메일로 알려드리겠습니다.

한 번에 실습 1개만 가능

모든 기존 실습을 종료하고 이 실습을 시작할지 확인하세요.

시크릿 브라우징을 사용하여 실습 실행하기

이 실습을 실행하려면 시크릿 모드 또는 시크릿 브라우저 창을 사용하세요. 개인 계정과 학생 계정 간의 충돌로 개인 계정에 추가 요금이 발생하는 일을 방지해 줍니다.