Freigeben über


Create Key - Create Key

Erstellt einen neuen Schlüssel, speichert ihn und gibt dann Schlüsselparameter und Attribute an den Client zurück.
Der Erstellungsschlüsselvorgang kann zum Erstellen eines beliebigen Schlüsseltyps in Azure Key Vault verwendet werden. Wenn der benannte Schlüssel bereits vorhanden ist, erstellt Azure Key Vault eine neue Version des Schlüssels. Sie erfordert die Schlüssel/Erstellungsberechtigung.

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

URI-Parameter

Name In Erforderlich Typ Beschreibung
key-name
path True

string

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

Der Name für den neuen Schlüssel. Das System generiert den Versionsnamen für den neuen Schlüssel. Der von Ihnen bereitgestellte Wert kann global kopiert werden, um den Dienst auszuführen. Der angegebene Wert sollte keine persönlich identifizierbaren oder vertraulichen Informationen enthalten.

vaultBaseUrl
path True

string

Der Tresorname, z. B. https://myvault.vault.azure.net.

api-version
query True

string

Client-API-Version.

Anforderungstext

Name Erforderlich Typ Beschreibung
kty True

JsonWebKeyType

minLength: 1

Der Typ des zu erstellenden Schlüssels. Gültige Werte finden Sie unter JsonWebKeyType.

attributes

KeyAttributes

Die Attribute eines Schlüssels, der vom Schlüsseltresordienst verwaltet wird.

crv

JsonWebKeyCurveName

Elliptische Kurvenname. Gültige Werte finden Sie unter JsonWebKeyCurveName.

key_ops

JsonWebKeyOperation[]

JSON-Webschlüsselvorgänge. Weitere Informationen finden Sie unter JsonWebKeyOperation.

key_size

integer (int32)

Die Schlüsselgröße in Bits. Beispiel: 2048, 3072 oder 4096 für RSA.

public_exponent

integer (int32)

Der öffentliche Exponent für einen RSA-Schlüssel.

release_policy

KeyReleasePolicy

Die Richtlinienregeln, unter denen der Schlüssel exportiert werden kann.

tags

object

Anwendungsspezifische Metadaten in Form von Schlüsselwertpaaren.

Antworten

Name Typ Beschreibung
200 OK

KeyBundle

Ein Schlüsselbundle, das das Ergebnis der Anforderung zum Erstellen von Schlüsseln enthält.

Other Status Codes

KeyVaultError

Key Vault-Fehlerantwort, die beschreibt, warum der Vorgang fehlgeschlagen ist.

Beispiele

Create key

Beispielanforderung

POST https://myvault.vault.azure.net//keys/CreateSoftKeyTest/create?api-version=7.4

{
  "kty": "RSA",
  "key_size": 2048,
  "key_ops": [
    "encrypt",
    "decrypt",
    "sign",
    "verify",
    "wrapKey",
    "unwrapKey"
  ],
  "attributes": {},
  "tags": {
    "purpose": "unit test",
    "test name ": "CreateGetDeleteKeyTest"
  }
}

Beispiel für eine Antwort

{
  "key": {
    "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71",
    "kty": "RSA",
    "key_ops": [
      "encrypt",
      "decrypt",
      "sign",
      "verify",
      "wrapKey",
      "unwrapKey"
    ],
    "n": "2HJAE5fU3Cw2Rt9hEuq-F6XjINKGa-zskfISVqopqUy60GOs2eyhxbWbJBeUXNor_gf-tXtNeuqeBgitLeVa640UDvnEjYTKWjCniTxZRaU7ewY8BfTSk-7KxoDdLsPSpX_MX4rwlAx-_1UGk5t4sQgTbm9T6Fm2oqFd37dsz5-Gj27UP2GTAShfJPFD7MqU_zIgOI0pfqsbNL5xTQVM29K6rX4jSPtylZV3uWJtkoQIQnrIHhk1d0SC0KwlBV3V7R_LVYjiXLyIXsFzSNYgQ68ZjAwt8iL7I8Osa-ehQLM13DVvLASaf7Jnu3sC3CWl3Gyirgded6cfMmswJzY87w",
    "e": "AQAB"
  },
  "attributes": {
    "enabled": true,
    "created": 1493942451,
    "updated": 1493942451,
    "recoveryLevel": "Recoverable+Purgeable"
  },
  "tags": {
    "purpose": "unit test",
    "test name ": "CreateGetDeleteKeyTest"
  }
}

