在 Google KMS 中通过 Python 客户端创建密钥时,是否可以指定名称?
Is there a way to specify a name when creating a key in Google KMS via the Python client?
在文档 here 中,您无法在 Python 客户端中为密钥指定名称(名称为 "Output only")。但是,使用 CLI 工具,您可以指定密钥的名称(此处为 KEY_NAME)ala gcloud kms keys create KEY_NAME --location LOCATION --keyring KEYRING_NAME --purpose encryption
。此功能在 Python API 中不可用吗?
新密钥的名称进入名为 cryptoKeyId
的 top-level 参数,并且必须提供。创建key时不能提供body中的name
字段;唯一的必填字段是 purpose
,它必须是 ENCRYPT_DECRYPT
;然后,当响应返回时,名称字段将被填充。
这是我刚刚从 API Explorer 发出的请求(在我使用已经创建的密钥环控制的项目中)。您可以看到新键名作为 URL 参数提供,cryptoKeyId
。 (key={YOUR_API_KEY}
是由浏览器 API Explorer UI 编辑的。
要求:
POST https://cloudkms.googleapis.com/v1/projects/cloud-kms-demonstration/locations/global/keyRings/test01/cryptoKeys?cryptoKeyId=testKey01&key={YOUR_API_KEY}
{
"purpose": "ENCRYPT_DECRYPT"
}
响应码:200
响应:
{
"name": "projects/cloud-kms-demonstration/locations/global/keyRings/test01/cryptoKeys/testKey01",
"primary": {
"name": "projects/cloud-kms-demonstration/locations/global/keyRings/test01/cryptoKeys/testKey01/cryptoKeyVersions/1",
"state": "ENABLED",
"createTime": "2018-03-28T23:17:32.485044241Z"
},
"purpose": "ENCRYPT_DECRYPT",
"createTime": "2018-03-28T23:17:32.485044241Z"
}
在文档 here 中,您无法在 Python 客户端中为密钥指定名称(名称为 "Output only")。但是,使用 CLI 工具,您可以指定密钥的名称(此处为 KEY_NAME)ala gcloud kms keys create KEY_NAME --location LOCATION --keyring KEYRING_NAME --purpose encryption
。此功能在 Python API 中不可用吗?
新密钥的名称进入名为 cryptoKeyId
的 top-level 参数,并且必须提供。创建key时不能提供body中的name
字段;唯一的必填字段是 purpose
,它必须是 ENCRYPT_DECRYPT
;然后,当响应返回时,名称字段将被填充。
这是我刚刚从 API Explorer 发出的请求(在我使用已经创建的密钥环控制的项目中)。您可以看到新键名作为 URL 参数提供,cryptoKeyId
。 (key={YOUR_API_KEY}
是由浏览器 API Explorer UI 编辑的。
要求:
POST https://cloudkms.googleapis.com/v1/projects/cloud-kms-demonstration/locations/global/keyRings/test01/cryptoKeys?cryptoKeyId=testKey01&key={YOUR_API_KEY}
{
"purpose": "ENCRYPT_DECRYPT"
}
响应码:200
响应:
{
"name": "projects/cloud-kms-demonstration/locations/global/keyRings/test01/cryptoKeys/testKey01",
"primary": {
"name": "projects/cloud-kms-demonstration/locations/global/keyRings/test01/cryptoKeys/testKey01/cryptoKeyVersions/1",
"state": "ENABLED",
"createTime": "2018-03-28T23:17:32.485044241Z"
},
"purpose": "ENCRYPT_DECRYPT",
"createTime": "2018-03-28T23:17:32.485044241Z"
}