Import Key - Import Key

Importa uma chave criada externamente, armazena-a e devolve parâmetros e atributos chave ao cliente.
A operação de importação de chave pode ser utilizada para importar qualquer tipo de chave para um Key Vault do Azure. Se a chave nomeada já existir, o Azure Key Vault cria uma nova versão da chave. Esta operação requer as chaves/permissão de importação.

PUT {vaultBaseUrl}/keys/{key-name}?api-version=7.4

Parâmetros do URI

Name Em Necessário Tipo Description
key-name
path True

string

Nome da chave importada. O valor fornecido pode ser copiado globalmente para efeitos de execução do serviço. O valor fornecido não deve incluir informações pessoais ou confidenciais.

Regex pattern: ^[0-9a-zA-Z-]+$

vaultBaseUrl
path True

string

O nome do cofre, por exemplo https://myvault.vault.azure.net.

api-version
query True

string

Versão da API de Cliente.

Corpo do Pedido

Name Necessário Tipo Description
key True

JsonWebKey

A chave Web Json

Hsm

boolean

Se pretende importar como uma chave de hardware (HSM) ou chave de software.

attributes

KeyAttributes

Os principais atributos de gestão.

release_policy

KeyReleasePolicy

As regras de política sob as quais a chave pode ser exportada.

tags

object

Metadados específicos da aplicação sob a forma de pares chave-valor.

Respostas

Name Tipo Description
200 OK

KeyBundle

Pacote de chaves importado para o cofre.

Other Status Codes

KeyVaultError

Key Vault resposta de erro que descreve a razão pela qual a operação falhou.

Exemplos

Import key

Sample Request

PUT https://myvault.vault.azure.net//keys/ImportSoftKeyTest?api-version=7.4

{
  "key": {
    "kty": "RSA",
    "n": "nKAwarTrOpzd1hhH4cQNdVTgRF-b0ubPD8ZNVf0UXjb62QuAk3Dn68ESThcF7SoDYRx2QVcfoMC9WCcuQUQDieJF-lvJTSer1TwH72NBovwKlHvrXqEI0a6_uVYY5n-soGt7qFZNbwQLdWWA6PrbqTLIkv6r01dcuhTiQQAn6OWEa0JbFvWfF1kILQIaSBBBaaQ4R7hZs7-VQTHGD7J1xGteof4gw2VTiwNdcE8p5UG5b6S9KQwAeET4yB4KFPwQ3TDdzxJQ89mwYVi_sgAIggN54hTq4oEKYJHBOMtFGIN0_HQ60ZSUnpOi87xNC-8VFqnv4rfTQ7nkK6XMvjMVfw",
    "e": "AQAB",
    "d": "GeT1_D5LAZa7qlC7WZ0DKJnOth8kcPrN0urTEFtWCbmHQWkAad_px_VUpGp0BWDDzENbXbQcu4QCCdf4crve5eXt8dVI86OSah-RpEdBq8OFsETIhg2Tmq8MbYTJexoynRcIC62xAaCmkFMmu931gQSvWnYWTEuOPgmD2oE_F-bP9TFlGRc69a6MSbtcSRyFTsd5KsUr40QS4zf2W4kZCOWejyLuxk88SXgUqcJx86Ulc1Ol1KkTBLadvReAZCyCMwKBlNRGw46BU_iK0vK7rTD9fmEd639Gjti6eLpnyQYpnVe8uGgwVU1fHBkAKyapWoEG6VMhMntcrvgukKLIsQ",
    "dp": "ZGnmWx-Nca71z9a9vvT4g02iv3S-3kSgmhl8JST09YQwK8tfiK7nXnNMtXJi2K4dLKKnLicGtCzB6W3mXdLcP2SUOWDOeStoBt8HEBT4MrI1psCKqnBum78WkHju90rBFj99amkP6UeQy5EASAzgmKQu2nUaUnRV0lYP8LHMCkE",
    "dq": "dtpke0foFs04hPS6XYLA5lc7-1MAHfZKN4CkMAofwDqPmRQzCxpDJUk0gMWGJEdU_Lqfbg22Py44cci0dczH36NW3UU5BL86T2_SPPDOuyX7kDscrIJCdowxQCGJHGRBEozM_uTL46wu6UnUIv7m7cuGgodJyZBcdwpo6ziFink",
    "qi": "Y9KD5GaHkAYmAqpOfAQUMr71QuAAaBb0APzMuUvoEYw39PD3_vJeh9HZ15QmJ8zCX10-nlzUB-bWwvK-rGcJXbK4pArilr5MiaYv7e8h5eW2zs2_itDJ6Oebi-wVbMhg7DvUTBbkCvPhhIedE4UlDQmMYP7RhzVVs7SfmkGs_DQ",
    "p": "v1jeCPnuJQM2PW2690Q9KJk0Ulok8VFGjkcHUHVi3orKdy7y_TCIWM6ZGvgFzI6abinzYbTEPKV4wFdMAwvOWmawXj5YrsoeB44_HXJ0ak_5_iP6XXR8MLGXbd0ZqsxvAZyzMj9vyle7EN2cBod6aenI2QZoRDucPvjPwZsZotk",
    "q": "0Yv-Dj6qnvx_LL70lUnKA6MgHE_bUC4drl5ZNDDsUdUUYfxIK4G1rGU45kHGtp-Qg-Uyf9s52ywLylhcVE3jfbjOgEozlSwKyhqfXkLpMLWHqOKj9fcfYd4PWKPOgpzWsqjA6fJbBUMYo0CU2G9cWCtVodO7sBJVSIZunWrAlBc"
  },
  "tags": {
    "purpose": "unit test"
  }
}

