Crear una instancia con acceso mediante credenciales de usuario
En esta página se describe cómo crear una instancia de Vertex AI Workbench que acceda a los servicios y las APIs a través de tus credenciales de usuario. Google Cloud
Tus credenciales de usuario son las asociadas a tu cuenta de Google. Tus credenciales de usuario determinan a qué servicios y APIs puede acceder tu cuenta de Google. Google Cloud
De forma predeterminada, cuando ejecutas código en una instancia de Vertex AI Workbench, tu instancia puede acceder a Google Cloud servicios y APIs mediante las credenciales asociadas a la cuenta de servicio de tu instancia. Esto significa que tu instancia tiene el mismo acceso a Google Cloud que la cuenta de servicio.
En esta página se describe cómo crear y configurar una instancia para que tenga el mismo acceso a Google Cloud que tus credenciales de usuario.
Información general
Vertex AI Workbench usa un cliente OAuth global gestionado por Google para gestionar el acceso a las credenciales de los usuarios, que se limita a los Google Cloud recursos del proyecto del usuario. Los usuarios deben dar su consentimiento al cliente de OAuth para gestionar sus credenciales de cada instancia de Vertex AI Workbench. Esto se hace una vez por instancia a través de un cuadro de diálogo que se abre al hacer clic en el botón Abrir JupyterLab de la consola Google Cloud .
La cuenta de servicio que se usa para crear la instancia de Vertex AI Workbench es el siguiente agente de servicio:
service-PROJECT_NUMBER@gcp-sa-notebooks-vm.
.
Este agente de servicio proporciona permisos limitados para servicios esenciales, como la exportación de registros. Los usuarios no pueden especificar otra cuenta de servicio si la función de credenciales de usuario final está habilitada.
Las instancias que tienen habilitadas las credenciales de usuario final tienen la etiqueta notebooks-managed-euc: true
Compute Engine y la clave de metadatos euc-enabled: true
asociadas al recurso de VM para indicar que la función está habilitada.
Limitaciones
Ten en cuenta las siguientes limitaciones al planificar tu proyecto:
Vertex AI Workbench usa un cliente de OAuth global gestionado por Google para gestionar el acceso a las credenciales de los usuarios. Las organizaciones no pueden implementar controles precisos, acceder al cliente de OAuth ni usar el registro para comprobar el uso del cliente de OAuth.
Para proteger la seguridad de las instancias de Vertex AI Workbench con credenciales de usuario gestionadas, los usuarios no pueden hacer lo siguiente:
- Usa SSH para acceder a la instancia.
- Ejecuta una secuencia de comandos tras el inicio.
- Accede a la página de detalles de la VM.
- Usar una imagen que no haya creado Google.
No se admite el uso de credenciales de terceros porque el cliente de OAuth solo admite credenciales de OAuth gestionadas por Google.
Antes de empezar
- 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. En la consola, ve a la página Instancias. Google Cloud
Haz clic en
Crear.En el cuadro de diálogo Nueva instancia, haz clic en Opciones avanzadas.
En el cuadro de diálogo Crear instancia, en la sección Detalles, proporcione la siguiente información sobre la nueva instancia:
- Nombre: asigna un nombre a la nueva instancia. El nombre debe empezar por una letra seguida de un máximo de 62 letras minúsculas, números o guiones (-), y no puede acabar en guion.
- Región y Zona: selecciona una región y una zona para la nueva instancia. Para obtener el mejor rendimiento de red, selecciona la región que esté geográficamente más cerca de ti. Consulta las ubicaciones de Vertex AI Workbench disponibles.
En la sección IAM y seguridad, selecciona Un solo usuario.
En el campo Correo del usuario, introduce la cuenta de usuario a la que quieras conceder acceso. Si el usuario especificado no es el creador de la instancia, debes asignarle el rol Usuario de cuenta de servicio (
roles/iam.serviceAccountUser
) en la cuenta de servicio de la instancia.Selecciona Habilitar las credenciales de usuario final gestionadas.
Completa el resto del cuadro de diálogo de creación de la instancia y, a continuación, haz clic en Crear.
Vertex AI Workbench crea una instancia y la inicia automáticamente. Cuando la instancia esté lista para usarse, Vertex AI Workbench activará un enlace Abrir JupyterLab en la consola. Google Cloud
Los usuarios deben dar su consentimiento al cliente de OAuth para gestionar sus credenciales en cada instancia de Vertex AI Workbench. Esto se hace una vez por instancia. Para dar tu consentimiento, haz clic en Abrir JupyterLab y completa el cuadro de diálogo que aparece.
Si intentas acceder a la instancia sin dar tu consentimiento, JupyterLab mostrará un mensaje para autenticarte abriendo JupyterLab desde la consolaGoogle Cloud .
Para verificar que las credenciales de usuario final están disponibles en JupyterLab, abre una terminal en JupyterLab e introduce el siguiente comando:
gcloud auth list
En la consola, ve a la página Instancias. Google Cloud
Junto al nombre de la instancia, haz clic en Abrir JupyterLab.
En JupyterLab, selecciona Archivo > Nuevo > Terminal.
En la ventana del terminal, ejecuta lo siguiente:
gcloud auth login
Introduce
Y
.Sigue las instrucciones para copiar un código de verificación e introducirlo en el terminal.
Abre JupyterLab mediante el proxy federado de JupyterLab.
En JupyterLab, selecciona Archivo > Nuevo > Terminal.
Crea un archivo de credenciales de Workforce Identity Federation con inicio de sesión sin interfaz.
En la ventana del terminal, ejecuta lo siguiente:
gcloud auth login --cred-file="CREDENTIAL_FILE"
Sustituye CREDENTIAL_FILE por la ruta y el nombre del archivo de credenciales que has creado.
Sigue las instrucciones para autenticarte a través del portal de autenticación de terceros.
Confirma que se puede acceder a tus credenciales a través de tu instancia con el siguiente comando:
gcloud auth list
Roles obligatorios
Para obtener los permisos que necesitas para crear una instancia de Vertex AI Workbench, pide a tu administrador que te conceda el rol de gestión de identidades y accesos Notebooks Runner (roles/notebooks.runner
) en el proyecto.
Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.
También puedes conseguir los permisos necesarios a través de roles personalizados u otros roles predefinidos.
Crear una instancia de un solo usuario
Para crear una instancia de Vertex AI Workbench mediante la consola, sigue estos pasos: Google Cloud
Autentica la instancia con tus credenciales de usuario
Vertex AI Workbench puede usar las credenciales predeterminadas de la aplicación (ADC) para autenticar tus credenciales de usuario en Google Cloud servicios y APIs. En esta sección se describe cómo proporcionar tus credenciales de usuario a ADC si alguna de las limitaciones te impide habilitar las credenciales gestionadas.
Los pasos de autenticación dependen de si usas una cuenta de Google o credenciales de terceros.
Cuenta de Google
Una vez que puedas acceder a JupyterLab en tu instancia, haz lo siguiente:
Credenciales de terceros
Si has creado una instancia con credenciales de terceros, cuando el proxy de JupyterLab esté disponible, haz lo siguiente: