AI 애플리케이션을 위한 인프라 보호

1. 소개

개요

이 실습에서는 AI 개발 환경 인프라에 대한 일반적인 위협을 완화합니다. 이 환경의 핵심 구성요소를 보호하도록 설계된 보안 컨트롤을 구현합니다.

컨텍스트

개발팀의 보안 챔피언으로서 사용 시의 마찰을 최소화하면서 일반적인 위협으로부터 보호하는 환경을 구축하는 것이 목표입니다.

다음 표에는 완화하는 데 가장 관심이 있는 위협이 나와 있습니다. 각 위협은 이 실습 내의 특정 작업으로 해결됩니다.

위협

완화

작업이 처리됨

악용된 개방형 포트를 통한 네트워크에 대한 승인되지 않은 수신

비공개 VPC를 만들고 Vertex AI 액세스를 공개 IP 주소가 아닌 Google Cloud를 통해 프록시 처리된 단일 사용자로 제한합니다.

보안 네트워크 기반 구성

과도한 권한이 있는 사용자 인증 정보를 사용하여 침해된 컴퓨팅 인스턴스로부터 권한 에스컬레이션

최소 권한 서비스 계정을 만들어 Vertex AI 인스턴스에 할당합니다.

보안 Vertex AI Workbench 인스턴스 배포

컴퓨팅 리소스의 인스턴스 인수로 인해 시스템이 조작됩니다.

루트 액세스를 사용 중지하고 보안 부팅을 사용 설정하여 인스턴스를 강화합니다.

보안 Vertex AI Workbench 인스턴스 배포

스토리지 잘못된 구성으로 인해 학습 데이터와 모델이 실수로 공개적으로 노출됨

버킷에 공개 액세스 방지를 적용하고 균일한 버킷 수준 액세스 제어를 사용합니다.

안전한 Cloud Storage 버킷 배포

데이터 세트 및 모델 아티팩트의 악의적 또는 우발적 삭제 또는 조작

복구를 위해 객체 버전 관리를 사용 설정하고 모든 활동의 변경 불가능한 감사 추적을 위해 데이터 액세스 로그를 사용 설정합니다.

안전한 Cloud Storage 버킷 배포

빠른 참조

이 실습 전반에 걸쳐 다음 명명된 리소스를 사용합니다.

구성요소

이름

VPC 이름

genai-secure-vpc

서브넷 이름

genai-subnet-us-central1

Cloud Router

genai-router-us-central1

Cloud NAT

genai-nat-us-central1

서비스 계정

vertex-workbench-sa

Vertex AI 인스턴스

secure-genai-instance

스토리지 버킷

secure-genai-artifacts-[PROJECT_ID]

학습할 내용

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

  • 비공개 네트워킹을 사용하여 원치 않는 트래픽을 완화하는 보안 VPC를 프로비저닝합니다.
  • 부트킷 및 권한 에스컬레이션에 대해 Vertex AI Workbench 인스턴스를 강화합니다.
  • 모니터링되지 않은 데이터 전송 및 실수로 인한 공개 노출을 완화하기 위해 Cloud Storage 버킷을 보호합니다.

2. 프로젝트 설정

Google 계정

아직 개인 Google 계정이 없다면 Google 계정을 만들어야 합니다.

직장 또는 학교 계정 대신 개인 계정을 사용하세요.

Google Cloud 콘솔에 로그인

개인 Google 계정을 사용하여 Google Cloud 콘솔에 로그인합니다.

결제 사용 설정

$5 Google Cloud 크레딧 사용 (선택사항)

이 워크숍을 진행하려면 크레딧이 있는 결제 계정이 필요합니다. 자체 결제를 사용하려는 경우 이 단계를 건너뛰어도 됩니다.

  1. 이 링크를 클릭하고 개인 Google 계정으로 로그인합니다. 다음과 같이 표시됩니다. 크레딧 페이지를 보려면 여기를 클릭하세요.
  2. 크레딧에 액세스하려면 여기를 클릭하세요 버튼을 클릭합니다. 그러면 결제 프로필을 설정하는 페이지로 이동합니다. 결제 프로필 설정 페이지
  3. 확인을 클릭합니다.

