Créer une instance d'AML basée sur l'IA

Pour utiliser l'AML basée sur l'IA, créez une instance. La ressource Instance d'AML basée sur l'IA est à la racine de toutes les autres ressources d'AML basées sur l'IA. Vous pouvez créer plusieurs instances dans la même région au sein d'un projet Google Cloud. Les instances doivent respecter les conditions suivantes:

  • Chaque instance est spécifique à une région Google Cloud, ce qui garantit la résidence des données dans cette région.
  • Chaque instance nécessite que toutes les données d'entrée et de sortie existent dans la même région et le même projet Google Cloud.
  • Chaque instance nécessite une seule clé de chiffrement gérée par le client (CMEK) associée, qui permet de chiffrer toutes les données créées par l'AML basée sur l'IA.
  • Les ressources enfants d'une instance héritent des paramètres d'emplacement et de chiffrement de l'instance parente.
  • Chaque instance est compatible avec la gestion des accès personnalisée.

La liste des régions Google Cloud disponibles est disponible sur la page Emplacements de l'AML basée sur l'IA. En fonction de vos règles, vous pouvez mapper une (ou plusieurs) des zones géographiques dans lesquelles vous opérez avec une ou plusieurs zones géographiques AML AI disponibles. Vous devez créer au moins une instance d'AML basée sur l'IA pour chaque emplacement d'AML basé sur l'IA que vous utilisez.

Vous pouvez appliquer des scores de risque aux clients commerciaux et au détail dans une même instance d'AML basée sur l'IA. Cependant, créez une instance distincte pour effectuer l'une des opérations suivantes:

  • Restreindre l'accès à différents ensembles de données AML aux membres disparates de votre organisation
  • Utiliser différentes clés CMEK pour différents ensembles de données AML

Étapes

Pour créer un projet Google Cloud et activer l'API, consultez la page Configurer un projet et les autorisations.

Suivez ces étapes pour créer une clé CMEK et une instance d'AML basée sur l'IA.

Créer une clé de chiffrement

Pour créer une clé de chiffrement, commencez par créer un trousseau de clés, puis la clé. Pour en savoir plus, consultez la page Créer des clés de chiffrement avec Cloud KMS.

Créer un trousseau de clés

Pour créer un trousseau de clés, utilisez la méthode projects.locations.keyRings.create.

REST

Avant d'utiliser les données de requête, effectuez les remplacements suivants:

  • KMS_PROJECT_ID: ID du projet Google Cloud contenant le trousseau de clés
  • LOCATION: emplacement du trousseau de clés ; utilisez l'une des régions disponibles :
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
  • KEY_RING_ID: identifiant défini par l'utilisateur pour le trousseau de clés

Pour envoyer votre requête, choisissez l'une des options suivantes :

curl

exécutez la commande suivante :

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

exécutez la commande suivante :

$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

Vous devriez recevoir une réponse JSON de ce type :

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

gcloud

Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :

  • LOCATION: emplacement du trousseau de clés ; utilisez l'une des régions disponibles :
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
  • KEY_RING_ID: identifiant défini par l'utilisateur pour le trousseau de clés

Exécutez la commande suivante:

Linux, macOS ou 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
Vous devriez recevoir une réponse vide :
$

Créer une clé

Pour créer une clé, utilisez la méthode projects.locations.keyRings.cryptoKeys.

REST

Avant d'utiliser les données de requête, effectuez les remplacements suivants:

  • KMS_PROJECT_ID: ID du projet Google Cloud contenant le trousseau de clés
  • LOCATION: emplacement du trousseau de clés ; utilisez l'une des régions disponibles :
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
  • KEY_RING_ID: identifiant défini par l'utilisateur pour le trousseau de clés
  • KEY_ID: identifiant défini par l'utilisateur pour la clé

Corps JSON de la requête :

{
  "purpose": "ENCRYPT_DECRYPT"
}

Pour envoyer votre requête, choisissez l'une des options suivantes :

curl

Enregistrez le corps de la requête dans un fichier nommé request.json. Exécutez la commande suivante dans le terminal pour créer ou écraser ce fichier dans le répertoire actuel :

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

Exécutez ensuite la commande suivante pour envoyer votre requête 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

Enregistrez le corps de la requête dans un fichier nommé request.json. Exécutez la commande suivante dans le terminal pour créer ou écraser ce fichier dans le répertoire actuel :

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

Exécutez ensuite la commande suivante pour envoyer votre requête 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

