Controllare l'accesso alle risorse del negozio online

Puoi controllare l'accesso alle istanze del negozio online e alle visualizzazioni delle funzionalità impostando i criteri di Identity and Access Management (IAM) per queste risorse. Un criterio IAM è una raccolta di associazioni che associa uno o più membri o entità a un ruolo IAM. Puoi includere i seguenti tipi di membri in un'associazione di criteri IAM:

  • Account utente individuali

  • Gruppi Google

  • Domini

  • Account di servizio

Prima di iniziare

Esegui l'autenticazione su Vertex AI, se non l'hai ancora fatto.

Per utilizzare gli esempi dell'API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali fornite a gcloud CLI.

    Install the Google Cloud CLI, then initialize it by running the following command:

    gcloud init

Per ulteriori informazioni, consulta Eseguire l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.

Impostare un criterio IAM per un negozio online

Utilizza il seguente esempio per impostare un criterio IAM per un'istanza del negozio online esistente.

REST

Per assegnare un criterio IAM a una risorsa FeatureOnlineStore, invia una richiesta POST utilizzando il metodo featureOnlineStores.setIamPolicy.

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • LOCATION_ID: regione in cui si trova l'istanza del negozio online, ad esempio us-central1.
  • PROJECT_ID: l'ID del tuo progetto.
  • FEATUREONLINESTORE_NAME: il nome dell'istanza del negozio online per cui vuoi impostare il criterio IAM.
  • IAM_ROLE_NAME: il nome del ruolo IAM da assegnare ai membri, ad esempio aiplatform.featureOnlineStoreUser. Per un elenco completo dei ruoli IAM per Vertex AI, consulta [Controllo dell'accesso con IAM](/vertex-ai/docs/general/access-control).
  • USER_EMAIL: facoltativo. L'indirizzo email dell'account utente a cui è assegnato il ruolo.
  • GROUP_EMAIL: facoltativo. L'indirizzo email del gruppo Google a cui è assegnato il ruolo.
  • DOMAIN_NAME: facoltativo. Il nome di dominio a cui è assegnato il ruolo.
  • SERVICE_ACCOUNT_EMAIL: facoltativo. L'indirizzo email dell'account di servizio a cui è assegnato il ruolo.

Metodo HTTP e URL:

POST https://LOCATION_ID-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME:setIamPolicy

Corpo JSON della richiesta:

{
  "policy": {
    "bindings": [
      {
        "role": "IAM_ROLE_NAME",
        "members": [
          "user:USER_EMAIL",
          "group:GROUP_EMAIL",
          "domain:DOMAIN_NAME",
          "serviceAccount:SERVICE_ACCOUNT_EMAIL"
        ]
      }
    ]
  }
}

Per inviare la richiesta, scegli una delle seguenti opzioni:

curl

Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

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/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME:setIamPolicy"

PowerShell

Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

$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/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME:setIamPolicy" | Select-Object -Expand Content

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "bindings": [
  {
    "role": "IAM_ROLE_NAME",
    "members": [
      "user:USER_EMAIL",
      "group:GROUP_EMAIL",
      "domain:DOMAIN_NAME",
      "serviceAccount:SERVICE_ACCOUNT_EMAIL"
    ]
  }
  ],
  "etag": "etag"
}

Impostare un criterio IAM per una visualizzazione delle funzionalità

Utilizza il seguente esempio per impostare un criterio IAM per una visualizzazione delle funzionalità esistente.

REST

Per assegnare un criterio IAM a una risorsa FeatureView, invia una richiesta POST utilizzando il metodo featureViews.setIamPolicy.

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • LOCATION_ID: regione in cui si trova la visualizzazione delle funzionalità, ad esempio us-central1.
  • PROJECT_ID: l'ID del tuo progetto.
  • FEATUREONLINESTORE_NAME: il nome dell'istanza del negozio online contenente la visualizzazione della funzionalità.
  • FEATUREVIEW_NAME: il nome della visualizzazione delle funzionalità per cui vuoi impostare il criterio IAM.
  • IAM_ROLE_NAME: il nome del ruolo IAM da assegnare ai membri, ad esempio aiplatform.featureOnlineStoreUser. Per un elenco completo dei ruoli IAM per Vertex AI, consulta [Controllo dell'accesso con IAM](/vertex-ai/docs/general/access-control).
  • USER_EMAIL: facoltativo. L'indirizzo email dell'account utente a cui è assegnato il ruolo.
  • GROUP_EMAIL: facoltativo. L'indirizzo email del gruppo Google a cui è assegnato il ruolo.
  • DOMAIN_NAME: facoltativo. Il nome di dominio a cui è assegnato il ruolo.
  • SERVICE_ACCOUNT_EMAIL: facoltativo. L'indirizzo email dell'account di servizio a cui è assegnato il ruolo.

Metodo HTTP e URL:

POST https://LOCATION_ID-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:setIamPolicy

Corpo JSON della richiesta:

{
  "policy": {
    "bindings": [
      {
        "role": "IAM_ROLE_NAME",
        "members": [
          "user:USER_EMAIL",
          "group:GROUP_EMAIL",
          "domain:DOMAIN_NAME",
          "serviceAccount:SERVICE_ACCOUNT_EMAIL"
        ]
      }
    ]
  }
}

Per inviare la richiesta, scegli una delle seguenti opzioni:

curl

Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

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/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:setIamPolicy"

PowerShell

Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

$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/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:setIamPolicy" | Select-Object -Expand Content

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "bindings": [
  {
    "role": "IAM_ROLE_NAME",
    "members": [
      "user:USER_EMAIL",
      "group:GROUP_EMAIL",
      "domain:DOMAIN_NAME",
      "serviceAccount:SERVICE_ACCOUNT_EMAIL"
    ]
  }
  ],
  "etag": "etag"
}

Passaggi successivi