이제 Google Cloud Platform 평가판 결제 계정에 연결되었습니다.

결제 개요 스크린샷

개인 결제 계정 설정

Google Cloud 크레딧을 사용하여 결제를 설정한 경우 이 단계를 건너뛸 수 있습니다.

개인 결제 계정을 설정하려면 Cloud 콘솔에서 여기에서 결제를 사용 설정하세요.

참고:

  • 이 실습을 완료하는 데 드는 Cloud 리소스 비용은 미화 1달러 미만입니다.
  • 이 실습이 끝나면 단계에 따라 리소스를 삭제하여 추가 요금이 발생하지 않도록 할 수 있습니다.
  • 신규 사용자는 미화$300 상당의 무료 체험판을 사용할 수 있습니다.

프로젝트 만들기(선택사항)

이 실습에 사용할 현재 프로젝트가 없는 경우 여기에서 새 프로젝트를 만드세요.

3. API 사용 설정

Cloud Shell 구성

프로젝트가 성공적으로 생성되면 다음 단계에 따라 Cloud Shell을 설정합니다.

Cloud Shell 실행

shell.cloud.google.com으로 이동하고 승인을 요청하는 팝업이 표시되면 승인을 클릭합니다.

프로젝트 ID 설정

Cloud Shell 터미널에서 다음 명령어를 실행하여 올바른 프로젝트 ID를 설정합니다. <your-project-id>를 위의 프로젝트 생성 단계에서 복사한 실제 프로젝트 ID로 바꿉니다.

gcloud config set project <your-project-id>

이제 Cloud Shell 터미널에서 올바른 프로젝트가 선택되어 있는 것을 확인할 수 있습니다.

Vertex AI Workbench 및 Cloud Storage 사용 설정

이 실습의 서비스를 사용하려면 Google Cloud 프로젝트에서 Compute Engine, Vertex AI Workbench, IAM, Cloud Storage용 API를 사용 설정해야 합니다.

  1. 터미널에서 API를 사용 설정합니다.
gcloud services enable compute.googleapis.com notebooks.googleapis.com aiplatform.googleapis.com iam.googleapis.com storage.googleapis.com

또는 콘솔에서 각 페이지로 이동하여 사용 설정을 클릭하여 이러한 API를 사용 설정할 수도 있습니다.

4. 보안 네트워크 기반 구성

이 작업에서는 모든 서비스를 위한 격리된 네트워크 환경을 만듭니다. 비공개 네트워크를 사용하고 데이터 흐름을 제어하면 공개적으로 도달 가능한 리소스에 비해 인프라의 공격 표면을 크게 줄이는 다층적 방어를 구축할 수 있습니다. 이 보안 네트워크 기반은 무단 액세스로부터 AI 애플리케이션을 보호하는 데 매우 중요합니다.

VPC 및 서브넷 만들기

이 단계에서는 Virtual Private Cloud (VPC)와 서브넷을 설정합니다. 이렇게 하면 격리된 네트워크 환경이 생성되며, 이는 무단 네트워크 인그레스에 대한 첫 번째 방어선입니다.

  1. Google Cloud 콘솔에서 VPC 네트워크 > VPC 네트워크로 이동합니다. Google Cloud 콘솔 상단의 검색창을 사용하여 'VPC 네트워크'를 검색하고 선택합니다.
  2. VPC 네트워크 만들기를 클릭합니다.
  3. 이름genai-secure-vpc를 입력합니다.
  4. 서브넷 생성 모드커스텀을 선택합니다.
  5. 새 서브넷에서 다음 속성을 지정하여 서브넷을 만듭니다.

    속성

    값(입력 또는 선택)

    이름

    genai-subnet-us-central1

    지역

    us-central1

    IP 주소 범위

    10.0.1.0/24

    비공개 Google 액세스

    켜짐

  6. 만들기를 클릭합니다.

Cloud NAT 게이트웨이 만들기

Cloud NAT 게이트웨이를 사용하면 비공개 인스턴스가 공개 IP 주소 없이 아웃바운드 연결 (예: 소프트웨어 업데이트)을 시작할 수 있으므로 공개 인터넷에서 인스턴스의 연결을 시작할 수 없습니다.

  1. 먼저 Cloud Router를 만듭니다. Google Cloud 콘솔 상단의 검색창을 사용하여 'Cloud Router'를 검색하고 선택합니다.
  2. 라우터 만들기를 클릭합니다.
  3. 다음과 같이 Cloud Router를 구성합니다.

    속성

    값(입력 또는 선택)

    이름

    genai-router-us-central1

    네트워크

    genai-secure-vpc (방금 만든 VPC 네트워크)

    지역

    us-central1

  4. 만들기를 클릭합니다.
  5. 그런 다음 네트워크 서비스 > Cloud NAT로 이동합니다. Google Cloud 콘솔 상단의 검색창을 사용하여 'Cloud NAT'를 검색하고 선택합니다.
  6. 시작하기를 클릭합니다.
  7. 다음과 같이 Cloud NAT 게이트웨이를 구성합니다.

    속성

    값(입력 또는 선택)

    게이트웨이 이름

    genai-nat-us-central1

    VPC 네트워크

    genai-secure-vpc (만든 VPC 네트워크)

    지역

    us-central1

    Cloud Router

    genai-router-us-central1 (방금 설정한 라우터)

  8. 만들기를 클릭합니다.

5. 보안 Vertex AI Workbench 인스턴스 배포

이제 보안 네트워크 기반이 마련되었으므로 보안 VPC 내에 강화된 Vertex AI Workbench 인스턴스를 배포합니다. 이 Workbench 인스턴스는 개발 환경 역할을 하며 AI 개발 작업을 위한 안전하고 격리된 공간을 제공합니다. 이전 네트워크 구성은 다층 방어를 기반으로 이 인스턴스가 공개 인터넷에 직접 노출되지 않도록 합니다.

최소 권한 서비스 계정 만들기

필요한 최소 권한으로 전용 서비스 계정을 만들면 최소 권한의 원칙이 지원됩니다. 인스턴스가 손상되는 경우 이 방법을 사용하면 인스턴스가 기능에 명시적으로 필요한 리소스에만 액세스하고 작업만 실행할 수 있으므로 '폭발 범위'가 제한됩니다.

  1. Google Cloud 콘솔에서 IAM 및 관리자 > 서비스 계정으로 이동합니다. Google Cloud 콘솔 상단의 검색창을 사용하여 '서비스 계정'을 검색하고 선택합니다.
  2. 서비스 계정 만들기를 클릭합니다.
  3. 서비스 계정 이름vertex-workbench-sa를 입력합니다.
  4. 만들고 계속하기를 클릭합니다.
  5. 다음 역할을 부여합니다.
    • Vertex AI User
    • Storage Object Creator
  6. 완료를 클릭합니다.

워크벤치 인스턴스 만들기

이 단계에서는 Vertex AI Workbench 인스턴스를 배포합니다. 이 인스턴스는 이전에 만든 비공개 VPC 내에서 실행되도록 구성되어 있어 공용 인터넷에서 더욱 격리됩니다. 또한 인스턴스에 직접 추가 보안 강화 조치를 적용합니다.

  1. Google Cloud 콘솔 탐색 메뉴 (햄버거 메뉴)에서 Vertex AI > Workbench로 이동합니다. Google Cloud 콘솔 상단의 검색창을 사용하여 'Workbench'를 검색하고 부제목이 'Vertex AI'인 결과를 선택합니다.
  2. 새로 만들기를 클릭하고 다음을 구성합니다.

    속성

    값(입력 또는 선택)

    이름

    secure-genai-instance

    지역

    us-central1

  3. 고급 옵션을 클릭합니다.
  4. 머신 유형을 클릭하고 다음 체크박스를 선택합니다.
    • 보안 부팅
    • 가상 신뢰 플랫폼 모듈(vTPM)
    • 무결성 모니터링
  5. 네트워킹을 클릭하고 다음을 구성합니다.

    속성

    값(입력 또는 선택)

    네트워크

    genai-secure-vpc

    서브네트워크

    genai-subnet-us-central1 (10.0.1.0/24)

    외부 IP 주소 할당

    Google Cloud의 프록시를 통해서만 이 인스턴스에 액세스하므로 선택 해제합니다.

  6. IAM 및 보안을 클릭하고 다음을 구성합니다.

    속성

    값(입력 또는 선택)

    사용자 이메일

    단일 사용자를 선택하고 현재 Google Cloud에 로그인하는 데 사용 중인 이메일 주소를 선택합니다.

    기본 Compute Engine 서비스 계정 사용

    체크박스를 선택 해제합니다.

    서비스 계정 이메일

    최소 권한 서비스 계정으로 만든 이메일을 입력합니다 ([PROJECT_ID]을 실제 ID로 바꿈). vertex-workbench-sa@[PROJECT_ID].iam.gserviceaccount.com

    인스턴스에 대한 루트 액세스

    체크박스를 선택 해제합니다.

  7. 만들기를 클릭합니다.

Vertex AI 인스턴스에 액세스

이제 Vertex AI Workbench 인스턴스가 프로비저닝되었으므로 안전하게 액세스할 수 있습니다. Google Cloud의 프록시를 통해 연결하면 인스턴스가 비공개로 유지되고 공개 인터넷에 노출되지 않으므로 원치 않는 악성 트래픽의 위험이 제한됩니다.

  1. Vertex AI > Workbench로 이동합니다. 인스턴스 프로비저닝이 완료된 경우 이미 이 페이지에 있을 수 있습니다. 그렇지 않은 경우 Google Cloud 콘솔 탐색 메뉴 (햄버거 메뉴) 또는 검색창을 사용하여 이동할 수 있습니다.
  2. 목록에서 secure-genai-instance라는 인스턴스를 찾습니다.
  3. 인스턴스 오른쪽에 있는 JupyterLab 열기 링크를 클릭합니다.

그러면 브라우저에서 새 탭이 열리고 인스턴스에 액세스할 수 있습니다. Google Cloud를 통해 액세스할 수 있지만 인스턴스가 공개 인터넷에 노출되지 않아 원치 않는 악성 트래픽의 위험이 제한됩니다.

6. 안전한 Cloud Storage 버킷 배포

이제 데이터 세트를 위한 보안 Cloud Storage 버킷을 만듭니다. AI 학습 데이터, 모델, 아티팩트가 저장되는 위치입니다. 이 버킷에 강력한 보안 구성을 적용하면 민감한 정보가 실수로 공개되지 않도록 방지하고 악의적이거나 실수로 인한 삭제 및 조작으로부터 보호할 수 있습니다. 이렇게 하면 소중한 AI 애셋의 무결성과 기밀성이 보장됩니다.

버킷 만들기 및 구성

