Controle de acesso com o IAM
Nesta página, descrevemos como usar o Identity and Access Management (IAM) para gerenciar o acesso aos recursos do Colab Enterprise. Para gerenciar o acesso a outros recursos da Vertex AI, consulte Controle de acesso da Vertex AI com o IAM.
Controlar o acesso a notebooks com o IAM
É possível gerenciar o acesso aos notebooks do Colab Enterprise (arquivos IPYNB) no nível do projeto ou por notebook.
- Para conceder acesso a notebooks no nível do projeto, atribua um ou mais papéis a um principal (usuário, grupo ou conta de serviço).
- Para conceder acesso a um notebook específico, atribua um ou mais papéis a um principal no notebook. Para saber mais, consulte Gerenciar o acesso a um notebook.
Executar código que interage com outros serviços do Google Cloud
A concessão de acesso a um notebook é limitada às permissões específicas relacionadas à interação com ele. Por exemplo, você pode conceder a capacidade de criar um bloco, escrever código nele ou excluir o bloco.
Para executar um código que interage com outros serviços do Google Cloud , use um dos seguintes métodos:
Executar código em um ambiente de execução com credenciais de usuário final ativadas. Isso significa que seu notebook tem o mesmo acesso aos serviços do Google Cloud que o usuário dele.
Execute o código que autentica e autoriza seu notebook a interagir com os serviços do Google Cloud .
Para saber mais, consulte Executar código que interage com Google Cloud.
Tipos de papéis do IAM
Há diferentes tipos de papéis do IAM que podem ser usados no Colab Enterprise:
Os papéis predefinidos permitem conceder um conjunto de permissões relacionadas aos recursos do Colab Enterprise no nível do projeto.
Os papéis básicos (proprietário, editor e leitor) fornecem controle de acesso aos recursos do Colab Enterprise no nível do projeto e são comuns a todos os serviços do Google Cloud.
Os papéis personalizados permitem escolher um conjunto específico de permissões, criar seu próprio papel com elas e concedê-lo aos usuários da organização.
Para adicionar, atualizar ou remover esses papéis no projeto do Colab Enterprise, consulte a documentação sobre como gerenciar o acesso a projetos, pastas e organizações.
Funções predefinidas para o Colab Enterprise
O Colab Enterprise faz parte da Vertex AI, e os recursos do Colab Enterprise são gerenciados pela API Vertex AI. Portanto, é possível conceder aos principais acesso aos recursos do Colab Enterprise usando papéis da Vertex AI.
A tabela a seguir inclui todos os papéis predefinidos da Vertex AI.
Para usar papéis predefinidos em operações comuns do Colab Enterprise, consulte Administrador do Colab Enterprise (
roles/aiplatform.colabEnterpriseAdmin) e Usuário do Colab Enterprise (roles/aiplatform.colabEnterpriseUser).Para papéis relacionados ao gerenciamento de ambiente de execução, consulte Administrador do ambiente de execução do notebook (
roles/aiplatform.notebookRuntimeAdmin) e Usuário do ambiente de execução do notebook (roles/aiplatform.notebookRuntimeUser).Administrador da Vertex AI (
roles/aiplatform.admin), Usuário da Vertex AI (roles/aiplatform.user) e Visualizador da Vertex AI (roles/aiplatform.viewer) também incluem permissões do Colab Enterprise.
| Role | Permissions |
|---|---|
Agent Platform Administrator( Grants full access to all resources in Agent Platform. |
|
Aiplatform Editor( Editor role for aiplatform |
|
Agent Platform Express User Beta( Grants user access to Agent Platform Express. |
|
Agent Platform User( Grants access to use all resource in Agent Platform. |
|
Agent Platform Viewer( Grants access to view all resource in Agent Platform. |
|
Colab Enterprise Admin( Admin role of using colab enterprise. |
|
Colab Enterprise User( User role of using colab enterprise. |
|
Agent Platform Feature Store EntityType owner( Provides full access to all permissions for a particular entity type resource. Lowest-level resources where you can grant this role:
|
|
Agent Platform Express Admin Beta( Grants admin access to Agent Platform Express. |
|
Agent Platform Feature Store Admin( Grants full access to all resources in Agent Platform Feature Store. Lowest-level resources where you can grant this role:
|
|
Agent Platform Feature Store Data Viewer( This role provides permissions to read Feature data. Lowest-level resources where you can grant this role:
|
|
Agent Platform Feature Store Data Writer( This role provides permissions to read and write Feature data. Lowest-level resources where you can grant this role:
|
|
Agent Platform Feature Store Instance Creator( Administrator of Featurestore resources, but not the child resources under Featurestores. Lowest-level resources where you can grant this role:
|
|
Agent Platform Feature Store Resource Viewer( Viewer of all resources in Agent Platform Feature Store but cannot make changes. Lowest-level resources where you can grant this role:
|
|
Agent Platform Feature Store User Beta( Deprecated. Use featurestoreAdmin instead. |
|
Agent Platform Memory Bank Editor Role( Grants edit access to Agent Platform Memory Bank. |
|
Agent Platform Memory Bank User Role( Grants full user access to Agent Platform Memory Bank. |
|
Agent Platform Memory Bank Viewer Role( Grants viewer access to Agent Platform Memory Bank. |
|
Agent Platform Migration Service User( Grants access to use migration service in Agent Platform |
|
Notebook Executor User Beta( Grants users full access to schedules and notebook execution jobs. |
|
Notebook Runtime Admin( Grants full access to all runtime templates and runtimes in Notebook Service. |
|
Notebook Runtime User( Grants users permissions to create runtime resources using a runtime template and manage the runtime resources they created. |
|
Vertex AI Platform Provisioned Throughput Admin Beta( Grants access to use all resources related to Vertex AI Provisioned Throughput |
|
Vertex AI Platform Publisher Provisioned Throughput Admin Beta( Grants Publisher access to use all resources related to Vertex AI Provisioned Throughput Orders |
|
Vertex AI Platform Publisher Provisioned Throughput Viewer Beta( Grants Publisher access to view all resources related to Vertex AI Provisioned Throughput Orders |
|
Agent Platform Sessions Editor Role( Grants edit access to Agent Platform Sessions. |
|
Agent Platform Sessions User Role( Grants full user access to Agent Platform Sessions. |
|
Agent Platform Sessions Viewer Role( Grants viewer access to Agent Platform Sessions |
|
Agent Platform Tensorboard Web App User Beta( Grants access to the Vertex AI TensorBoard web app. |
|
Service agent roles
Service agent roles should only be granted to service agents.
| Role | Permissions |
|---|---|
Vertex AI Agent Sandbox Service Agent( Vertex AI Service Agent used to access Agent Sandbox managed resources in consumer project with restricted permissions. |
|
Vertex AI Batch Prediction Service Agent( Vertex AI Batch Prediction Service Agent for serving batch prediction requests. |
|
Vertex AI Colab Service Agent( Gives Vertex AI Colab the proper permissions to function. |
|
Vertex AI Custom Code Service Agent( Gives Vertex AI Custom Code the proper permissions. |
|
Vertex AI Extension Custom Code Service Agent( Gives Vertex AI Extension that executes custom code the permissions it needs to function. |
|
Vertex AI Extension Service Agent( Gives Vertex AI Extension the permissions it needs to function. |
|
Vertex AI Model Monitoring Service Agent( Gives Vertex AI Model Monitoring the permissions it needs to function. |
|
Vertex AI Notebook Service Agent( Vertex AI Service Agent used to run Notebook managed resources in user project with restricted permissions. |
|
Vertex AI Online Prediction Service Agent( Gives Vertex AI Online Prediction the permissions it needs to function. |
|
Vertex AI RAG Data Service Agent( Vertex AI Service Agent used by Vertex RAG to access user imported data, Vertex AI, Document AI processors, and Vector Search in the project |
|
Vertex AI Rapid Eval Service Agent( Vertex AI Service Agent used by GenAI Rapid Evaluation Service to access publisher model endpoints in the user project |
|
Vertex AI Reasoning Engine Service Agent( Gives Vertex AI Reasoning Engine the proper permissions to function. The aiplatform.reasoningEngines.create IAM permission implies read access to the GCS objects of the consumer project through this service agent. |
|
Vertex AI Service Agent( Gives Vertex AI the permissions it needs to function. |
|
Vertex AI Telemetry Service Agent( Allows Vertex AI Telemetry Service Agent to access telemetry data. |
|
Vertex AI Tuning Service Agent( Vertex AI Service Agent used for tuning in user project. |
|
Papéis básicos
Os papéis básicos mais antigos do Google Cloudsão comuns a todos os serviços do Google Cloud . Esses papéis são de Proprietário, Editor e Visualizador.
Os papéis básicos fornecem permissões em todo o Google Cloud, não apenas no Colab Enterprise. Por esse motivo, use os papéis do Colab Enterprise sempre que possível.
Papéis personalizados
Se os papéis predefinidos do IAM para o Colab Enterprise não atenderem às suas necessidades, é possível definir papéis personalizados. Os papéis personalizados permitem escolher um conjunto específico de permissões, criar seu próprio papel com elas e concedê-lo aos usuários da organização. Para mais informações, consulte Noções básicas sobre papéis personalizados do IAM.
Agentes de serviço para o Colab Enterprise
O Colab Enterprise cria e usa automaticamente agentes de serviço para acessar recursos em seu nome. Quando um agente de serviço é criado, ele recebe um papel predefinido para o projeto.
A tabela a seguir lista os agentes de serviço do Colab Enterprise, os endereços de e-mail e as respectivas funções:
| Nome | Usado para | Endereço de e-mail | Papel |
|---|---|---|---|
| Agente de serviço da Vertex AI | Recursos da Vertex AI | service-PROJECT_NUMBER@gcp-sa-aiplatform.iam.gserviceaccount.com |
roles/aiplatform.serviceAgent |
| Agente de serviço da Vertex AI Colab | Concede ao Colab Enterprise as permissões necessárias para funcionar. | service-PROJECT_NUMBER@gcp-sa-vertex-nb.iam.gserviceaccount.com |
roles/aiplatform.colabServiceAgent |
| Agente de serviço da Vertex AI para Notebook | Executar recursos gerenciados por notebooks no projeto do usuário com permissões restritas | service-PROJECT_NUMBER@gcp-sa-aiplatform-vm.iam.gserviceaccount.com |
roles/aiplatform.notebookServiceAgent |
Se você remover os papéis padrão dos agentes de serviço do Colab Enterprise, o Colab Enterprise poderá atribuir esses papéis novamente de forma automática para garantir a funcionalidade ininterrupta do serviço. Para desativar o serviço Colab Enterprise, desative as APIs relevantes em vez de remover papéis.
Considerações de segurança para permissões do Colab Enterprise
Quando um usuário cria um bloco do Colab Enterprise, ele recebe automaticamente a função de Proprietário do código (roles/dataform.codeOwner) nesse bloco. Essa concessão de papel no nível do recurso é separada de qualquer papel do IAM para envolvidos no projeto.
O IAM organiza as políticas de maneira hierárquica:
- Um usuário pode ter uma função na política do IAM do projeto, que é propagada automaticamente para todos os recursos no projeto.
- Um usuário também pode ter uma função em uma política de recursos específica, como um notebook individual.
Um usuário tem acesso a um recurso se tiver uma função na política de recursos ou em qualquer uma das políticas pai.
Para revogar totalmente o acesso de um usuário, os administradores podem fazer o seguinte:
- Remova as funções do usuário de cada notebook individual. Para saber mais, consulte Remover o acesso no nível do recurso de um notebook.
- Crie uma política de negação do IAM para revogar todas as permissões do usuário em todos os recursos do projeto.
A seguir
Conceder a um principal o acesso a um notebook do Colab Enterprise.
Saiba como criar e gerenciar papéis personalizados de IAM.
Saiba mais sobre os agentes de serviço