Créer une instance d'IA AML

Pour utiliser l'AML basée sur l'IA, créez une instance. L'AML basée sur l'IA La ressource Instance se trouve au de toutes les autres ressources AML basée sur l'IA. Vous pouvez créer plusieurs instances dans la même région dans un projet Google Cloud. Les instances respectent les éléments suivants :

  • Chaque instance est spécifique à une région Google Cloud, ce qui garantit la résidence des données dans la région Google Cloud.
  • Chaque instance nécessite que toutes les données d'entrée et de sortie se trouvent 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 associée (CMEK), qui permettent de chiffrer toutes les données créées par l'AML basée sur l'IA.
  • Les ressources enfants d'une instance héritent de l'emplacement de l'instance parente et des paramètres de chiffrement.
  • Chaque instance est compatible avec la gestion personnalisée des accès.

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

Vous pouvez effectuer une évaluation des risques à la fois pour les clients commerciaux et les clients particuliers dans une même instance d'IA AML. Cependant, créez une instance distincte l'une des options suivantes:

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

Étapes

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

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

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é elle-même. 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 ci-dessous, effectuez les remplacements suivants :

  • KMS_PROJECT_ID: projet Google Cloud ID du projet contenant le trousseau de clés
  • LOCATION : emplacement du trousseau de clés. Utilisez l'une des régions disponibles.
    Afficher les lieux
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
    • australia-southeast1
  • 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": "2023-03-14T15:52:55.358979323Z"
}

gcloud

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

  • KMS_PROJECT_ID: projet Google Cloud ID du projet contenant le trousseau de clés
  • LOCATION : emplacement du trousseau de clés. Utilisez l'une des régions disponibles.
    Afficher les emplacements
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
    • australia-southeast1
  • 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 \
  --project KMS_PROJECT_ID --location LOCATION

Windows (PowerShell)

gcloud kms keyrings create KEY_RING_ID `
  --project KMS_PROJECT_ID --location LOCATION

Windows (cmd.exe)

gcloud kms keyrings create KEY_RING_ID ^
  --project KMS_PROJECT_ID --location LOCATION
Vous devez obtenir 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 ci-dessous, effectuez les remplacements suivants :

  • KMS_PROJECT_ID : ID de projet Google Cloud du projet contenant le trousseau de clés
  • LOCATION : emplacement du trousseau de clés. Utilisez l'une des régions disponibles.
    Afficher les lieux
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
    • australia-southeast1
  • 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": "2023-03-14T15:52:55.358979323Z",
    "protectionLevel": "SOFTWARE",
    "algorithm": "GOOGLE_SYMMETRIC_ENCRYPTION",
    "generateTime": "2023-03-14T15:52:55.358979323Z"
  },
  "purpose": "ENCRYPT_DECRYPT",
  "createTime": "2023-03-14T15:52:55.358979323Z",
  "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 :

  • KMS_PROJECT_ID : ID de projet Google Cloud du projet contenant le trousseau de clés
  • LOCATION : emplacement du trousseau de clés. Utilisez l'une des régions disponibles.
    Afficher les lieux
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
    • australia-southeast1
  • 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 \
  --project KMS_PROJECT_ID \
  --location LOCATION \
  --purpose "encryption"

Windows (PowerShell)

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

Windows (cmd.exe)

gcloud kms keys create KEY_ID ^
  --keyring KEY_RING_ID ^
  --project KMS_PROJECT_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ù doivent résider les données. Cette instance fait référence à la clé de chiffrement que vous avez créée. Pour en savoir plus, consultez la section 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 la section Créer et gérer des instances.)

Avant d'utiliser les données de requête ci-dessous, 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 l'instance ; utilisez l'un des régions où le service est disponible
    Afficher les emplacements
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
    • australia-southeast1
  • INSTANCE_ID : identifiant défini par l'utilisateur pour l'instance
  • KMS_PROJECT_ID: projet Google Cloud ID du projet contenant le trousseau de clés
  • KEY_RING_ID: identifiant défini par l'utilisateur pour 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": "2023-03-14T15:52:55.358979323Z",
    "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 contenant un ID qui peut être utilisé pour récupérer l'état en cours de l'opération asynchrone. Copiez l'élément renvoyé. OPERATION_ID à utiliser lors des prochaines .

Vérifier le résultat

Utilisez la méthode projects.locations.operations.get pour vérifier si l'instance a é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 quelques minutes à plusieurs heures.

Avant d'utiliser les données de requête ci-dessous, 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'un des régions où le service est disponible
    Afficher les lieux
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
    • australia-southeast1
  • 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": "2023-03-14T15:52:55.358979323Z",
    "endTime": "2023-03-14T16:52:55.358979323Z",
    "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 doit avoir accès à 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 trouverez le projet 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'IA AML, contactez l'assistance. Incluez les informations suivantes afin que l'équipe produit AML basée sur l'IA peut configurer de façon optimale votre instance en fonction de vos besoins:

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

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

L'IA AML met à disposition plusieurs types de journaux, y compris des journaux de plate-forme, des journaux d'audit et des journaux d'accès aux données. En savoir plus sur chaque type de journalisation :