이 단계에서는 Cloud Storage 버킷을 만들고 초기 보안 설정을 적용합니다. 이러한 설정은 공개 액세스 방지를 적용하고 균일한 버킷 수준 액세스 제어를 사용 설정하므로 데이터에 액세스할 수 있는 사용자를 제어하는 데 매우 중요합니다.

  1. Google Cloud 콘솔에서 Cloud Storage > 버킷으로 이동합니다. Google Cloud 콘솔 상단의 검색창을 사용하여 '버킷'을 검색하고 선택합니다.
  2. 만들기를 클릭합니다.
  3. 시작하기에서 이름secure-genai-artifacts-[PROJECT_ID]로 설정하고 [PROJECT_ID]를 실제 Google Cloud 프로젝트 ID로 바꿉니다.
  4. 데이터 저장 위치 선택으로 이동하여 다음을 구성합니다.

    속성

    값(입력 또는 선택)

    위치 유형

    리전

    지역

    us-central1

  5. 데이터 저장 방법 선택으로 이동하여 기본 설정을 유지합니다.
  6. 객체 액세스를 제어하는 방식 선택으로 이동하여 기본 설정을 유지합니다.

    속성

    값(입력 또는 선택)

    이유

    공개 액세스 방지

    공개 액세스 방지 적용을 선택된 상태로 유지합니다.

    공개 액세스 방지는 객체를 인터넷에 노출할 수 있는 IAM의 변경사항을 재정의합니다.

    액세스 제어

    균일을 선택한 상태로 둡니다.

    ACL은 세분화된 제어(최소 권한)에 더 나은 옵션인 것처럼 보이지만 다른 IAM 기능과 결합하면 복잡성과 예측 불가능성이 발생합니다. 의도치 않은 데이터 노출을 방지하기 위해 균일한 버킷 수준 액세스의 장단점을 고려하세요.

  7. 객체 데이터 보호 방법 선택으로 이동하여 기본 설정을 유지합니다.

    속성

    값(입력 또는 선택)

    이유

    소프트 삭제 정책(데이터 복구용)

    소프트 삭제 정책 (데이터 복구용)을 선택된 상태로 유지합니다.

    버킷에서 실수로 또는 악의적으로 삭제한 경우 소프트 삭제를 사용하면 보관 기간 내에 콘텐츠를 복원할 수 있습니다.

    객체 버전 관리(버전 제어용)

    객체 버전 관리 (버전 제어용)를 선택합니다.

    객체 버전 관리를 사용하면 공격자가 악용 코드가 포함된 파일로 양성 파일을 대체하는 경우와 같이 실수로 또는 악의적으로 덮어쓰는 경우 복구할 수 있습니다.

    객체당 최대 버전 수

    3

    이는 임의적이며 비용이 증가할 수 있지만 이전 버전으로 롤백하려면 1보다 커야 합니다. 공격자가 여러 번 덮어쓰기를 시도할 수 있는 경우 더 강력한 버전 관리 백업 전략이 필요할 수 있습니다.

    다음 날짜 이후에 이전 버전 만료

    7

    이전 버전을 유지하는 데 권장되는 시간은 7일이지만 장기 저장의 경우 이보다 길 수 있습니다.

  8. 만들기를 클릭합니다.
  9. '공개 액세스가 차단됨'이라는 팝업이 표시되면 기본 체크박스 ('이 버킷에 공개 액세스 방지 적용')를 선택된 상태로 유지하고 확인을 클릭합니다.

데이터 보호 및 로깅 사용 설정

데이터의 불변성과 감사 가능성을 보장하려면 객체 버전 관리를 사용 설정하고 버킷에 데이터 액세스 로그를 구성합니다. 객체 버전 관리를 사용하면 실수로 삭제하거나 덮어쓴 경우 복구할 수 있으며, 데이터 액세스 로그는 버킷의 모든 활동에 대한 포괄적인 감사 추적을 제공하므로 보안 모니터링 및 규정 준수에 필수적입니다.

  1. Google Cloud 콘솔에서 IAM 및 관리자 > 감사 로그로 이동합니다. Google Cloud 콘솔 상단의 검색창을 사용하여 '감사 로그'를 검색하고 선택합니다.
  2. 필터 검색을 사용하여 Google Cloud Storage를 찾아 선택합니다.
  3. 표시되는 패널에서 데이터 읽기데이터 쓰기 체크박스를 모두 선택합니다.
  4. 저장을 클릭합니다.

7. 실험실에서 현실로

임시 실습 환경에서 일련의 단계를 완료했지만 적용한 원칙과 구성은 Google Cloud에서 실제 AI 프로젝트를 보호하기 위한 청사진입니다. 간단한 실습에서 프로덕션 준비가 완료된 설정으로 이동하여 배운 내용을 실제 작업에 적용하는 방법은 다음과 같습니다.

방금 빌드한 리소스(비공개 VPC, 강화된 Workbench 인스턴스, 보안 버킷)를 새 AI 프로젝트를 위한 보안 시작 템플릿으로 생각하세요. 목표는 이 안전한 기반을 자신과 팀이 쉽게 사용할 수 있는 기본 경로로 만드는 것입니다.

보안 네트워크: 비공개 작업공간

설정에서 이 기능을 사용하는 방법

새 AI 프로젝트 (예: '고객 이탈 예측', '이미지 분류 모델')을 사용하는 경우 이 네트워크 설정을 복제합니다. 전용 VPC (churn-pred-vpc)를 만들거나 사전 승인된 공유 네트워크를 사용합니다. 이 환경이 프로젝트의 격리된 '샌드박스'가 됩니다. 구성한 Vertex AI Workbench와 같은 개발 환경은 이 보호된 공간 내에 있습니다. 보안 프록시 (JupyterLab 열기)를 통해 연결하여 공개 인터넷에 노출하지 않습니다.

프로덕션에 연결

프로덕션 환경에서는 다음을 고려하여 이 개념을 더욱 발전시킬 수 있습니다.

  • 코드형 인프라 (IaC): Cloud Console을 사용하는 대신 Terraform 또는 Cloud Deployment Manager와 같은 도구를 사용하여 이 네트워크를 정의합니다. 이를 통해 몇 분 만에 새 프로젝트를 위한 안전한 네트워크 기반을 배포하여 반복 가능하고 감사 가능한지 확인할 수 있습니다.
  • 공유 VPC: 대규모 조직에서는 중앙 네트워킹 팀이 공유 VPC를 관리하는 경우가 많습니다. 개발자에게는 중앙에서 관리되는 보안 네트워크 내의 특정 서브넷에서 인스턴스와 서비스를 실행할 권한이 부여됩니다. 원리는 동일합니다. 여전히 비공개 공간에서 운영되지만 더 큰 공유 인프라의 일부입니다.
  • VPC 서비스 제어: 최대한의 보안을 위해 이 전체 환경을 VPC 서비스 제어 경계로 래핑합니다. 이는 Cloud Storage와 같은 서비스가 비공개 네트워크 경계 내부의 승인된 리소스에만 액세스할 수 있도록 하여 데이터 무단 반출을 방지하는 강력한 기능입니다.

강화된 컴퓨팅: 안전한 개발 및 학습 허브

설정에서 이 기능을 사용하는 방법

secure-genai-instance는 일상적인 AI 개발 머신입니다. JupyterLab 인터페이스는 다음 용도로 사용됩니다.

  • 노트북에서 모델 코드를 작성하고 테스트합니다.
  • Python 라이브러리 (pip install ...)를 설치합니다.
  • 중소 규모 데이터 세트로 실험합니다. 구성한 보안 (공개 IP 없음, 최소 권한 서비스 계정, 루트 액세스 없음, 보안 부팅)은 백그라운드에서 투명하게 실행됩니다. 일반적인 공격에 대해 인스턴스가 강화되어 있으므로 AI 작업에 집중할 수 있습니다.

프로덕션에 연결

일반적으로 프로덕션 환경에서 단일 Workbench 인스턴스에서 대규모 학습을 실행하지는 않습니다. 대신 다음과 같은 방법으로 작업을 프로덕션화할 수 있습니다.

  • 노트북에서 파이프라인으로: 노트북의 코드를 가져와 스크립트로 형식화합니다. 그러면 이 스크립트가 Vertex AI 커스텀 학습 작업 또는 Vertex AI 파이프라인의 단계로 실행됩니다.
  • 컨테이너화: 학습 코드와 종속 항목을 Docker 컨테이너에 패키징하고 Artifact Registry에 저장합니다. 이렇게 하면 코드가 매번 일관되고 예측 가능한 환경에서 실행됩니다.
  • 서비스 계정이 중요함: 만든 vertex-workbench-sa 서비스 계정이 중요합니다. 프로덕션에서는 자동화된 Vertex AI 학습 작업이 동일한 (또는 유사한) 최소 권한 서비스 계정을 사용하여 실행되므로 자동화된 작업에 반드시 필요한 권한만 부여됩니다.

보안 스토리지: 중앙 아티팩트 저장소

설정에서 이 기능을 사용하는 방법

secure-genai-artifacts 버킷은 프로젝트 데이터의 단일 정보 소스입니다. 초기 데이터 세트에만 적용되는 것은 아닙니다. 이를 사용하여 다음을 저장할 수 있습니다.

  • 원시 및 사전 처리된 학습 데이터
  • 긴 학습 실행 중의 모델 체크포인트
  • 최종 학습된 모델 아티팩트 (.pkl, .pb 또는 .h5 파일)
  • 평가 결과 및 로그입니다. 적용된 보안 설정 (공개 액세스 방지, 균일한 버킷 수준 액세스, 버전 관리, 감사 로깅)을 통해 유출 및 실수로 인한 삭제로부터 보호되는 이 버킷을 중앙 저장소로 안심하고 사용할 수 있습니다.

프로덕션에 연결

프로덕션 환경에서 원칙을 관리하고 거버넌스를 적용하려면 다음 사항도 고려해야 합니다.

  • 수명 주기 정책: 비용을 관리하기 위해 오래된 모델 버전이나 데이터 세트를 더 저렴한 스토리지 클래스 (예: Nearline 또는 Coldline)로 자동 이동하거나 일정 기간이 지난 후 삭제하도록 수명 주기 정책을 설정합니다.
  • 교차 프로젝트 권한: 프로덕션 파이프라인에서 데이터 엔지니어링팀은 다른 Google Cloud 프로젝트에서 이 버킷을 채울 수 있습니다. 사용 설정한 균일한 버킷 수준 액세스를 사용하면 복잡한 (따라서 잘못 구성하기 쉬운) ACL 없이 이러한 교차 프로젝트 IAM 권한을 간단하고 안전하게 관리할 수 있습니다.

개요: 보안을 기본값으로 설정

이 모델을 채택하면 보안 상황이 사후 고려 사항에서 기반으로 전환됩니다. 이제 개발자뿐만 아니라 팀의 보안 챔피언이 됩니다. 새 팀원이 합류할 때 보안이 취약한 공개용 머신을 제공하지 않습니다. 안전한 작업 방식이 가장 쉬운 방식이기도 한 안전하고 사전 구성된 환경에 대한 액세스 권한을 제공합니다. 이 접근 방식은 데이터 유출 및 시스템 손상의 일반적인 원인을 방지하여 비즈니스 위험을 직접적으로 줄여주므로 팀에서 자신 있게 혁신하고 강력한 AI 애플리케이션을 빌드할 수 있습니다.

8. 축하합니다.

축하합니다. AI 개발 환경을 위한 다층적이고 안전한 인프라를 성공적으로 구축하고 감사했습니다. '기본 거부' 방화벽 자세로 보안 네트워크 경계를 만들고, 강화된 컴퓨팅 인스턴스를 배포하고, 데이터 버킷을 보호하고, 로그를 사용하여 제어가 의도한 대로 작동하는지 확인했습니다.

요약

이 실습에서 다음 작업을 완료했습니다.

  • 원치 않는 트래픽을 완화하기 위해 비공개 네트워킹을 사용하여 보안 VPC를 프로비저닝했습니다.
  • 부트킷 및 권한 에스컬레이션에 대해 강화된 Vertex AI Workbench 인스턴스를 배포했습니다.
  • 모니터링되지 않은 데이터 전송 및 실수로 인한 공개 노출을 완화하기 위해 Cloud Storage 버킷을 보호했습니다.
  • 최소 권한 서비스 계정을 구현하여 잠재적인 '폭발 범위'를 제한했습니다.
  • 데이터 보호 및 변경 불가능한 감사 추적을 위해 객체 버전 관리 및 데이터 액세스 로그를 사용 설정했습니다.