사용자 인증 정보 액세스 권한이 있는 인스턴스 만들기
이 페이지에서는 사용자 인증 정보를 통해 Google Cloud 서비스 및 API에 액세스하는 Vertex AI Workbench 인스턴스를 만드는 방법을 설명합니다.
사용자 인증 정보는 Google 계정과 연결된 사용자 인증 정보입니다. 사용자 인증 정보에 따라 Google 계정에서 액세스할 수 있는 Google Cloud 서비스 및 API가 결정됩니다.
기본적으로 Vertex AI Workbench 인스턴스에서 코드를 실행하면 인스턴스는 인스턴스의 서비스 계정과 연결된 사용자 인증 정보를 사용하여 Google Cloud 서비스 및 API에 액세스할 수 있습니다. 즉, 인스턴스가 서비스 계정과 동일한 Google Cloud 액세스 권한을 갖습니다.
이 페이지에서는 Google Cloud 에 대해 사용자 인증 정보와 동일한 액세스 권한을 가진 인스턴스를 만들고 구성하는 방법을 설명합니다.
개요
Vertex AI Workbench는 전역 Google 관리 OAuth 클라이언트를 사용하여 사용자 프로젝트의 Google Cloud 리소스에 범위가 지정된 사용자 인증 정보 액세스를 관리합니다. 사용자는 각 Vertex AI Workbench 인스턴스의 사용자 인증 정보를 관리할 수 있도록 OAuth 클라이언트에 동의를 부여해야 합니다. 이 작업은 Google Cloud 콘솔에서 JupyterLab 열기 버튼을 클릭할 때 열리는 대화상자를 통해 인스턴스당 한 번 실행됩니다.
Vertex AI Workbench 인스턴스를 만드는 데 사용되는 서비스 계정은 다음 서비스 에이전트입니다.
service-PROJECT_NUMBER@gcp-sa-notebooks-vm.
개
이 서비스 에이전트는 로그 내보내기와 같은 필수 서비스에 제한된 권한을 제공합니다. 최종 사용자 사용자 인증 정보 기능이 사용 설정된 경우 사용자는 다른 서비스 계정을 지정할 수 없습니다.
최종 사용자 사용자 인증 정보가 사용 설정된 인스턴스에는 기능 사용 설정을 나타내는 notebooks-managed-euc: true
Compute Engine 라벨과 euc-enabled: true
메타데이터 키가 VM 리소스에 연결되어 있습니다.
제한사항
프로젝트를 계획할 때 다음 제한사항을 고려하세요.
Vertex AI Workbench는 전역 Google 관리 OAuth 클라이언트를 사용하여 사용자 인증 정보 액세스를 관리합니다. 조직은 세부적인 제어를 시행하거나, OAuth 클라이언트에 액세스하거나, 로깅을 사용하여 OAuth 클라이언트 사용을 확인할 수 없습니다.
관리형 사용자 인증 정보가 있는 Vertex AI Workbench 인스턴스의 보안을 보호하기 위해 사용자는 다음 작업을 할 수 없습니다.
- SSH를 사용하여 인스턴스에 액세스합니다.
- Vertex AI Workbench 시작 후 스크립트 또는 Compute Engine 시작 스크립트를 실행합니다.
- 세부 VM 페이지에 액세스합니다.
- Google에서 생성하지 않은 이미지를 사용합니다.
OAuth 클라이언트는 Google에서 관리하는 OAuth 사용자 인증 정보만 지원하므로 서드 파티 사용자 인증 정보를 사용하는 것은 지원되지 않습니다.
시작하기 전에
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Notebooks API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Notebooks API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. Google Cloud 콘솔에서 인스턴스 페이지로 이동합니다.
새로 만들기를 클릭합니다.
새 인스턴스 대화상자에서 고급 옵션을 클릭합니다.
인스턴스 만들기 대화상자의 세부정보 섹션에서 새 인스턴스에 대해 다음 정보를 제공합니다.
- 이름: 새 인스턴스 이름을 입력합니다. 이름은 문자로 시작해야 합니다. 이어서 최대 62자의 소문자, 숫자 또는 하이픈(-)이 와야 하며 하이픈으로 끝나서는 안 됩니다
- 리전 및 영역: 새 인스턴스의 리전 및 영역을 선택합니다. 최상의 네트워크 성능을 위해 지리적으로 가장 가까운 리전을 선택합니다. 사용 가능한 Vertex AI Workbench 위치를 참조하세요.
IAM 및 보안 섹션에서 단일 사용자를 선택합니다.
사용자 이메일 필드에 액세스 권한을 부여하려는 사용자 계정을 입력합니다. 지정된 사용자가 인스턴스의 생성자가 아닌 경우 지정된 사용자에게 인스턴스의 서비스 계정에 대한 서비스 계정 사용자 역할(
roles/iam.serviceAccountUser
)을 부여해야 합니다.관리형 최종 사용자 인증 정보 사용 설정을 선택합니다.
인스턴스 만들기 대화상자의 나머지 부분을 완료한 후 만들기를 클릭합니다.
Vertex AI Workbench에서 인스턴스를 만들고 자동으로 시작합니다. 인스턴스를 사용할 수 있으면 Vertex AI Workbench에서 Google Cloud 콘솔에 JupyterLab 열기 링크를 활성화합니다.
사용자는 각 Vertex AI Workbench 인스턴스에 대해 OAuth 클라이언트가 사용자 인증 정보를 관리하도록 동의해야 합니다. 이는 인스턴스당 한 번 실행됩니다. 동의하려면 JupyterLab 열기를 클릭하고 표시되는 대화상자를 완료합니다.
동의를 부여하지 않고 인스턴스에 액세스하려고 하면 JupyterLab에서Google Cloud 콘솔에서 JupyterLab을 열어 인증하라는 메시지를 표시합니다.
JupyterLab 내에서 최종 사용자 사용자 인증 정보를 사용할 수 있는지 확인하려면 JupyterLab에서 터미널을 열고 다음 명령어를 입력합니다.
gcloud auth list
Google Cloud 콘솔에서 인스턴스 페이지로 이동합니다.
인스턴스 이름 옆에 있는 JupyterLab 열기를 클릭합니다.
JupyterLab에서 File(파일) > New(새로 만들기) > Terminal(터미널)을 선택합니다.
터미널 창에서 다음을 실행합니다.
gcloud auth login
Y
를 입력합니다.안내에 따라 인증 코드를 복사하여 터미널에 입력합니다.
연합 JupyterLab 프록시를 사용하여 JupyterLab을 엽니다.
JupyterLab에서 File(파일) > New(새로 만들기) > Terminal(터미널)을 선택합니다.
헤드리스 로그인으로 직원 ID 제휴 사용자 인증 정보 파일을 만듭니다.
터미널 창에서 다음을 실행합니다.
gcloud auth login --cred-file="CREDENTIAL_FILE"
CREDENTIAL_FILE을 생성한 사용자 인증 정보 파일의 경로 및 이름으로 바꿉니다.
안내에 따라 서드 파티 인증 포털을 통해 인증합니다.
다음 명령어를 사용하여 인스턴스를 통해 사용자 인증 정보에 액세스할 수 있는지 확인합니다.
gcloud auth list
필요한 역할
Vertex AI Workbench 인스턴스를 만드는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대한 Notebooks 실행자 (roles/notebooks.runner
) IAM 역할을 부여해 달라고 요청하세요.
역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.
커스텀 역할이나 다른 사전 정의된 역할을 통해 필요한 권한을 얻을 수도 있습니다.
단일 사용자 인스턴스 만들기
Google Cloud 콘솔을 사용하여 Vertex AI Workbench 인스턴스를 만들려면 다음을 수행합니다.
사용자 인증 정보로 인스턴스 인증
Vertex AI Workbench는 애플리케이션 기본 사용자 인증 정보(ADC)를 사용하여 Google Cloud 서비스 및 API에 사용자 인증 정보를 인증할 수 있습니다. 제한사항으로 인해 관리형 사용자 인증 정보를 사용 설정할 수 없는 경우 이 섹션에서는 ADC에 사용자 사용자 인증 정보를 제공하는 방법을 설명합니다.
인증 단계는 Google 계정을 사용하는지 아니면 서드 파티 사용자 인증 정보를 사용하는지에 따라 달라집니다.
Google 계정
인스턴스에서 JupyterLab에 액세스할 수 있게 되면 다음 단계를 따르세요.
서드 파티 사용자 인증 정보
서드 파티 사용자 인증 정보로 인스턴스를 만든 경우 JupyterLab 프록시가 제공된 후 다음 단계를 따르세요.