Definitionen

Name Beschreibung
DeletionRecoveryLevel

Gibt die Löschwiederherstellungsebene wieder, die derzeit für Schlüssel im aktuellen Tresor wirksam ist. Wenn er "Löschbar" enthält, kann der Schlüssel von einem privilegierten Benutzer endgültig gelöscht werden. andernfalls kann nur das System den Schlüssel am Ende des Aufbewahrungsintervalls löschen.

Error

Der Schlüsseltresorserverfehler.

JsonWebKey

Ab http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18

JsonWebKeyCurveName

Elliptische Kurvenname. Gültige Werte finden Sie unter JsonWebKeyCurveName.

JsonWebKeyOperation
JsonWebKeyType

JsonWebKey Key Type (kty), wie in https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40definiert.

KeyAttributes

Die Attribute eines Schlüssels, der vom Schlüsseltresordienst verwaltet wird.

KeyBundle

Ein KeyBundle-Element, das aus einem WebKey und seinen Attributen besteht.

KeyCreateParameters

Der Schlüssel erstellt Parameter.

KeyReleasePolicy

Die Richtlinienregeln, unter denen der Schlüssel exportiert werden kann.

KeyVaultError

Ausnahme des Schlüsseltresorfehlers.

DeletionRecoveryLevel

Gibt die Löschwiederherstellungsebene wieder, die derzeit für Schlüssel im aktuellen Tresor wirksam ist. Wenn er "Löschbar" enthält, kann der Schlüssel von einem privilegierten Benutzer endgültig gelöscht werden. andernfalls kann nur das System den Schlüssel am Ende des Aufbewahrungsintervalls löschen.

Wert Beschreibung
CustomizedRecoverable

Gibt einen Tresorstatus an, in dem die Löschung ohne sofortige und dauerhafte Löschung wiederhergestellt werden kann (d. h. löschen, wenn 7<= SoftDeleteRetentionInDays < 90). Diese Stufe garantiert die Wiederherstellbarkeit der gelöschten Entität während des Aufbewahrungsintervalls und während der Verfügbarkeit des Abonnements.

CustomizedRecoverable+ProtectedSubscription

Gibt einen Tresor- und Abonnementstatus an, in dem das Löschen wiederherstellbar, sofortige und dauerhafte Löschung (d. h. Löschvorgang) nicht zulässig ist und in dem das Abonnement selbst nicht dauerhaft gekündigt werden kann, wenn 7<= SoftDeleteRetentionInDays < 90. Diese Stufe garantiert die Wiederherstellbarkeit der gelöschten Entität während des Aufbewahrungsintervalls und spiegelt auch die Tatsache wider, dass das Abonnement selbst nicht storniert werden kann.

CustomizedRecoverable+Purgeable

Gibt einen Tresorstatus an, in dem die Löschung wiederhergestellt werden kann und die auch sofortige und dauerhafte Löschung ermöglicht (d. h. Löschvorgang bei 7<= SoftDeleteRetentionInDays < 90). Diese Stufe garantiert die Wiederherstellbarkeit der gelöschten Entität während des Aufbewahrungsintervalls, es sei denn, ein Löschvorgang wird angefordert, oder das Abonnement wird gekündigt.

Purgeable

Gibt einen Tresorstatus an, in dem das Löschen ein unumkehrbarer Vorgang ist, ohne dass die Wiederherstellung möglich ist. Diese Stufe entspricht keinem Schutz vor einem Löschvorgang; die Daten werden unwiderruflich verloren, wenn sie einen Löschvorgang auf Entitätsebene oder höher akzeptieren (Tresor, Ressourcengruppe, Abonnement usw.)

Recoverable

