0

在此处的文档中,您不能为 Python 客户端中的键指定名称(名称为“仅输出”)。但是,使用 CLI 工具,您可以指定密钥的名称(此处为 KEY_NAME)ala gcloud kms keys create KEY_NAME --location LOCATION --keyring KEYRING_NAME --purpose encryption。这个功能在 Python API 中不可用吗?

4

1 回答 1

2

新密钥的名称进入名为 的顶级参数cryptoKeyId,并且必须提供。name创建key时不能提供body中的字段;唯一的必填字段是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"
}
于 2018-03-28T23:18:44.953 回答