Criar uma instância de IA antilavagem de dinheiro

Para usar a IA antilavagem de dinheiro, crie uma instância. O recurso instância da IA antilavagem de dinheiro fica na raiz de todos os outros recursos dessa IA. Várias instâncias podem ser criadas na mesma região em um projeto do Google Cloud. As instâncias aderem ao seguinte:

  • Cada instância é específica para uma região do Google Cloud, garantindo a residência dos dados dentro da região do Google Cloud.
  • Cada instância requer que todos os dados de entrada e saída existam na mesma região e projeto do Google Cloud.
  • Cada instância requer uma única chave de criptografia gerenciada pelo cliente (CMEK) associada, que é usada para criptografar todos os dados criados pela IA antilavagem de dinheiro.
  • Os recursos filhos de uma instância herdam as configurações de localização e criptografia da instância pai.
  • Cada instância é compatível com o gerenciamento de acesso personalizado.

A lista de regiões disponíveis do Google Cloud pode ser encontrada na página Locais da IA antilavagem de dinheiro. É possível mapear uma ou várias regiões geográficas em que você opera para um ou vários locais disponíveis da IA antilavagem de dinheiro, com base nas suas políticas. É necessário criar pelo menos uma instância da IA antilavagem de dinheiro por local da IA antilavagem de dinheiro que você usar.

É possível executar a pontuação de risco para clientes comerciais e de varejo em uma instância da IA antilavagem de dinheiro. No entanto, crie uma instância separada para realizar uma das seguintes ações:

  • Restringir o acesso a diferentes conjuntos de dados de antilavagem de dinheiro para membros distintos da sua organização.
  • Use diferentes chaves CMEK para diferentes conjuntos de dados antilavagem de dinheiro

Etapas

Para criar um projeto do Google Cloud e ativar a API, consulte Configurar um projeto e permissões.

Siga estas etapas para criar uma chave CMEK e uma instância de IA antilavagem de dinheiro.

Criar uma chave de criptografia

Para criar uma chave de criptografia, primeiro crie um keyring e depois a própria chave. Para mais informações, consulte Criar chaves de criptografia com o Cloud KMS.

Crie um keyring

Para criar um keyring, use o método projects.locations.keyRings.create.

REST

Antes de usar os dados da solicitação, faça as substituições a seguir:

  • KMS_PROJECT_ID: o ID do projeto do Google Cloud que contém o keyring
  • LOCATION: o local do keyring. Use uma das regiões com suporte:
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
  • KEY_RING_ID: um identificador definido pelo usuário para o keyring

Para enviar a solicitação, escolha uma destas opções:

curl

execute o seguinte 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

execute o seguinte 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

Você receberá uma resposta JSON semelhante a esta:

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

gcloud

Antes de usar os dados do comando abaixo, faça estas substituições:

  • LOCATION: o local do keyring. Use uma das regiões com suporte:
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
  • KEY_RING_ID: um identificador definido pelo usuário para o keyring

Execute o seguinte comando:

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
Você vai receber uma resposta vazia:
$

Crie uma chave

Para criar uma chave, use o método projects.locations.keyRings.cryptoKeys.

REST

Antes de usar os dados da solicitação, faça as substituições a seguir:

  • KMS_PROJECT_ID: o ID do projeto do Google Cloud que contém o keyring
  • LOCATION: o local do keyring. Use uma das regiões com suporte:
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
  • KEY_RING_ID: o identificador definido pelo usuário para o keyring
  • KEY_ID: um identificador definido pelo usuário para a chave.

Solicitar corpo JSON:

{
  "purpose": "ENCRYPT_DECRYPT"
}

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo chamado request.json. Execute o comando a seguir no terminal para criar ou substituir esse arquivo no diretório atual:

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

Depois execute o comando a seguir para enviar a solicitação 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

Salve o corpo da solicitação em um arquivo chamado request.json. Execute o comando a seguir no terminal para criar ou substituir esse arquivo no diretório atual:

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

Depois execute o comando a seguir para enviar a solicitação 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

Você receberá uma resposta JSON semelhante a esta:

{
  "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 os dados do comando abaixo, faça estas substituições:

  • LOCATION: o local do keyring. Use uma das regiões com suporte:
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
  • KEY_RING_ID: o identificador definido pelo usuário para o keyring
  • KEY_ID: um identificador definido pelo usuário para a chave.

Execute o seguinte comando:

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"
Você vai receber uma resposta vazia:
$

Criar uma instância

Crie uma instância para a região específica em que os dados devem residir. Essa instância faz referência à chave de criptografia que você criou. Para mais informações, consulte Chaves de criptografia gerenciadas pelo cliente (CMEK).

Para criar uma instância, use o método projects.locations.instances.create.

As informações a seguir também estão disponíveis em Criar e gerenciar instâncias.

Antes de usar os dados da solicitação, faça as substituições a seguir:

  • PROJECT_ID: o ID do projeto do Google Cloud listado nas Configurações do IAM
  • LOCATION: o local do keyring e da instância. Use uma das regiões com suporte:
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
  • INSTANCE_ID: um identificador definido pelo usuário para a instância.
  • KMS_PROJECT_ID: o ID do projeto do Google Cloud que contém o keyring
  • KEY_RING_ID: o identificador definido pelo usuário para o keyring
  • KEY_ID: o identificador definido pelo usuário para a chave

Solicitar corpo JSON:

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

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo chamado request.json. Execute o comando a seguir no terminal para criar ou substituir esse arquivo no diretório atual:

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

Depois execute o comando a seguir para enviar a solicitação 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

Salve o corpo da solicitação em um arquivo chamado request.json. Execute o comando a seguir no terminal para criar ou substituir esse arquivo no diretório atual:

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

Depois execute o comando a seguir para enviar a solicitação 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

Você receberá uma resposta JSON semelhante a esta:

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

Se for bem-sucedido, o corpo da resposta incluirá uma operação de longa duração com um ID que pode ser usado para recuperar o status contínuo da operação assíncrona. Copie o OPERATION_ID retornado para usar na próxima seção.

Conferir o resultado

Use o método projects.locations.operations.get para verificar se a instância foi criada. Se a resposta contiver "done": false, repita o comando até que a resposta contenha "done": true. Essas operações podem levar de alguns minutos a várias horas para serem concluídas.

Antes de usar os dados da solicitação, faça as substituições a seguir:

  • PROJECT_ID: o ID do projeto do Google Cloud listado nas Configurações do IAM
  • LOCATION: o local da instância. Use uma das regiões compatíveis:
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
  • OPERATION_ID: o identificador da operação.

Para enviar a solicitação, escolha uma destas opções:

curl

execute o seguinte 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

execute o seguinte 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

Você receberá uma resposta JSON semelhante a esta:

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

Conceder acesso à chave CMEK

A API cria automaticamente uma conta de serviço no projeto. A conta de serviço precisa acessar a chave CMEK para que possa usá-la para criptografar e descriptografar os dados subjacentes. Conceda acesso à chave.

Para PROJECT_NUMBER, use o número do projeto associado a PROJECT_ID. É possível encontrar o número do projeto na página Configurações do 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"

Entrar em contato com o suporte

Sempre que você criar uma instância de IA antilavagem de dinheiro, entre em contato com o suporte. Inclua as informações a seguir para que a equipe de produto de IA antilavagem de dinheiro possa configurar sua instância da maneira ideal com base nas suas necessidades:

  • ID do projeto
  • Região do Google Cloud
  • ID da instância
  • Número esperado de partes na tabela Party nos conjuntos de dados dessa instância
  • Número esperado de transações por ano na tabela Transação nos conjuntos de dados desta instância

Para solicitar limites de cota adicionais, consulte Cotas.

A IA antilavagem de dinheiro disponibiliza vários tipos de registros, como registros de plataforma, de auditoria e de acesso a dados. Saiba mais sobre cada tipo de geração de registros: