Las configuraciones de la entrada de acceso adaptado al contexto permiten el acceso a los recursos según los atributos del cliente, como el origen de la red (dirección IP o red de VPC), el tipo de identidad (cuenta de servicio o usuario), la identidad y los datos del dispositivo. El acceso se define mediante reglas de entrada.
Para obtener una descripción general de las reglas de entrada y salida, consulta Reglas de entrada y salida.
Para obtener instrucciones sobre cómo aplicar las políticas de reglas de entrada y salida, consulta Configura políticas de entrada y salida.
Ejemplos de configuración de casos de uso de acceso adaptado al contexto
En esta sección, se incluyen los siguientes ejemplos de acceso adaptado al contexto:
- Permite que los usuarios humanos accedan a BigQuery desde Internet y solo a las cuentas de servicio específicas accedan desde un rango de IP específico
- Permite que los empleados consulten BigQuery desde dispositivos de confianza a través de Internet y una cuenta de servicio específica para cargar datos de forma privada en un bucket de Cloud Storage (datos de origen)
Permite que los usuarios humanos accedan a BigQuery desde Internet y solo a las cuentas de servicio específicas accedan desde un rango de IP específico

Supongamos que definiste el siguiente perímetro, que se encuentra en la lista de perímetros con gcloud:
name: accessPolicies/222/servicePerimeters/Example
status:
resources:
- projects/111
restrictedServices:
- bigquery.googleapis.com
- storage.googleapis.com
vpcAccessibleServices:
enableRestriction: true
allowedServices:
- RESTRICTED_SERVICES
title: Example
También suponemos que se definió un nivel de acceso denominado CorpDatacenters. En este ejemplo, CorpDatacenters es un rango incluido en la lista de entidades permitidas de direcciones IP de centros de datos corporativos que acceden a las cuentas de servicio.
Esta es la política direccional que permite el acceso a todos los seres humanos y un conjunto específico de cuentas de servicio, limitado a un conjunto particular de direcciones IP (definidas por un nivel de acceso):
echo """
- ingressFrom:
identities:
- serviceAccount:my-sa@my-project.iam.gserviceaccount.com
sources:
- accessLevel: accessPolicies/222/accessLevels/CorpDatacenters
ingressTo:
operations:
- serviceName: bigquery.googleapis.com
methodSelectors:
- method: \"*\"
resources:
- \"*\"
- ingressFrom:
identityType: ANY_USER_ACCOUNT
sources:
- accessLevel: \"*\"
ingressTo:
operations:
- serviceName: bigquery.googleapis.com
methodSelectors:
- method: \"*\"
resources:
- \"*\"
""" > ingress.yaml
Ejecuta el siguiente comando para aplicar las reglas de entrada:
gcloud access-context-manager perimeters update Example --set-ingress-policies=ingress.yaml
Permite que los empleados consulten BigQuery y carguen datos de forma privada en un bucket de Cloud Storage

Supongamos que definiste el siguiente perímetro, que se encuentra en la lista de perímetros con gcloud:
name: accessPolicies/222/servicePerimeters/Example
status:
resources:
- projects/111
restrictedServices:
- bigquery.googleapis.com
- storage.googleapis.com
vpcAccessibleServices:
enableRestriction: true
allowedServices:
- RESTRICTED_SERVICES
title: Example
Esta es la política direccional que permite que los seres humanos accedan a las vistas de BigQuery desde dispositivos de confianza (mediante un nivel de acceso) y una cuenta de servicio específica para acceder a Cloud Storage desde una red de VPC autorizada:
echo """
- ingressFrom:
identities:
- serviceAccount:my-sa@my-project.iam.gserviceaccount.com
sources:
- resource: projects/111
ingressTo:
operations:
- serviceName: storage.googleapis.com
methodSelectors:
- method: google.storage.Write
- method: google.storage.objects.create
resources:
- \"*\"
- ingressFrom:
identityType: ANY_SERVICE_ACCOUNT
sources:
- resource: //compute.googleapis.com/projects/my-network-project/global/networks/top-tier-vpc-network
ingressTo:
operations:
- serviceName: storage.googleapis.com
methodSelectors:
- method: google.storage.Write
- method: google.storage.objects.create
resources:
- \"*\"
- ingressFrom:
identityType: ANY_USER_ACCOUNT
sources:
- accessLevel: accessPolicies/222/accessLevels/TrustedDevices
ingressTo:
operations:
- serviceName: bigquery.googleapis.com
methodSelectors:
- permission: bigquery.tables.getData
resources:
- \"*\"
""" > ingress.yaml
Ejecuta el siguiente comando para aplicar las reglas de entrada:
gcloud access-context-manager perimeters update Example --set-ingress-policies=ingress.yaml
Para obtener información sobre las limitaciones de las redes de VPC cuando las usas en perímetros de servicio, consulta Limitaciones de las redes de VPC.