Crea una instancia de IA contra lavado de dinero

Para usar la IA contra lavado de dinero, crea una instancia. El recurso Instancia de IA contra lavado de dinero se encuentra en la raíz de todos los demás recursos de IA contra lavado de dinero. Se pueden crear varias instancias en la misma región dentro de un proyecto de Google Cloud. Las instancias cumplen con lo siguiente:

  • Cada instancia es específica de una región de Google Cloud, lo que garantiza la residencia de los datos dentro de ella.
  • Cada instancia requiere que todos los datos de entrada y salida existan en la misma región y proyecto de Google Cloud.
  • Cada instancia requiere una sola clave de encriptación asociada administrada por el cliente (CMEK) que se usa para encriptar todos los datos que crea la IA contra lavado de dinero.
  • Los recursos secundarios de una instancia heredan la ubicación y la configuración de encriptación de la instancia superior.
  • Cada instancia admite administración de accesos personalizada.

La lista de regiones de Google Cloud disponibles se puede encontrar en la página Ubicaciones de la IA contra el lavado de dinero. Puedes asignar una (o varias) ubicaciones geográficas en las que operas a una (o varias) ubicaciones de IA contra lavado de dinero disponibles, según tus políticas. Debes crear al menos una instancia de IA contra lavado de dinero por cada ubicación de IA contra lavado de dinero que uses.

Puedes ejecutar una puntuación de riesgo para clientes comerciales y minoristas en una instancia de IA contra lavado de dinero. Sin embargo, crea una instancia separada para realizar cualquiera de las siguientes acciones:

  • Restringe el acceso a diferentes conjuntos de datos contra el lavado de dinero a miembros distintos de tu organización.
  • Usa diferentes claves CMEK para distintos conjuntos de datos contra el lavado de dinero

Pasos

Para crear un proyecto de Google Cloud y habilitar la API, consulta Configura un proyecto y permisos.

Sigue estos pasos para crear una clave CMEK y una instancia de IA contra lavado de dinero.

Crea una clave de encriptación

Para crear una clave de encriptación, primero crea un llavero de claves y, luego, la clave. Para obtener más información, consulta Crea claves de encriptación con Cloud KMS.

Crea un llavero de claves

Para crear un llavero de claves, usa el método projects.locations.keyRings.create.

REST

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • KMS_PROJECT_ID: Es el ID del proyecto de Google Cloud para el proyecto que contiene el llavero de claves.
  • LOCATION: Es la ubicación del llavero de claves. Usa una de las regiones compatibles:
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
  • KEY_RING_ID: Es un identificador definido por el usuario para el llavero de claves.

Para enviar tu solicitud, elige una de estas opciones:

curl

Ejecuta el siguiente comando:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://cloudkms.googleapis.com/v1/projects/KMS_PROJECT_ID/locations/LOCATION/keyRings?key_ring_id=KEY_RING_ID"

PowerShell

Ejecuta el siguiente comando:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://cloudkms.googleapis.com/v1/projects/KMS_PROJECT_ID/locations/LOCATION/keyRings?key_ring_id=KEY_RING_ID" | Select-Object -Expand Content

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KEY_RING_ID",
  "createTime": CREATE_TIME
}

gcloud

Antes de usar cualquiera de los datos de comando a continuación, haz los siguientes reemplazos:

  • LOCATION: Es la ubicación del llavero de claves. Usa una de las regiones compatibles:
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
  • KEY_RING_ID: Es un identificador definido por el usuario para el llavero de claves.

Ejecuta el siguiente comando:

Linux, macOS o Cloud Shell

gcloud kms keyrings create KEY_RING_ID \
  --location LOCATION

Windows (PowerShell)