Gibt einen Tresorstatus an, in dem die Löschung ohne die Möglichkeit zum sofortigen und dauerhaften Löschen (d. h. Löschen) wiederhergestellt werden kann. Diese Stufe garantiert die Wiederherstellbarkeit der gelöschten Entität während des Aufbewahrungsintervalls (90 Tage) und während das Abonnement noch verfügbar ist. Das System löscht es nach 90 Tagen dauerhaft, falls nicht wiederhergestellt.

Recoverable+ProtectedSubscription

Gibt einen Tresor- und Abonnementstatus an, in dem die Löschung innerhalb des Aufbewahrungsintervalls (90 Tage), sofortige und dauerhafte Löschung (d. h. Löschvorgang) nicht zulässig ist und in dem das Abonnement selbst nicht dauerhaft storniert werden kann. Das System löscht es nach 90 Tagen dauerhaft, falls nicht wiederhergestellt.

Recoverable+Purgeable

Gibt einen Tresorstatus an, in dem die Löschung wiederhergestellt werden kann und die auch sofortige und dauerhafte Löschung (d. h. Löschvorgang) zulässt. Diese Stufe garantiert die Wiederherstellbarkeit der gelöschten Entität während des Aufbewahrungsintervalls (90 Tage), es sei denn, ein Bereinigungsvorgang wird angefordert, oder das Abonnement wird gekündigt. Das System löscht es nach 90 Tagen dauerhaft, falls nicht wiederhergestellt.

Error

Der Schlüsseltresorserverfehler.

Name Typ Beschreibung
code

string

Der Fehlercode.

innererror

Error

Der Schlüsseltresorserverfehler.

message

string

Die Fehlermeldung.

JsonWebKey

Ab http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18

Name Typ Beschreibung
crv

JsonWebKeyCurveName

Elliptische Kurvenname. Gültige Werte finden Sie unter JsonWebKeyCurveName.

d

string (base64url)

RSA private Exponent oder die D-Komponente eines privaten EC-Schlüssels.

dp

string (base64url)

RSA Private Key-Parameter.

dq

string (base64url)

RSA Private Key-Parameter.

e

string (base64url)

RSA-Exponent für die Öffentlichkeit.

k

string (base64url)

Symmetrischer Schlüssel.

key_hsm

string (base64url)

Geschützter Schlüssel, der mit "Bring Your Own Key" verwendet wird.

key_ops

string[]

Unterstützte Schlüsselvorgänge.

kid

string

Schlüsselbezeichner.

kty

JsonWebKeyType

JsonWebKey Key Type (kty), wie in https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40definiert.

n

string (base64url)

RSA-Modulus.

p

string (base64url)

RSA Secret Prime.

q

string (base64url)

RSA Secret Prime mit p < q.

qi

string (base64url)

RSA Private Key-Parameter.

x

string (base64url)

X-Komponente eines öffentlichen EC-Schlüssels.

y

string (base64url)

Y-Komponente eines öffentlichen EC-Schlüssels.

JsonWebKeyCurveName

Elliptische Kurvenname. Gültige Werte finden Sie unter JsonWebKeyCurveName.

Wert Beschreibung
P-256

Die NIST P-256 elliptische Kurve, AKA SECG-Kurve SECP256R1.

P-256K

Die SECG-SECP256K1 elliptische Kurve.

P-384

Die NIST P-384 elliptische Kurve, AKA SECG-Kurve SECP384R1.

P-521

Die NIST P-521 elliptische Kurve, AKA SECG-Kurve SECP521R1.

JsonWebKeyOperation

Wert Beschreibung
decrypt
encrypt
export
import
sign
unwrapKey
verify
wrapKey

JsonWebKeyType

JsonWebKey Key Type (kty), wie in https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40definiert.

Wert Beschreibung
EC

Elliptische Kurve.

EC-HSM

Elliptische Kurve mit einem privaten Schlüssel, der im HSM gespeichert ist.

RSA

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

RSA-HSM

RSA mit einem privaten Schlüssel, der im HSM gespeichert ist.

oct

Oktettsequenz (wird verwendet, um symmetrische Schlüssel darzustellen)

oct-HSM

Oktettsequenz (wird verwendet, um symmetrische Schlüssel darzustellen), die das HSM gespeichert wird.

KeyAttributes

Die Attribute eines Schlüssels, der vom Schlüsseltresordienst verwaltet wird.

Name Typ Beschreibung
created

integer (unixtime)

Erstellungszeit in UTC.

enabled

boolean

Bestimmt, ob das Objekt aktiviert ist.

exp

integer (unixtime)

Ablaufdatum in UTC.

exportable

boolean

Gibt an, ob der private Schlüssel exportiert werden kann. Die Releaserichtlinie muss beim Erstellen der ersten Version eines exportierbaren Schlüssels bereitgestellt werden.

nbf

integer (unixtime)

Nicht vor dem Datum in UTC.

recoverableDays

integer (int32)

SoftDelete-Datenaufbewahrungstage. Der Wert sollte >=7 und <=90 sein, wenn "softDelete" aktiviert ist, andernfalls 0.

recoveryLevel

DeletionRecoveryLevel

Gibt die Löschwiederherstellungsebene wieder, die derzeit für Schlüssel im aktuellen Tresor wirksam ist. Wenn er "Löschbar" enthält, kann der Schlüssel von einem privilegierten Benutzer endgültig gelöscht werden. andernfalls kann nur das System den Schlüssel am Ende des Aufbewahrungsintervalls löschen.

updated

integer (unixtime)

Uhrzeit der letzten Aktualisierung in UTC.

KeyBundle

Ein KeyBundle-Element, das aus einem WebKey und seinen Attributen besteht.

Name Typ Beschreibung
attributes

KeyAttributes

Die wichtigsten Verwaltungsattribute.

key

JsonWebKey

Der JSON-Webschlüssel.

managed

boolean

True, wenn die Lebensdauer des Schlüssels vom Schlüsseltresor verwaltet wird. Wenn es sich um einen Schlüssel handelt, der ein Zertifikat sichert, ist dies "true".

release_policy

KeyReleasePolicy

Die Richtlinienregeln, unter denen der Schlüssel exportiert werden kann.

tags

object

Anwendungsspezifische Metadaten in Form von Schlüsselwertpaaren.

KeyCreateParameters

Der Schlüssel erstellt Parameter.

Name Typ Beschreibung
attributes

KeyAttributes

Die Attribute eines Schlüssels, der vom Schlüsseltresordienst verwaltet wird.

crv

JsonWebKeyCurveName

Elliptische Kurvenname. Gültige Werte finden Sie unter JsonWebKeyCurveName.

key_ops

JsonWebKeyOperation[]

JSON-Webschlüsselvorgänge. Weitere Informationen finden Sie unter JsonWebKeyOperation.

key_size

integer (int32)

Die Schlüsselgröße in Bits. Beispiel: 2048, 3072 oder 4096 für RSA.

kty

JsonWebKeyType

minLength: 1

Der Typ des zu erstellenden Schlüssels. Gültige Werte finden Sie unter JsonWebKeyType.

public_exponent

integer (int32)

Der öffentliche Exponent für einen RSA-Schlüssel.

release_policy

KeyReleasePolicy

Die Richtlinienregeln, unter denen der Schlüssel exportiert werden kann.

tags

object

Anwendungsspezifische Metadaten in Form von Schlüsselwertpaaren.

KeyReleasePolicy

Die Richtlinienregeln, unter denen der Schlüssel exportiert werden kann.

Name Typ Standardwert Beschreibung
contentType

string

application/json; charset=utf-8

Inhaltstyp und Version der Schlüsselveröffentlichungsrichtlinie

data

string (base64url)

Blobcodierung der Richtlinienregeln, unter denen der Schlüssel freigegeben werden kann. Blob muss base64-URL-codiert sein.

immutable

boolean

Definiert den Status der Veränderbarkeit der Richtlinie. Nachdem sie als unveränderlich markiert wurde, kann dieses Flag nicht zurückgesetzt werden, und die Richtlinie kann unter keinen Umständen geändert werden.

KeyVaultError

Ausnahme des Schlüsseltresorfehlers.

Name Typ Beschreibung
error

Error

Der Schlüsseltresorserverfehler.