Puedes definir políticas de Gestión de Identidades y Accesos (IAM) para controlar el acceso a los siguientes recursos de Vertex AI Feature Store:
Grupos de funciones
Instancias de tienda online
Vistas de funciones
Una política de gestión de identidades y accesos es un conjunto de vinculaciones que asocian uno o varios miembros o entidades principales a un rol de gestión de identidades y accesos. Puedes incluir los siguientes tipos de miembros en una vinculación de políticas de gestión de identidades y accesos:
Cuentas de usuario individuales
Grupos de Google
Dominios
Cuentas de servicio
Antes de empezar
Autentícate en Vertex AI, a menos que ya lo hayas hecho.
Para usar las muestras de la API REST de esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la CLI de gcloud.
Instala Google Cloud CLI. Después de la instalación, inicializa la CLI de Google Cloud ejecutando el siguiente comando:
gcloud init
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
Para obtener más información, consulta el artículo Autenticarse para usar REST de la documentación sobre autenticación de Google Cloud .
Definir una política de gestión de identidades y accesos para un grupo de funciones
Usa el siguiente ejemplo para definir una política de gestión de identidades y accesos en un grupo de funciones.
REST
Para asignar una política de gestión de identidades y accesos a un recurso de FeatureGroup
, envía una solicitud POST
mediante el método featureGroups.setIamPolicy.
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- LOCATION_ID: región en la que se encuentra la instancia de la tienda online, como
us-central1
. - PROJECT_ID: tu ID de proyecto.
- FEATUREGROUP_NAME: el nombre de la instancia de la tienda online para la que quieres definir la política de IAM.
- IAM_ROLE_NAME: el nombre del rol de gestión de identidades y accesos que se asignará a los miembros. Para ver una lista completa de los roles de gestión de identidades y accesos de Vertex AI, consulta Control de acceso con gestión de identidades y accesos.
- USER_EMAIL: opcional. La dirección de correo de la cuenta de usuario a la que se asigna el rol.
- GROUP_EMAIL: opcional. La dirección de correo del grupo de Google al que se asigna el rol.
- DOMAIN_NAME: opcional. Nombre de dominio al que se asigna el rol.
- SERVICE_ACCOUNT_EMAIL: opcional. Dirección de correo de la cuenta de servicio a la que se asigna el rol.
Método HTTP y URL:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureGroups/FEATUREGROUP_NAME:setIamPolicy
Cuerpo JSON de la solicitud:
{ "policy": { "bindings": [ { "role": "IAM_ROLE_NAME", "members": [ "user:USER_EMAIL", "group:GROUP_EMAIL", "domain:DOMAIN_NAME", "serviceAccount:SERVICE_ACCOUNT_EMAIL" ] } ] } }
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureGroups/FEATUREGROUP_NAME:setIamPolicy"
PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureGroups/FEATUREGROUP_NAME:setIamPolicy" | Select-Object -Expand Content
Deberías recibir una respuesta JSON similar a la siguiente:
{ "bindings": [ { "role": "IAM_ROLE_NAME", "members": [ "user:USER_EMAIL", "group:GROUP_EMAIL", "domain:DOMAIN_NAME", "serviceAccount:SERVICE_ACCOUNT_EMAIL" ] } ], "etag": "etag" }
Definir una política de gestión de identidades y accesos para una tienda online
Usa el siguiente ejemplo para definir una política de gestión de identidades y accesos en una instancia de tienda online.
REST
Para asignar una política de gestión de identidades y accesos a un recurso de FeatureOnlineStore
, envía una solicitud POST
mediante el método featureOnlineStores.setIamPolicy.
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- LOCATION_ID: región en la que se encuentra la instancia de la tienda online, como
us-central1
. - PROJECT_ID: tu ID de proyecto.
- FEATUREONLINESTORE_NAME: el nombre de la instancia de la tienda online para la que quieres definir la política de IAM.
- IAM_ROLE_NAME: el nombre del rol de gestión de identidades y accesos que se asignará a los miembros. Para ver una lista completa de los roles de gestión de identidades y accesos de Vertex AI, consulta Control de acceso con gestión de identidades y accesos.
- USER_EMAIL: opcional. La dirección de correo de la cuenta de usuario a la que se asigna el rol.
- GROUP_EMAIL: opcional. La dirección de correo del grupo de Google al que se asigna el rol.
- DOMAIN_NAME: opcional. Nombre de dominio al que se asigna el rol.
- SERVICE_ACCOUNT_EMAIL: opcional. Dirección de correo de la cuenta de servicio a la que se asigna el rol.
Método HTTP y URL:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME:setIamPolicy
Cuerpo JSON de la solicitud:
{ "policy": { "bindings": [ { "role": "IAM_ROLE_NAME", "members": [ "user:USER_EMAIL", "group:GROUP_EMAIL", "domain:DOMAIN_NAME", "serviceAccount:SERVICE_ACCOUNT_EMAIL" ] } ] } }
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME:setIamPolicy"
PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME:setIamPolicy" | Select-Object -Expand Content
Deberías recibir una respuesta JSON similar a la siguiente:
{ "bindings": [ { "role": "IAM_ROLE_NAME", "members": [ "user:USER_EMAIL", "group:GROUP_EMAIL", "domain:DOMAIN_NAME", "serviceAccount:SERVICE_ACCOUNT_EMAIL" ] } ], "etag": "etag" }
Definir una política de gestión de identidades y accesos para una vista de características
Usa el siguiente ejemplo para definir una política de gestión de identidades y accesos en una vista de características.
REST
Para asignar una política de gestión de identidades y accesos a un recurso de FeatureView
, envía una solicitud POST
mediante el método featureViews.setIamPolicy.
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- LOCATION_ID: región en la que se encuentra la vista de características, como
us-central1
. - PROJECT_ID: tu ID de proyecto.
- FEATUREONLINESTORE_NAME: nombre de la instancia de la tienda online que contiene la vista de la función.
- FEATUREVIEW_NAME: nombre de la vista de la función para la que quieres definir la política de gestión de identidades y accesos.
- IAM_ROLE_NAME: el nombre del rol de gestión de identidades y accesos que se asignará a los miembros. Para ver una lista completa de los roles de gestión de identidades y accesos de Vertex AI, consulta Control de acceso con gestión de identidades y accesos.
- USER_EMAIL: opcional. La dirección de correo de la cuenta de usuario a la que se asigna el rol.
- GROUP_EMAIL: opcional. La dirección de correo del grupo de Google al que se asigna el rol.
- DOMAIN_NAME: opcional. Nombre de dominio al que se asigna el rol.
- SERVICE_ACCOUNT_EMAIL: opcional. Dirección de correo de la cuenta de servicio a la que se asigna el rol.
Método HTTP y URL:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:setIamPolicy
Cuerpo JSON de la solicitud:
{ "policy": { "bindings": [ { "role": "IAM_ROLE_NAME", "members": [ "user:USER_EMAIL", "group:GROUP_EMAIL", "domain:DOMAIN_NAME", "serviceAccount:SERVICE_ACCOUNT_EMAIL" ] } ] } }
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:setIamPolicy"
PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:setIamPolicy" | Select-Object -Expand Content
Deberías recibir una respuesta JSON similar a la siguiente:
{ "bindings": [ { "role": "IAM_ROLE_NAME", "members": [ "user:USER_EMAIL", "group:GROUP_EMAIL", "domain:DOMAIN_NAME", "serviceAccount:SERVICE_ACCOUNT_EMAIL" ] } ], "etag": "etag" }
Siguientes pasos
Consulta cómo listar todas las funciones de un grupo de funciones.
Consulta cómo actualizar una función.
Consulta cómo eliminar una función.
Consulta cómo actualizar un grupo de funciones.
Tipos de servicio online en Vertex AI Feature Store.