gcloud kms keyrings create KEY_RING_ID `
  --location LOCATION

Windows (cmd.exe)

gcloud kms keyrings create KEY_RING_ID ^
  --location LOCATION
Deberías recibir una respuesta vacía:
$

Crear una clave

Para crear una clave, usa el método projects.locations.keyRings.cryptoKeys.

REST

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • KMS_PROJECT_ID: Es el ID del proyecto de Google Cloud para el proyecto que contiene el llavero de claves.
  • LOCATION: Es la ubicación del llavero de claves. Usa una de las regiones compatibles:
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
  • KEY_RING_ID: Es el identificador definido por el usuario para el llavero de claves.
  • KEY_ID: Es un identificador definido por el usuario para la clave.

Cuerpo JSON de la solicitud:

{
  "purpose": "ENCRYPT_DECRYPT"
}

Para enviar tu solicitud, elige una de estas opciones:

curl

Guarda el cuerpo de la solicitud en un archivo llamado request.json. Ejecuta el comando siguiente en la terminal para crear o reemplazar este archivo en el directorio actual:

cat > request.json << 'EOF'
{
  "purpose": "ENCRYPT_DECRYPT"
}
EOF

Luego, ejecuta el siguiente comando para enviar tu solicitud de REST:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://cloudkms.googleapis.com/v1/projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KEY_RING_ID/cryptoKeys?crypto_key_id=KEY_ID"

PowerShell

Guarda el cuerpo de la solicitud en un archivo llamado request.json. Ejecuta el comando siguiente en la terminal para crear o reemplazar este archivo en el directorio actual:

@'
{
  "purpose": "ENCRYPT_DECRYPT"
}
'@  | Out-File -FilePath request.json -Encoding utf8

Luego, ejecuta el siguiente comando para enviar tu solicitud de REST:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://cloudkms.googleapis.com/v1/projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KEY_RING_ID/cryptoKeys?crypto_key_id=KEY_ID" | Select-Object -Expand Content

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KEY_RING_ID/cryptoKeys/KEY_ID",
  "primary": {
    "name": "projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KEY_RING_ID/cryptoKeys/KEY_ID/cryptoKeyVersions/1",
    "state": "ENABLED",
    "createTime": CREATE_TIME,
    "protectionLevel": "SOFTWARE",
    "algorithm": "GOOGLE_SYMMETRIC_ENCRYPTION",
    "generateTime": GENERATE_TIME
  },
  "purpose": "ENCRYPT_DECRYPT",
  "createTime": CREATE_TIME,
  "versionTemplate": {
    "protectionLevel": "SOFTWARE",
    "algorithm": "GOOGLE_SYMMETRIC_ENCRYPTION"
  },
  "destroyScheduledDuration": "86400s"
}

gcloud

Antes de usar cualquiera de los datos de comando a continuación, haz los siguientes reemplazos:

  • LOCATION: Es la ubicación del llavero de claves. Usa una de las regiones compatibles:
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
  • KEY_RING_ID: Es el identificador definido por el usuario para el llavero de claves.
  • KEY_ID: Es un identificador definido por el usuario para la clave.

Ejecuta el siguiente comando:

Linux, macOS o Cloud Shell

gcloud kms keys create KEY_ID \
  --keyring KEY_RING_ID \
  --location LOCATION \
  --purpose "encryption"

Windows (PowerShell)

gcloud kms keys create KEY_ID `
  --keyring KEY_RING_ID `
  --location LOCATION `
  --purpose "encryption"

Windows (cmd.exe)

gcloud kms keys create KEY_ID ^
  --keyring KEY_RING_ID ^
  --location LOCATION ^
  --purpose "encryption"
Deberías recibir una respuesta vacía:
$

Crea una instancia

Crea una instancia para la región específica en la que deben residir los datos. Esta instancia hace referencia a la clave de encriptación que creaste. Para obtener más información, consulta Claves de encriptación administradas por el cliente (CMEK).

Para crear una instancia, usa el método projects.locations.instances.create.

La siguiente información también está disponible en Crea y administra instancias.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: Es tu ID de tu proyecto de Google Cloud que aparece en Configuración de IAM.
  • LOCATION: Es la ubicación del llavero de claves y la instancia; usa una de las regiones compatibles:
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
  • INSTANCE_ID: Es un identificador definido por el usuario para la instancia.
  • KMS_PROJECT_ID: Es el ID del proyecto de Google Cloud para el proyecto que contiene el llavero de claves.
  • KEY_RING_ID: Es el identificador definido por el usuario para el llavero de claves.
  • KEY_ID: Es el identificador definido por el usuario para la clave

Cuerpo JSON de la solicitud:

{
  "kmsKey": "projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KEY_RING_ID/cryptoKeys/KEY_ID"
}

Para enviar tu solicitud, elige una de estas opciones:

curl

Guarda el cuerpo de la solicitud en un archivo llamado request.json. Ejecuta el comando siguiente en la terminal para crear o reemplazar este archivo en el directorio actual:

cat > request.json << 'EOF'
{
  "kmsKey": "projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KEY_RING_ID/cryptoKeys/KEY_ID"
}
EOF

Luego, ejecuta el siguiente comando para enviar tu solicitud de REST:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances?instance_id=INSTANCE_ID"

PowerShell

Guarda el cuerpo de la solicitud en un archivo llamado request.json. Ejecuta el comando siguiente en la terminal para crear o reemplazar este archivo en el directorio actual:

@'
{
  "kmsKey": "projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KEY_RING_ID/cryptoKeys/KEY_ID"
}
'@  | Out-File -FilePath request.json -Encoding utf8

Luego, ejecuta el siguiente comando para enviar tu solicitud de REST:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances?instance_id=INSTANCE_ID" | Select-Object -Expand Content

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.financialservices.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "target": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID",
    "verb": "create",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Si se ejecuta de forma correcta, el cuerpo de la respuesta contendrá una operación de larga duración con un ID que puede usarse para recuperar el estado en curso de la operación asíncrona. Copia el OPERATION_ID que se muestra para usarlo en la siguiente sección.

Revisa el resultado

Usa el método projects.locations.operations.get para verificar si se creó la instancia. Si la respuesta contiene "done": false, repite el comando hasta que contenga "done": true. Estas operaciones pueden tardar entre unos minutos y varias horas en completarse.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: Es tu ID de tu proyecto de Google Cloud que aparece en Configuración de IAM.
  • LOCATION: Es la ubicación de la instancia; usa una de las regiones compatibles:
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
  • OPERATION_ID: Es el identificador de la operación.

Para enviar tu solicitud, elige una de estas opciones:

curl

Ejecuta el siguiente comando:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID"

PowerShell

Ejecuta el siguiente comando:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID" | Select-Object -Expand Content

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.financialservices.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "endTime": END_TIME,
    "target": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID",
    "verb": "create",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.financialservices.v1.Instance",
    "name": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID",
    "createTime": CREATE_TIME,
    "updateTime": UPDATE_TIME,
    "kmsKey": "projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KEY_RING_ID/cryptoKeys/KEY_ID",
    "state": "ACTIVE"
  }
}

Otorga acceso a la clave CMEK

La API crea automáticamente una cuenta de servicio en tu proyecto. La cuenta de servicio necesita acceso a la clave CMEK para poder usarla a fin de encriptar y desencriptar los datos subyacentes. Otorga acceso a la clave.

Para PROJECT_NUMBER, usa el número de proyecto asociado con PROJECT_ID. Puedes encontrar el número de proyecto en la página Configuración de IAM.

gcloud kms keys add-iam-policy-binding "projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KEY_RING_ID/cryptoKeys/KEY_ID" \
  --keyring "projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KEY_RING_ID" \
  --location "LOCATION" \
  --member "serviceAccount:service-PROJECT_NUMBER@gcp-sa-financialservices.iam.gserviceaccount.com" \
  --role="roles/cloudkms.cryptoKeyEncrypterDecrypter" \
  --project="PROJECT_ID"

Comunicarme con el equipo de asistencia

Cada vez que crees una instancia de IA contra lavado de dinero, comunícate con el equipo de asistencia. Incluye la siguiente información para que el equipo de productos de IA contra el lavado de dinero pueda configurar la instancia de forma óptima según tus necesidades:

  • ID del proyecto
  • Región de Google Cloud
  • ID de la instancia
  • Cantidad esperada de partes en la tabla Party en conjuntos de datos de esta instancia
  • Cantidad esperada de transacciones por año en la tabla Transaction en los conjuntos de datos dentro de esta instancia

Para solicitar límites de cuota adicionales, consulta Cuotas.

La IA contra el lavado de dinero pone a disposición varios tipos de registros, incluidos los registros de la plataforma, los registros de auditoría y los registros de acceso a los datos. Obtén más información sobre cada tipo de registro: