Cria um segredo e armazena sua versão inicial.
Descrição da operação
-
Para obter informações sobre a política de acesso necessária para que um usuário do Resource Access Management (RAM) ou uma função do RAM chame esta operação, consulte Resource Access Management.
-
Especifique o nome do segredo, o valor do segredo para a versão inicial e o número da versão. A versão inicial é marcada com o rótulo de estágio ACSCurrent.
-
O Key Management Service (KMS) usa a chave que você especifica para criptografar o valor do segredo. A chave e o segredo devem estar na mesma instância do KMS. A chave deve ser uma chave simétrica.
NotaO KMS criptografa o valor do segredo de cada versão. Metadados como o nome do segredo, o número da versão e os rótulos de estágio da versão não são criptografados.
-
Antes de criptografar o valor do segredo, você deve ter a permissão
kms:GenerateDataKeyna chave.
Este tópico fornece um exemplo de como criar um segredo do RDS. O segredo é nomeado como mydbconninfo. O VersionId da versão inicial é v1. O SecretData é {"Accounts":[{"AccountName":"user1","AccountPassword":"****"}]}.
Experimente agora
Testar
Autorização RAM
Parâmetros da solicitação
|
Parâmetro |
Tipo |
Obrigatório |
Descrição |
Exemplo |
| SecretName |
string |
Sim |
O nome do segredo. O nome deve ser exclusivo na mesma região. O nome pode ter até 192 caracteres e pode conter letras, dígitos, sublinhados (_), barras (/), sinais de mais (+), sinais de igual (=), pontos (.), hifens (-) e arrobas (@). Os seguintes limites se aplicam aos nomes de segredos para diferentes tipos de segredos:
|
mydbconninfo |
| VersionId |
string |
Sim |
O número da versão inicial. O número da versão deve ser exclusivo dentro do segredo. O número da versão pode ter até 64 caracteres. |
v1 |
| EncryptionKeyId |
string |
Não |
O ID da chave usada para criptografar o valor do segredo. Nota
A chave e o segredo devem estar na mesma instância do KMS. A chave deve ser uma chave simétrica. |
key-gzz63ff0db5hg3qje**** |
| SecretData |
string |
Sim |
O valor do segredo. O valor pode ter até 30.720 bytes (30 KB) de comprimento. O KMS criptografa o valor do segredo com a chave especificada e armazena o valor criptografado na versão inicial.
|
{"Accounts":[{"AccountName":"user1","AccountPassword":"****"}]} |
| SecretDataType |
string |
Não |
O tipo do valor do segredo. Valores válidos:
Nota
Se SecretType estiver definido como Rds, Redis, PolarDB, RAMCredentials ou ECS, SecretDataType deve ser definido como text. |
text |
| Description |
string |
Não |
A descrição do segredo. |
mydbinfo |
| Tags |
string |
Não |
As tags do segredo. Cada tag consiste em um par chave-valor. Uma tag consiste em uma chave de tag e um valor de tag. A chave de tag e o valor de tag podem ter até 128 caracteres e podem conter letras, dígitos, barras (/), barras invertidas (\), sublinhados (_), hifens (-), pontos (.), sinais de mais (+), sinais de igual (=), dois-pontos (:) e arrobas (@).
|
[{\"TagKey\":\"key1\",\"TagValue\":\"val1\"},{\"TagKey\":\"key2\",\"TagValue\":\"val2\"}] |
| SecretType |
string |
Não |
O tipo do segredo. Valores válidos:
|
Rds |
| ExtendedConfig |
object |
Não |
A configuração estendida do segredo. Este parâmetro especifica as propriedades do segredo de um tipo específico. O valor pode ter até 1.024 caracteres.
Nota
Se SecretType estiver definido como Rds, Redis, PolarDB, RAMCredentials ou ECS, você deve configurar este parâmetro. |
{"SecretSubType":"SingleUser", "DBInstanceId":"rm-bp1b3dd3a506e****" ,"CustomData":{"Key1": "v1", "fds":"fdsf"}} |
| EnableAutomaticRotation |
boolean |
Não |
Especifica se a rotação automática deve ser ativada. Valores válidos:
Nota
Este parâmetro é válido apenas se SecretType estiver definido como Rds, PolarDB, Redis, RAMCredentials ou ECS. Se SecretType estiver definido como Generic, a rotação automática não é suportada. Você pode chamar a operação PutSecretValue para rotacionar o segredo manualmente. |
true |
| RotationInterval |
string |
Não |
O intervalo para rotação automática. O valor está no intervalo de 6 horas a 8.760 horas (365 dias). Nota
Você deve especificar este parâmetro se definir EnableAutomaticRotation como true. Você não precisa especificar este parâmetro se definir EnableAutomaticRotation como false. |
30d |
| DKMSInstanceId |
string |
Não |
O ID da instância do KMS. |
kst-bjj62d8f5e0sgtx8h**** |
| Policy |
string |
Não |
O conteúdo da política de segredo. O valor está no formato JSON. O valor pode ter até 32.768 bytes de comprimento. Para obter mais informações sobre políticas de segredo, consulte Visão geral das políticas de segredo. Se você não especificar este parâmetro, a política de segredo padrão será usada. Uma política de segredo contém as seguintes partes:
O seguinte é o formato de uma política de segredo:
Detalhes sobre uma instrução:
Nota
Depois de conceder permissões a um usuário do RAM ou função do RAM de outra conta da Alibaba Cloud, você deve usar a conta da Alibaba Cloud à qual o usuário do RAM ou função do RAM pertence para conceder ao usuário do RAM ou função do RAM as permissões para usar o segredo no console do RAM. Em seguida, o usuário do RAM ou função do RAM pode usar o segredo. Para obter mais informações, consulte Políticas personalizadas para o KMS, Conceder permissões a um usuário do RAM e Conceder permissões a uma função do RAM. |
{"Version":"1","Statement": [{"Sid":"kms default secret policy","Effect":"Allow","Principal":{"RAM": ["acs:ram::119285303511****:*"]},"Action":["kms:*"],"Resource": ["*"] }] } |
Para obter informações sobre parâmetros de solicitação comuns, consulte Parâmetros comuns.
Elementos de resposta
|
Elemento |
Tipo |
Descrição |
Exemplo |
|
object |
|||
| RequestId |
string |
O ID da solicitação, que é um identificador exclusivo gerado pela Alibaba Cloud. Você pode usar este ID para solucionar problemas. |
3bf02f7a-015b-4f93-be0f-cc043fda2dd3 |
| AutomaticRotation |
string |
Indica se a rotação automática está ativada. Valores válidos:
Nota
Este parâmetro é retornado se SecretType estiver definido como Rds, Redis, PolarDB, RAMCredentials ou ECS. |
Enabled |
| SecretName |
string |
O nome do segredo. |
mydbconninfo |
| VersionId |
string |
O número da versão do segredo. |
v1 |
| NextRotationDate |
string |
A hora em que o segredo será rotacionado em seguida. Nota
Este parâmetro é retornado se a rotação automática estiver ativada. |
2023-07-06T18:22:03Z |
| SecretType |
string |
O tipo do segredo. Valores válidos:
|
Rds |
| RotationInterval |
string |
O intervalo para rotação automática. Nota
Este parâmetro é retornado se a rotação automática estiver ativada. |
604800s |
| Arn |
string |
O Alibaba Cloud Resource Name (ARN) do segredo. |
acs:kms:cn-hangzhou:154035569884****:secret/mydbconninfo |
| ExtendedConfig |
string |
A configuração estendida do segredo. Nota
Este parâmetro é retornado se SecretType estiver definido como Rds, Redis, PolarDB, RAMCredentials ou ECS. |
{\"SecretSubType\":\"SingleUser\", \"DBInstanceId\":\"rm-uf667446pc955****\", \"CustomData\":"Key1": "v1", "fds":"fdsf"} } |
| DKMSInstanceId |
string |
O ID da instância do KMS. |
kst-bjj62d8f5e0sgtx8h**** |
Exemplos
Resposta de sucesso
JSON formato
{
"RequestId": "3bf02f7a-015b-4f93-be0f-cc043fda2dd3",
"AutomaticRotation": "Enabled",
"SecretName": "mydbconninfo",
"VersionId": "v1",
"NextRotationDate": "2023-07-06T18:22:03Z",
"SecretType": "Rds",
"RotationInterval": "604800s",
"Arn": "acs:kms:cn-hangzhou:154035569884****:secret/mydbconninfo",
"ExtendedConfig": "{\\\"SecretSubType\\\":\\\"SingleUser\\\", \\\"DBInstanceId\\\":\\\"rm-uf667446pc955****\\\", \\\"CustomData\\\":\"Key1\": \"v1\", \"fds\":\"fdsf\"} }",
"DKMSInstanceId": "kst-bjj62d8f5e0sgtx8h****"
}
Códigos de erro
|
Código de status HTTP |
Código de erro |
Mensagem de erro |
Descrição |
|---|---|---|---|
| 400 | UnsupportedOperation | This action is not supported. | The operation is not supported. |
| 400 | Rejected.LimitExceeded | The request was rejected because user create resource limit was exceeded | The request is rejected because the number of created resources reaches the upper limit. |
| 400 | InvalidParameter | The specified parameter is not valid. | An invalid value is specified for the parameter. |
| 400 | Rejected.ShareQuotaExceedLimit | Instance Share Quota Exceed Limit. | The instance share quota exceeds the limit. |
| 500 | InternalFailure | Internal Failure | An internal error occurred. |
| 403 | Forbidden.DKMSInstanceNotFound | The specified DKMS Instance is not found. | Your dedicated KMS instance is not found. |
| 404 | Forbidden.ResourceNotFound | The resource is not found. | The resource does not exist. |
| 409 | Rejected.ResourceExist | The resource already exists. | The resource already exists. |
| 409 | Rejected.ResourceInDeleteWindow | The secret is planned to be deleted. | The secret is to be deleted. |
Consulte Códigos de Erro para uma lista completa.
Notas de versão
Consulte Notas de Versão para uma lista completa.