Sample Response

{
  "key": {
    "kid": "https://myvault.vault.azure.net/keys/ImportSoftKeyTest/2eb4a15d74184c6f84159c3ca90f0f4b",
    "kty": "RSA",
    "key_ops": [
      "encrypt",
      "decrypt",
      "sign",
      "verify",
      "wrapKey",
      "unwrapKey"
    ],
    "n": "nKAwarTrOpzd1hhH4cQNdVTgRF-b0ubPD8ZNVf0UXjb62QuAk3Dn68ESThcF7SoDYRx2QVcfoMC9WCcuQUQDieJF-lvJTSer1TwH72NBovwKlHvrXqEI0a6_uVYY5n-soGt7qFZNbwQLdWWA6PrbqTLIkv6r01dcuhTiQQAn6OWEa0JbFvWfF1kILQIaSBBBaaQ4R7hZs7-VQTHGD7J1xGteof4gw2VTiwNdcE8p5UG5b6S9KQwAeET4yB4KFPwQ3TDdzxJQ89mwYVi_sgAIggN54hTq4oEKYJHBOMtFGIN0_HQ60ZSUnpOi87xNC-8VFqnv4rfTQ7nkK6XMvjMVfw",
    "e": "AQAB"
  },
  "attributes": {
    "enabled": true,
    "created": 1493942691,
    "updated": 1493942691,
    "recoveryLevel": "Recoverable+Purgeable"
  },
  "tags": {
    "purpose": "unit test"
  }
}

Definições

Name Description
DeletionRecoveryLevel

Reflete o nível de recuperação de eliminação atualmente em vigor para chaves no cofre atual. Se contiver "Purgeable", a chave pode ser eliminada permanentemente por um utilizador com privilégios; caso contrário, apenas o sistema pode remover a chave, no final do intervalo de retenção.

Error

O erro do servidor do cofre de chaves.

JsonWebKey

A partir de http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18

JsonWebKeyCurveName

Nome da curva elíptica. Para obter valores válidos, veja JsonWebKeyCurveName.

JsonWebKeyType

JsonWebKey Key Type (kty), conforme definido em https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40.

KeyAttributes

Os atributos de uma chave gerida pelo serviço do cofre de chaves.

KeyBundle

Um KeyBundle que consiste numa WebKey mais os respetivos atributos.

KeyImportParameters

Os principais parâmetros de importação.

KeyReleasePolicy

As regras de política sob as quais a chave pode ser exportada.

