Attributi CEL per le policy Unified Access Policies di IAM

Questo documento descrive gli attributi e le funzioni di Common Expression Language (CEL) che puoi utilizzare quando scrivi espressioni condizionali nelle Unified Access Policies (UAP) di IAM per Agent Gateway.

Per saperne di più sui concetti relativi alle UAP, consulta la panoramica delle UAP di IAM. Per scoprire come configurare le UAP, consulta Crea UAP IAM.

Attributi CEL disponibili

Nelle UAP, puoi definire le condizioni con espressioni condizionali. Le espressioni possono contenere più sottoespressioni. Il tipo di risorsa di destinazione che utilizzi in ogni condizione secondaria relazionale determina quali attributi puoi utilizzare.

Ad esempio, nella seguente condizione, nella sottoespressione destination.unregistered.path.startsWith('/v1/statements'), il tipo di risorsa è una destinazione non registrata, l'attributo è destination.unregistered.path e startsWith() è la funzione CEL.

destination.unregistered.host == 'finance.example.com' &&
destination.unregistered.path.startsWith('/v1/statements')

Gli attributi descritti nella tabella seguente sono disponibili per ogni tipo di risorsa:

Tipo di risorsa di destinazione Attributo Dettagli

Agent Registry

destination.is_registered
Tipo di valore Booleano
Valori supportati true, false
Operazioni supportate ==, !=
destination.agent_registry.resource_type
Tipo di valore Stringa
Valori supportati 'AGENT', 'ENDPOINT', 'MCP_SERVER', 'SKILL'
Operazioni supportate ==, !=, in
destination.agent_registry.location
Tipo di valore Stringa
Valori supportati ID località Google Cloud (ad esempio, 'global', 'us-central1')
Operazioni supportate ==, !=, in
destination.agent_registry.project_id
Tipo di valore Stringa
Valori supportati ID progetto Google Cloud
Operazioni supportate ==, !=, in

Agente

destination.agent_registry.agent.name
Tipo di valore Stringa
Valori supportati Nome risorsa agente (projects/PROJECT_ID/locations/LOCATION/agents/AGENT_NAME)
Operazioni supportate ==, !=, in

Server MCP

destination.agent_registry.mcp_server.name
Tipo di valore Stringa
Valori supportati Nome risorsa server MCP (projects/PROJECT_ID/locations/LOCATION/mcpServers/MCP_SERVER_NAME)
Operazioni supportate ==, !=, in
destination.agent_registry.mcp_server.method
Tipo di valore Stringa
Valori supportati Nome del metodo MCP (ad esempio, 'tools', 'prompts', 'resources')
Operazioni supportate ==, !=, in
destination.agent_registry.mcp_server.tool.name
Tipo di valore Stringa
Valori supportati Nome dello strumento (ad esempio, 'search_code', 'execute')
Operazioni supportate ==, !=, in
destination.agent_registry.mcp_server.tool.annotations.read_only_hint
Tipo di valore Booleano
Valori supportati true, false
Operazioni supportate ==, !=
destination.agent_registry.mcp_server.tool.annotations.destructive_hint
Tipo di valore Booleano
Valori supportati true, false
Operazioni supportate ==, !=
destination.agent_registry.mcp_server.tool.annotations.idempotent_hint
Tipo di valore Booleano
Valori supportati true, false
Operazioni supportate ==, !=
destination.agent_registry.mcp_server.tool.annotations.open_world_hint
Tipo di valore Booleano
Valori supportati true, false
Operazioni supportate ==, !=
destination.agent_registry.mcp_server.prompt.name
Tipo di valore Stringa
Valori supportati Nome del prompt
Operazioni supportate ==, !=, in
destination.agent_registry.mcp_server.resource.name
Tipo di valore Stringa
Valori supportati Nome della risorsa
Operazioni supportate ==, !=, in

Endpoint

destination.agent_registry.endpoint.name
Tipo di valore Stringa
Valori supportati Nome risorsa endpoint (projects/PROJECT_ID/locations/LOCATION/endpoints/ENDPOINT_NAME)
Operazioni supportate ==, !=, in

Destinazione non registrata

destination.unregistered.host
Tipo di valore Stringa
Valori supportati Nome host (ad esempio, 'google.com', 'example.com')
Operazioni supportate ==, !=, in, .startsWith(), .endsWith(), .contains()
destination.unregistered.path
Tipo di valore Stringa
Valori supportati Percorso della richiesta (ad esempio, '/admin', '/api/v1')
Operazioni supportate ==, !=, in, .startsWith(), .endsWith(), .contains()
destination.unregistered.method
Tipo di valore Stringa
Valori supportati Metodo HTTP (ad esempio, 'get', 'post', 'put', 'delete')
Operazioni supportate ==, !=, in

Passaggi successivi

Panoramica

Ottieni una panoramica di Agent Gateway.

Guida

Scopri come configurare le norme relative ai contenuti e all'attività.

Guida

Scopri come testare le policy.