Nesta página, descrevemos como aplicar o controle de acesso à fonte de dados (também conhecido como ACLs) para apps de pesquisa criados com o Cloud Storage ou o BigQuery.
Visão geral
O controle de acesso às suas fontes de dados no Gemini Enterprise limita os dados que os usuários podem ver nos resultados do app de pesquisa. O Google usa seu provedor de identidade para identificar o usuário final que está fazendo uma pesquisa e determinar se ele tem acesso aos documentos retornados como resultados.
Por exemplo, digamos que os funcionários da sua empresa pesquisem documentos do BigQuery usando seu app de pesquisa. No entanto, você precisa garantir que eles não possam acessar conteúdo pelo app que não têm permissão para acessar. Se você configurou um pool de força de trabalho em Google Cloud para o provedor de identidade da sua organização, também é possível especificar esse pool no Gemini Enterprise. Agora, se um funcionário usar seu app, ele vai receber resultados da pesquisa apenas para documentos a que a conta já tem acesso no BigQuery.
Ativar o controle de acesso é um procedimento único. Para aplicar o controle de acesso a uma fonte de dados do BigQuery ou do Cloud Storage, siga as etapas abaixo, dependendo do tipo de dados, como estruturados ou não estruturados.
- Dados não estruturados do Cloud Storage
- Dados estruturados do Cloud Storage
- Dados não estruturados do BigQuery
- Dados estruturados do BigQuery
Dados não estruturados do Cloud Storage
Ao configurar um repositório de dados não estruturados do Cloud Storage, também é necessário fazer upload dos metadados da ACL e definir o repositório como controlado por acesso:
Ao preparar seus dados, inclua informações de ACL nos metadados usando o campo
acl_info
. Exemplo:{ "id": "<your-id>", "jsonData": "<JSON string>", "content": { "mimeType": "<application/pdf or text/html>", "uri": "gs://<your-gcs-bucket>/directory/filename.pdf" }, "acl_info": { "readers": [ { "principals": [ { "group_id": "group_1" }, { "user_id": "user_1" } ] } ] } }
Para mais informações sobre dados não estruturados com metadados, consulte a seção "Dados não estruturados" em Preparar dados para ingestão.
Ao seguir as etapas para criar um repositório de dados em Criar um repositório de dados próprios, é possível ativar o controle de acesso fazendo o seguinte no console ou usando a API:
- Console: ao criar um repositório de dados, selecione Este repositório de dados contém informações de controle de acesso.
- API: ao criar um repositório de dados, inclua o campo
"aclEnabled": "true"
no payload JSON.
Ao seguir as etapas para importar dados em Criar um repositório de dados próprios, faça o seguinte:
- Faça upload dos metadados com informações de ACL do mesmo bucket dos seus dados não estruturados.
- Se você estiver usando a API, defina
GcsSource.dataSchema
comodocument
Dados estruturados do Cloud Storage
Ao configurar um repositório de dados estruturados do Cloud Storage, também é necessário fazer upload dos metadados da ACL e definir o repositório como controlado por acesso:
Ao preparar seus dados, inclua informações de ACL nos metadados usando o campo
acl_info
. Exemplo:{ "id": "<your-id>", "jsonData": "<JSON string>", "acl_info": { "readers": [ { "principals": [ { "group_id": "group_1" }, { "user_id": "user_1" } ] } ] } }
Ao seguir as etapas para criar um repositório de dados em Criar um repositório de dados próprios, é possível ativar o controle de acesso fazendo o seguinte no console ou usando a API:
- Console: ao criar um repositório de dados, selecione Este repositório de dados contém informações de controle de acesso.
- API: ao criar um repositório de dados, inclua o campo
"aclEnabled": "true"
no payload JSON.
Ao seguir as etapas para importação de dados em Criar um repositório de dados próprios, faça o seguinte:
- Faça upload dos metadados com informações de ACL do mesmo bucket dos seus dados estruturados.
- Se você estiver usando a API, defina
GcsSource.dataSchema
comodocument
.
Dados não estruturados do BigQuery
Ao configurar um repositório de dados não estruturados do BigQuery, é necessário definir o repositório como controlado por acesso e fornecer metadados de ACL usando um esquema predefinido para o Gemini Enterprise:
Ao preparar os dados, especifique o seguinte esquema. Não use um esquema personalizado.
[ { "name": "id", "mode": "REQUIRED", "type": "STRING", "fields": [] }, { "name": "jsonData", "mode": "NULLABLE", "type": "STRING", "fields": [] }, { "name": "content", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "mimeType", "type": "STRING", "mode": "NULLABLE" }, { "name": "uri", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "acl_info", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "readers", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "principals", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "user_id", "type": "STRING", "mode": "NULLABLE" }, { "name": "group_id", "type": "STRING", "mode": "NULLABLE" } ] } ] } ] } ]
Inclua os metadados da ACL como uma coluna na sua tabela do BigQuery.
Ao seguir as etapas em Criar um repositório de dados próprios, ative o controle de acesso no console ou usando a API:
- Console: ao criar um repositório de dados, selecione Este repositório de dados contém informações de controle de acesso.
- API: ao criar um repositório de dados, inclua o campo
"aclEnabled": "true"
no payload JSON.
Ao seguir as etapas de importação de dados em Criar um repositório de dados próprios, se estiver usando a API, defina
BigQuerySource.dataSchema
comodocument
.
Dados estruturados do BigQuery
Ao configurar um repositório de dados estruturados do BigQuery, você precisa definir o repositório como controlado por acesso e fornecer metadados de ACL usando um esquema predefinido para o Gemini Enterprise:
Ao preparar os dados, especifique o seguinte esquema. Não use um esquema personalizado.
[ { "name": "id", "mode": "REQUIRED", "type": "STRING", "fields": [] }, { "name": "jsonData", "mode": "NULLABLE", "type": "STRING", "fields": [] }, { "name": "acl_info", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "readers", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "principals", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "user_id", "type": "STRING", "mode": "NULLABLE" }, { "name": "group_id", "type": "STRING", "mode": "NULLABLE" } ] } ] } ] } ]
Inclua os metadados da ACL como uma coluna na sua tabela do BigQuery.
Ao seguir as etapas em Criar um repositório de dados próprios, ative o controle de acesso no console ou usando a API:
- Console: ao criar um repositório de dados, selecione Este repositório de dados contém informações de controle de acesso.
- API: ao criar um repositório de dados, inclua o campo
"aclEnabled": "true"
no payload JSON.
Ao seguir as etapas para importar dados em Criar um repositório de dados próprios, faça o seguinte:
- Se você estiver usando o console, ao especificar o tipo de dados que está enviando, selecione JSONL para dados estruturados com metadados.
- Se você estiver usando a API, defina
BigQuerySource.dataSchema
comodocument
.