En este documento, se describe cómo aprovisionar tu organización de Apigee con residencia de datos solo en reposo o con residencia de datos avanzada.
Consulta también Introducción a la residencia de datos.
Aprovisiona tu organización solo con residencia de datos en reposo
Como administrador de Apigee, para aprovisionar tu organización con residencia de datos solo en reposo y restringir dónde se almacenan los datos, usa una de las opciones de aprovisionamiento pagadas disponibles para la organización. Asegúrate de seleccionar la casilla de verificación Habilitar residencia de datos durante el aprovisionamiento.
Aprovisiona tu organización con residencia de datos avanzada
Como administrador de Apigee, para aprovisionar tu organización con residencia de datos avanzada, incluido el almacenamiento de datos (en reposo), el procesamiento (en uso) y la transmisión (en tránsito), debes seguir estos pasos.
| # | Step | Descripción | Ejecutada por |
| 1 | Crea una carpeta de Assured Workloads | Crea una carpeta de Assured Workloads en tu organización de Google Cloud para establecer y aplicar las políticas de la organización requeridas que restringen el uso de recursos solo en las ubicaciones permitidas. | Google Cloud administrador con permiso de Administración de Assured Workloads |
| 2 | Aprovisionamiento con residencia de datos avanzada | Aprovisiona tu organización pagada con residencia de datos avanzada usando una de las opciones de aprovisionamiento disponibles para organizaciones pagadas.
Debes usar la consola jurisdiccional para acceder a la IU de Apigee o al endpoint regional para acceder a las APIs de Apigee según la ubicación de tu plano de control. |
Administrador de la organización de Apigee |
Crea una carpeta de Assured Workloads
Assured Workloads permite a las organizaciones aplicar y hacer cumplir controles reglamentarios, regionales y de soberanía en los recursos de Google Cloud .
Con la consola de Google Cloud , crea una carpeta de Assured Workloads en tu organización de Google Cloud y selecciona un paquete de controles según tus requisitos de reglamentación.
Un paquete de controles es un conjunto de controles que, cuando se combinan, respaldan el concepto básico de un marco de cumplimiento, una ley o una reglamentación. El paquete de control establece y aplica las restricciones de políticas de la organización requeridas para hacer lo siguiente:
- Restringe el uso de recursos solo a los productos compatibles.
- Permitir la creación o el uso de recursos solo en las ubicaciones permitidas
Para obtener más información sobre Assured Workloads, consulta la descripción general de Assured Workloads.
Aprovisionamiento con residencia de datos avanzada
Como administrador de Apigee, cuando aprovisiones tu organización pagada con una de las opciones de aprovisionamiento, deberás usar la consola jurisdiccional para acceder a la IU de Apigee o al endpoint regional cuando uses la CLI.
Usa la consola jurisdiccional
Cuando aprovisiones tu organización con residencia de datos avanzada, deberás usar la consola jurisdiccional basada en la ubicación para acceder a la IU de Apigee. Cuando aprovisionas la organización de Apigee con la consola jurisdiccional, los siguientes campos se configuran automáticamente:
- La opción Habilitar residencia de datos está seleccionada (y no se puede anular la selección).
- Las opciones de jurisdicción de hosting del plano de control se filtran según la consola jurisdiccional en uso.
- Todos los demás selectores de regiones se filtran para mostrar solo las ubicaciones dentro de la jurisdicción de hosting del plano de control seleccionada.
Para obtener información sobre cómo acceder a la consola jurisdiccional, consulta Consola jurisdiccional Google Cloud y Responsabilidad compartida en Assured Workloads.
Usa el extremo regional
Cuando aprovisiones tu organización con residencia de datos avanzada, usa el siguiente extremo regional:
apigee.CONTROL_PLANE_LOCATION.rep.googleapis.com
En el ejemplo anterior, CONTROL_PLANE_LOCATION es la ubicación física en la que se almacenarán los datos del plano de control de Apigee. Para obtener una lista de las ubicaciones disponibles del plano de control, consulta Usa extremos regionales para la residencia de datos avanzada.
Durante el aprovisionamiento, eres responsable de seleccionar los valores adecuados. Si usas una ubicación prohibida por las políticas de la organización vigentes, recibirás un error Permission Denied.
Por ejemplo, el siguiente comando crea una organización de Apigee en la región de EE.UU. con la CMEK habilitada. Consulta también la API de organizaciones de Apigee.
curl "https://apigee.us.rep.googleapis.com/v1/organizations?parent=projects/$PROJECT_ID" \
-X POST
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{
"name": "$PROJECT_ID",
"runtimeType": "CLOUD", # Hybrid organizations aren't supported
"billingType": "$BILLING_TYPE", # Eval organizations aren't supported
"controlPlaneEncryptionKeyName" : "'"$CONTROL_PLANE_KEY_ID"'",
"apiConsumerDataLocation" : "'"$CONSUMER_DATA_REGION"'", # Must be single region in US
"apiConsumerDataEncryptionKeyName" : "'"$CONSUMER_DATA_KEY_ID"'",
"authorizedNetwork" : "'"$NETWORK_NAME"'", # Must be created in the US region
"runtimeDatabaseEncryptionKeyName" : "'"$RUNTIMEDB_KEY_ID"'"
}'
Cómo crear claves de CMEK con nivel de protección externo usando gcloud CLI
Cuando aprovisiones tu organización de Apigee con residencia de datos avanzada en la región de la UE, deberás crear claves de encriptación administradas por el cliente (CMEK) con un nivel de protección externo. Debes usar Google Cloud CLI para crear las claves de CMEK, ya que la consola jurisdiccional de la UE no admite la configuración de claves de CMEK respaldadas de forma externa. Además, deberás configurar un External Key Manager (EKM).
Para crear las claves de CMEK y configurar un EKM, sigue los pasos que se describen en las siguientes secciones:
Configura un EKM
Las claves de CMEK creadas para la región de la UE deben crearse con un nivel de protección externo, lo que requiere que configures un EKM. Para configurar un EKM, sigue las instrucciones que se proporcionan en las siguientes secciones:
Crea las claves de CMEK para la región de la UE
Crea las siguientes claves de CMEK necesarias para la región de la UE con los comandos de gcloud CLI que se describen a continuación:
- Clave de encriptación del plano de control
- Clave de encriptación de datos del consumidor de API
- Clave de encriptación de la base de datos de entorno de ejecución
- Clave de encriptación de disco de entorno de ejecución
Para obtener más información sobre cómo crear claves de CMEK, consulta Acerca de las claves de encriptación de Apigee.
Repite los siguientes pasos para crear cada una de las claves CMEK requeridas:
- Crea un llavero de claves de disco en la región de la UE con el siguiente comando:
gcloud kms keyrings create DATA_KEY_RING \ --location LOCATION \ --project=PROJECT_ID - Crea una clave externa con el siguiente comando:
gcloud kms keys create DATA_KEY_NAME \ --keyring=DATA_KEY_RING \ --location LOCATION \ --purpose encryption \ --protection-level external \ --skip-initial-version-creation \ --default-algorithm external-symmetric-encryption \ --project PROJECT_ID - Crea una versión de la clave que apunte al EKM configurado en el paso anterior con el siguiente comando:
gcloud kms keys versions create \ --key DATA_KEY_NAME \ --keyring DATA_KEY_RING \ --location LOCATION \ --external-key-uri "EKM_URI" \ --primary \ --project PROJECT_ID - Otorga permisos al agente de servicio de Apigee con el siguiente comando:
gcloud kms keys add-iam-policy-binding DATA_KEY_NAME \ --location LOCATION \ --keyring DATA_KEY_RING \ --member serviceAccount:service-$(gcloud projects describe $project --format="value(projectNumber)")@gcp-sa-apigee.iam.gserviceaccount.com \ --role roles/cloudkms.cryptoKeyEncrypterDecrypter \ --project PROJECT_ID
Aquí:
- DATA_KEY_RING: Es el nombre del llavero de claves del plano de control, los datos del consumidor de la API, la base de datos del entorno de ejecución o el disco del entorno de ejecución.
- DATA_KEY_NAME: Es el nombre del plano de control, los datos del consumidor de la API, la base de datos del entorno de ejecución o la clave del disco del entorno de ejecución.
- LOCATION: Es la ubicación de Cloud KMS del llavero de claves. Establece este valor de la siguiente manera:
- En Clave de encriptación del plano de control, configura una de las siguientes claves multirregionales:
usoeurope. - Para la clave de encriptación de datos del consumidor de la API, la clave de encriptación de la base de datos del entorno de ejecución y la clave de encriptación del disco del entorno de ejecución, establece una de las siguientes claves de una sola región:
europe-*ous-*. Por ejemplo,europe-west1,us-central1, etc.
- En Clave de encriptación del plano de control, configura una de las siguientes claves multirregionales:
- EKM_URI: Es el URI del EKM.
- PROJECT_ID: Es el ID del proyecto de Google Cloud .
Configura gcloud CLI para usar el extremo regional (opcional)
Puedes administrar tu organización de Apigee con gcloud CLI. En la mayoría de las organizaciones, gcloud CLI detecta automáticamente el extremo regional adecuado. Esto funciona sin problemas si el nombre de tu organización de Apigee coincide con el nombre del proyecto Google Cloud .
Sin embargo, en algunos casos, los nombres podrían no coincidir. Por ejemplo, si migraste la organización de Apigee de un proyecto Google Cloud a otro, los nombres de la organización de Apigee y el proyecto Google Cloud en el que reside podrían ser diferentes. En este caso, deberás realizar una de las siguientes acciones cuando uses la gcloud CLI:
- Pasa la marca
--organizationcon cada comando de la gcloud CLI para especificar la organización de Apigee de destino. - Configura la gcloud CLI para anular el extremo de Apigee y forzar a todos los comandos a usar el nuevo extremo regional.
Por ejemplo, para usar el extremo regional de EE.UU., el comando de gcloud CLI es el siguiente:
gcloud config set api_endpoint_overrides/apigee https://apigee.us.rep.googleapis.com/
Cómo ver la ubicación del plano de control de una organización
Si ya aprovisionaste tu organización (PROJECT_ID) para usarla con residencia de datos, puedes usar la API de getProjectMapping para ver la ubicación del plano de control asociada con un proyecto. Para ello, sigue estos pasos:
- Autoriza a gcloud para que acceda a Cloud Platform con tus
credenciales de usuario de Google:
gcloud auth login
- Llama a la API de getProjectMapping.
Dado que la información a la que se accede son metadatos y no contenido principal del cliente, puedes usar el extremo global o regional para llamar a la API. El siguiente comando usa el extremo global:
curl -X GET https://apigee.googleapis.com/v1/organizations/PROJECT_ID:getProjectMapping \ -H "Authorization: Bearer $(gcloud auth print-access-token)"En el ejemplo anterior, PROJECT_ID es el nombre de tu organización de Apigee.
A continuación, se proporciona un ejemplo de la respuesta.
{ "organization": "my-project", "projectIds": [ "my-project" ], "projectId": "my-project" "location": "us" }
Migra una organización de Apigee para admitir la residencia de datos avanzada
Para migrar una organización de Apigee existente que admite la residencia de datos en reposo para que admita la residencia de datos avanzada, haz lo siguiente:
- Mueve el proyectoGoogle Cloud en el que se aprovisiona Apigee a una carpeta de Assured Workloads. Para obtener más información, consulta Migra una carga de trabajo.
- Si creaste tu organización de Apigee antes de que la residencia de datos avanzada estuviera disponible de forma general, deberás volver a configurar tus recursos de redes globales para migrarlos a la jurisdicción requerida. En caso contrario, puede omitir este paso.