KeyVaultError

A exceção de erro do cofre de chaves.

DeletionRecoveryLevel

Reflete o nível de recuperação de eliminação atualmente em vigor para chaves no cofre atual. Se contiver "Purgeable", a chave pode ser eliminada permanentemente por um utilizador com privilégios; caso contrário, apenas o sistema pode remover a chave, no final do intervalo de retenção.

Name Tipo Description
CustomizedRecoverable

string

Indica um estado do cofre no qual a eliminação é recuperável sem a possibilidade de eliminação imediata e permanente (ou seja, remover quando 7<= SoftDeleteRetentionInDays < 90). Este nível garante a capacidade de recuperação da entidade eliminada durante o intervalo de retenção e enquanto a subscrição ainda está disponível.

CustomizedRecoverable+ProtectedSubscription

string

Indica um cofre e um estado de subscrição em que a eliminação é recuperável, imediata e permanente (isto é, remoção) não é permitida e na qual a subscrição em si não pode ser cancelada permanentemente quando 7<= SoftDeleteRetentionInDays < 90. Este nível garante a capacidade de recuperação da entidade eliminada durante o intervalo de retenção e também reflete o facto de a própria subscrição não poder ser cancelada.

CustomizedRecoverable+Purgeable

string

Indica um estado do cofre no qual a eliminação é recuperável e que também permite a eliminação imediata e permanente (ou seja, remover quando 7<= SoftDeleteRetentionInDays < 90). Este nível garante a capacidade de recuperação da entidade eliminada durante o intervalo de retenção, a menos que seja pedida uma operação de Remoção ou a subscrição seja cancelada.

Purgeable

string

Indica um estado do cofre em que a eliminação é uma operação irreversível, sem a possibilidade de recuperação. Este nível corresponde a nenhuma proteção disponível numa operação Eliminar; os dados são perdidos irremediavelmente ao aceitar uma operação Eliminar ao nível da entidade ou superior (cofre, grupo de recursos, subscrição, etc.)

Recoverable

string

Indica um estado do cofre no qual a eliminação é recuperável sem a possibilidade de eliminação imediata e permanente (ou seja, remoção). Este nível garante a capacidade de recuperação da entidade eliminada durante o intervalo de retenção (90 dias) e enquanto a subscrição ainda está disponível. O sistema irá eliminá-lo permanentemente após 90 dias, se não for recuperado

Recoverable+ProtectedSubscription

string

Indica um cofre e um estado de subscrição no qual a eliminação é recuperável dentro do intervalo de retenção (90 dias), a eliminação imediata e permanente (ou seja, remoção) não é permitida e na qual a subscrição em si não pode ser cancelada permanentemente. O sistema irá eliminá-lo permanentemente após 90 dias, se não for recuperado

Recoverable+Purgeable

string

Indica um estado do cofre no qual a eliminação é recuperável e que também permite a eliminação imediata e permanente (ou seja, remoção). Este nível garante a capacidade de recuperação da entidade eliminada durante o intervalo de retenção (90 dias), a menos que seja pedida uma operação de Remoção ou a subscrição seja cancelada. O sistema irá eliminá-lo permanentemente após 90 dias, se não for recuperado

Error

O erro do servidor do cofre de chaves.

Name Tipo Description
code

string

O código de erro.

innererror

Error

O erro do servidor do cofre de chaves.

message

string

A mensagem de erro.

JsonWebKey

A partir de http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18

Name Tipo Description
crv

JsonWebKeyCurveName

Nome da curva elíptica. Para obter valores válidos, veja JsonWebKeyCurveName.

d

string

Expoente privado RSA ou o componente D de uma chave privada EC.

dp

string

Parâmetro de chave privada RSA.

dq

string

Parâmetro de chave privada RSA.

e

string

Expoente público RSA.

k

string

Chave simétrica.

key_hsm

string

Chave Protegida, utilizada com "Bring Your Own Key".

key_ops

string[]

Operações principais suportadas.

kid

string

Identificador de chave.

kty

JsonWebKeyType

JsonWebKey Key Type (kty), conforme definido em https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40.

n

string

Módulo RSA.

p

string

Primo secreto da RSA.

q

string

RSA secret prime, with p < q.

qi

string

Parâmetro de chave privada RSA.

x

string

Componente X de uma chave pública EC.

y

string

Componente Y de uma chave pública EC.

JsonWebKeyCurveName

Nome da curva elíptica. Para obter valores válidos, veja JsonWebKeyCurveName.

Name Tipo Description
P-256

string

A curva elíptica NIST P-256, também conhecida como curva SECG SECP256R1.

P-256K

string

O SECG SECP256K1 curva elíptica.

P-384

string

A curva elíptica NIST P-384, também conhecida como curva SECG SECP384R1.

P-521

string

A curva elíptica NIST P-521, também conhecida como curva SECG SECP521R1.

JsonWebKeyType

JsonWebKey Key Type (kty), conforme definido em https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40.

Name Tipo Description
EC

string

Curva elíptica.

EC-HSM

string

Curva Elíptica com uma chave privada armazenada no HSM.

RSA

string

RSA (https://tools.ietf.org/html/rfc3447)

RSA-HSM

string

RSA com uma chave privada armazenada no HSM.

oct

string

Sequência octeto (utilizada para representar chaves simétricas)

oct-HSM

string

Sequência octeto (utilizada para representar chaves simétricas) que é armazenada no HSM.

KeyAttributes

Os atributos de uma chave gerida pelo serviço do cofre de chaves.

Name Tipo Description
created

integer

Hora de criação em UTC.

enabled

boolean

Determina se o objeto está ativado.

exp

integer

Data de expiração em UTC.

exportable

boolean

Indica se a chave privada pode ser exportada. A política de versão tem de ser fornecida ao criar a primeira versão de uma chave exportável.

nbf

integer

Não antes da data em UTC.

recoverableDays

integer

softDelete data retention days. O valor deve ser >=7 e <=90 quando softDelete ativado, caso contrário 0.

recoveryLevel

DeletionRecoveryLevel

Reflete o nível de recuperação de eliminação atualmente em vigor para chaves no cofre atual. Se contiver "Purgeable", a chave pode ser eliminada permanentemente por um utilizador com privilégios; caso contrário, apenas o sistema pode remover a chave, no final do intervalo de retenção.

updated

integer

Hora da última atualização em UTC.

KeyBundle

Um KeyBundle que consiste numa WebKey mais os respetivos atributos.

Name Tipo Description
attributes

KeyAttributes

Os principais atributos de gestão.

key

JsonWebKey

A chave Web Json.

managed

boolean

Verdadeiro se a duração da chave for gerida pelo cofre de chaves. Se esta for uma chave que suporta um certificado, a opção gerida será verdadeira.

release_policy

KeyReleasePolicy

As regras de política sob as quais a chave pode ser exportada.

tags

object

Metadados específicos da aplicação sob a forma de pares chave-valor.

KeyImportParameters

Os principais parâmetros de importação.

Name Tipo Description
Hsm

boolean

Se pretende importar como uma chave de hardware (HSM) ou chave de software.

attributes

KeyAttributes

Os principais atributos de gestão.

key

JsonWebKey

A chave Web Json

release_policy

KeyReleasePolicy

As regras de política sob as quais a chave pode ser exportada.

tags

object

Metadados específicos da aplicação sob a forma de pares chave-valor.

KeyReleasePolicy

As regras de política sob as quais a chave pode ser exportada.

Name Tipo Valor Predefinido Description
contentType

string

application/json; charset=utf-8

Tipo de conteúdo e versão da política de lançamento de chaves

data

string

Codificar blobs com as regras de política sob as quais a chave pode ser libertada. O blob tem de ter codificação de URL base64.

immutable

boolean

Define o estado de mutabilidade da política. Depois de marcado como imutável, este sinalizador não pode ser reposto e a política não pode ser alterada em nenhuma circunstância.

KeyVaultError

A exceção de erro do cofre de chaves.

Name Tipo Description
error

Error

O erro do servidor do cofre de chaves.