Vous devriez recevoir une réponse JSON de ce type :

{
  "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

Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :

  • LOCATION: emplacement du trousseau de clés ; utilisez l'une des régions disponibles :
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
  • KEY_RING_ID: identifiant défini par l'utilisateur pour le trousseau de clés
  • KEY_ID: identifiant défini par l'utilisateur pour la clé

Exécutez la commande suivante:

Linux, macOS ou 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"
Vous devriez recevoir une réponse vide :
$

Créer une instance

Créez une instance pour la région spécifique où les données doivent résider. Cette instance référence la clé de chiffrement que vous avez créée. Pour en savoir plus, consultez la page Clés de chiffrement gérées par le client (CMEK).

Pour créer une instance, utilisez la méthode projects.locations.instances.create.

(Les informations suivantes sont également disponibles dans Créer et gérer des instances.)

Avant d'utiliser les données de requête, effectuez les remplacements suivants:

  • PROJECT_ID : ID de votre projet Google Cloud répertorié dans les paramètres IAM.
  • LOCATION: emplacement du trousseau de clés et de l'instance (utilisez l'une des régions disponibles) :
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
  • INSTANCE_ID: identifiant défini par l'utilisateur pour l'instance
  • KMS_PROJECT_ID: ID du projet Google Cloud contenant le trousseau de clés
  • KEY_RING_ID: identifiant défini par l'utilisateur pour le trousseau de clés
  • KEY_ID: identifiant défini par l'utilisateur pour la clé.

Corps JSON de la requête :

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

Pour envoyer votre requête, choisissez l'une des options suivantes :

curl

Enregistrez le corps de la requête dans un fichier nommé request.json. Exécutez la commande suivante dans le terminal pour créer ou écraser ce fichier dans le répertoire actuel :

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

Exécutez ensuite la commande suivante pour envoyer votre requête 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

Enregistrez le corps de la requête dans un fichier nommé request.json. Exécutez la commande suivante dans le terminal pour créer ou écraser ce fichier dans le répertoire actuel :

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

Exécutez ensuite la commande suivante pour envoyer votre requête 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

Vous devriez recevoir une réponse JSON de ce type :

{
  "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 la requête aboutit, le corps de la réponse contient une opération de longue durée avec un ID permettant de récupérer l'état d'exécution de l'opération asynchrone. Copiez le OPERATION_ID renvoyé pour l'utiliser dans la section suivante.

Vérifier le résultat

Utilisez la méthode projects.locations.operations.get pour vérifier si l'instance a bien été créée. Si la réponse contient "done": false, répétez la commande jusqu'à ce que la réponse contienne "done": true. Ces opérations peuvent prendre de quelques minutes à plusieurs heures.

Avant d'utiliser les données de requête, effectuez les remplacements suivants:

  • PROJECT_ID : ID de votre projet Google Cloud répertorié dans les paramètres IAM.
  • LOCATION: emplacement de l'instance. Utilisez l'une des régions disponibles :
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
  • OPERATION_ID: identifiant de l'opération

Pour envoyer votre requête, choisissez l'une des options suivantes :

curl

exécutez la commande suivante :

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

exécutez la commande suivante :

$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

Vous devriez recevoir une réponse JSON de ce type :

{
  "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"
  }
}

Accorder l'accès à la clé CMEK

L'API crée automatiquement un compte de service dans votre projet. Le compte de service a besoin d'accéder à la clé CMEK pour pouvoir l'utiliser pour chiffrer et déchiffrer les données sous-jacentes. Accordez l'accès à la clé.

Pour PROJECT_NUMBER, utilisez le numéro de projet associé à PROJECT_ID. Vous le trouverez sur la page Paramètres 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"

Contacter l'assistance

Chaque fois que vous créez une instance d'AML basée sur l'IA, contactez l'assistance. Incluez les informations suivantes pour que l'équipe produit AML AI puisse configurer votre instance de manière optimale en fonction de vos besoins:

  • ID du projet
  • Région Google Cloud
  • ID d'instance
  • Nombre attendu de parties dans la table Party dans les ensembles de données de cette instance
  • Nombre attendu de transactions par an dans la table Transaction pour les ensembles de données de cette instance

Pour demander des limites de quota supplémentaires, consultez la page Quotas.

L'AML basée sur l'IA met à disposition plusieurs types de journaux : les journaux de plate-forme, les journaux d'audit, Apprenez-en plus sur chaque type de journalisation: