如要使用 AML AI,請建立執行個體。AML AI Instance 資源位於所有其他 AML AI 資源的根層級。您可以在 Google Cloud 專案的同一區域中建立多個執行個體。執行個體必須符合下列條件:
- 每個執行個體都專屬於 Google Cloud 區域,確保資料駐留在 Google Cloud 區域內。
- 每個執行個體都需要所有輸入和輸出資料位於相同的Google Cloud 區域和專案。
- 每個執行個體都需要一個相關聯的客戶自行管理的加密金鑰 (CMEK),用於加密 AML AI 建立的任何資料。
- 執行個體的子項資源會沿用父項執行個體的位置和加密設定。
- 每個執行個體都支援自訂存取權管理。
如需可用 Google Cloud 區域的清單,請參閱「AML AI 地理位置」頁面。您可以根據政策,將您營運的一或多個地理區域,對應至一或多個可用的 AML AI 位置。您必須為使用的每個 AML AI 位置建立至少一個 AML AI 執行個體。
您可以在一個 AML AI 執行個體中,同時為商業和零售客戶執行風險評分。不過,如要執行下列任一操作,請建立個別執行個體:
- 限制貴機構中不同成員對不同 AML 資料集的存取權
- 針對不同的 AML 資料集使用不同的 CMEK 金鑰
步驟
如要建立 Google Cloud 專案並啟用 API,請參閱「設定專案和權限」。
請按照下列步驟建立 CMEK 金鑰和 AML AI 執行個體。
建立加密金鑰
如要建立加密金鑰,請先建立金鑰環,然後建立金鑰。詳情請參閱「使用 Cloud KMS 建立加密金鑰」。
建立金鑰環
如要建立金鑰環,請使用 projects.locations.keyRings.create
方法。
REST
使用任何要求資料之前,請先替換以下項目:
KMS_PROJECT_ID
:包含金鑰環的專案 ID Google CloudLOCATION
:金鑰環的位置;請使用其中一個支援的區域。顯示地區us-central1
us-east1
asia-south1
europe-west1
europe-west2
europe-west4
northamerica-northeast1
southamerica-east1
australia-southeast1
KEY_RING_ID
:使用者定義的金鑰環 ID
如要傳送要求,請選擇以下其中一個選項:
curl
執行下列指令:
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
執行下列指令:
$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
您應該會收到如下的 JSON 回應:
{ "name": "projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KEY_RING_ID", "createTime": "2023-03-14T15:52:55.358979323Z" }
gcloud
使用下方的任何指令資料之前,請先替換以下項目:
KMS_PROJECT_ID
:包含金鑰環的專案 ID Google CloudLOCATION
:金鑰環的位置;請使用其中一個支援的區域。顯示地區us-central1
us-east1
asia-south1
europe-west1
europe-west2
europe-west4
northamerica-northeast1
southamerica-east1
australia-southeast1
KEY_RING_ID
:使用者定義的金鑰環 ID
執行下列指令:
Linux、macOS 或 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
$
建立金鑰
如要建立金鑰,請使用 projects.locations.keyRings.cryptoKeys
方法。
REST
使用任何要求資料之前,請先替換以下項目:
KMS_PROJECT_ID
:包含金鑰環的專案 ID Google CloudLOCATION
:金鑰環的位置;請使用其中一個支援的區域顯示地區us-central1
us-east1
asia-south1
europe-west1
europe-west2
europe-west4
northamerica-northeast1
southamerica-east1
australia-southeast1
KEY_RING_ID
:使用者定義的金鑰環 IDKEY_ID
:使用者定義的金鑰 ID
JSON 要求主體:
{ "purpose": "ENCRYPT_DECRYPT" }
如要傳送要求,請選擇以下其中一個選項:
curl
將要求主體儲存在名為 request.json
的檔案中。
在終端機中執行下列指令,在目前目錄中建立或覆寫這個檔案:
cat > request.json << 'EOF' { "purpose": "ENCRYPT_DECRYPT" } EOF
接著,請執行下列指令來傳送 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
將要求主體儲存在名為 request.json
的檔案中。
在終端機中執行下列指令,在目前目錄中建立或覆寫這個檔案:
@' { "purpose": "ENCRYPT_DECRYPT" } '@ | Out-File -FilePath request.json -Encoding utf8
接著,請執行下列指令來傳送 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
您應該會收到如下的 JSON 回應:
{ "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
使用下方的任何指令資料之前,請先替換以下項目:
KMS_PROJECT_ID
:包含金鑰環的專案 ID Google CloudLOCATION
:金鑰環的位置;請使用其中一個支援的區域顯示地區us-central1
us-east1
asia-south1
europe-west1
europe-west2
europe-west4
northamerica-northeast1
southamerica-east1
australia-southeast1
KEY_RING_ID
:使用者定義的金鑰環 IDKEY_ID
:使用者定義的金鑰 ID
執行下列指令:
Linux、macOS 或 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"
$
建立執行個體
為資料應存放的特定區域建立執行個體。這個執行個體會參照您建立的加密金鑰。詳情請參閱「客戶管理的加密金鑰 (CMEK)」。
如要建立執行個體,請使用 projects.locations.instances.create
方法。
(您也可以在「建立及管理執行個體」中查看下列資訊)。
使用任何要求資料之前,請先替換以下項目:
PROJECT_ID
:您在身分與存取權管理設定中列出的 Google Cloud 專案 IDLOCATION
:金鑰環和執行個體的位置;請使用其中一個支援的區域顯示地區us-central1
us-east1
asia-south1
europe-west1
europe-west2
europe-west4
northamerica-northeast1
southamerica-east1
australia-southeast1
INSTANCE_ID
:使用者定義的執行個體 IDKMS_PROJECT_ID
:包含金鑰環的專案 ID Google CloudKEY_RING_ID
:使用者定義的金鑰環 IDKEY_ID
:使用者定義的金鑰 ID
JSON 要求主體:
{ "kmsKey": "projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KEY_RING_ID/cryptoKeys/KEY_ID" }
如要傳送要求,請選擇以下其中一個選項:
curl
將要求主體儲存在名為 request.json
的檔案中。
在終端機中執行下列指令,在目前目錄中建立或覆寫這個檔案:
cat > request.json << 'EOF' { "kmsKey": "projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KEY_RING_ID/cryptoKeys/KEY_ID" } EOF
接著,請執行下列指令來傳送 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
將要求主體儲存在名為 request.json
的檔案中。
在終端機中執行下列指令,在目前目錄中建立或覆寫這個檔案:
@' { "kmsKey": "projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KEY_RING_ID/cryptoKeys/KEY_ID" } '@ | Out-File -FilePath request.json -Encoding utf8
接著,請執行下列指令來傳送 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
您應該會收到如下的 JSON 回應:
{ "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 }
如果成功,回應主體會包含長時間執行的作業,其中包含可用於擷取非同步作業目前狀態的 ID。複製傳回的 OPERATION_ID,以便在下一節中使用。
查看結果
使用 projects.locations.operations.get
方法檢查執行個體是否已建立。如果回應包含 "done": false
,請重複執行指令,直到回應包含 "done": true
為止。這些作業可能需要幾分鐘到幾小時才能完成。
使用任何要求資料之前,請先替換以下項目:
PROJECT_ID
:您在身分與存取權管理設定中列出的 Google Cloud 專案 IDLOCATION
:執行個體的位置;請使用其中一個支援的區域顯示地區us-central1
us-east1
asia-south1
europe-west1
europe-west2
europe-west4
northamerica-northeast1
southamerica-east1
australia-southeast1
OPERATION_ID
:作業的 ID
如要傳送要求,請選擇以下其中一個選項:
curl
執行下列指令:
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
執行下列指令:
$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
您應該會收到如下的 JSON 回應:
{ "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" } }
授予 CMEK 金鑰存取權
API 會在專案中自動建立服務帳戶。服務帳戶必須有權存取 CMEK 金鑰,才能使用該金鑰加密及解密基礎資料。授予金鑰存取權。
請將 PROJECT_NUMBER 替換為與 PROJECT_ID 相關聯的專案編號。您可以在「IAM Settings」(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"
聯絡支援團隊
每次建立 AML AI 執行個體時,請聯絡支援團隊。請提供下列資訊,AML AI 產品團隊才能根據您的需求,以最佳方式設定執行個體:
- 專案 ID
- Google Cloud 區域
- 執行個體 ID
- 這個執行個體中資料集內參與者資料表中的預期參與者人數
- 這個執行個體內資料集「Transaction」資料表中的預期每年交易次數
如要申請額外配額限制,請參閱「配額」一文。
AML AI 提供多種記錄,包括平台記錄、稽核記錄和資料存取記錄。進一步瞭解各種類型的記錄: