Create Key - Create Key
新しいキーを作成し、格納し、キー パラメーターと属性をクライアントに返します。
キーの作成操作を使用して、Azure Key Vaultで任意のキーの種類を作成できます。 名前付きのキーが既に存在する場合は、Azure Key Vault によりキーの新しいバージョンが作成されます。 これには、キー/作成アクセス許可が必要です。
POST {vaultBaseUrl}/keys/{key-name}/create?api-version=7.4
URI パラメーター
名前 | / | 必須 | 型 | 説明 |
---|---|---|---|---|
key-name
|
path | True |
string |
新しいキーの名前。 新しいキーのバージョン名が生成されます。 指定した値は、サービスを実行するためにグローバルにコピーされる場合があります。 指定する値には、個人を特定できる情報や機密情報を含めてはなりません。 正規表現パターン: |
vault
|
path | True |
string |
コンテナー名 (例: https://myvault.vault.azure.net)。 |
api-version
|
query | True |
string |
クライアント API バージョン。 |
要求本文
名前 | 必須 | 型 | 説明 |
---|---|---|---|
kty | True |
作成するキーの種類。 有効な値については、「JsonWebKeyType」を参照してください。 |
|
attributes |
キー コンテナー サービスによって管理されるキーの属性。 |
||
crv |
楕円曲線名。 有効な値については、「JsonWebKeyCurveName」を参照してください。 |
||
key_ops |
JSON Web キー操作。 詳細については、「JsonWebKeyOperation」を参照してください。 |
||
key_size |
integer |
キー サイズ (ビット単位)。 たとえば、RSA の場合は 2048、3072、4096 などです。 |
|
public_exponent |
integer |
RSA キーの公開指数。 |
|
release_policy |
キーをエクスポートできるポリシー ルール。 |
||
tags |
object |
キーと値のペアの形式による、アプリケーション固有のメタデータ。 |
応答
名前 | 型 | 説明 |
---|---|---|
200 OK |
キーの作成要求の結果を含むキー バンドル。 |
|
Other Status Codes |
操作Key Vault失敗した理由を説明するエラー応答です。 |
例
Create key
要求のサンプル
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"
}
}
応答のサンプル
{
"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"
}
}
定義
名前 | 説明 |
---|---|
Deletion |
現在のコンテナー内のキーに対して現在有効になっている削除回復レベルを反映します。 "Purgeable" が含まれている場合、キーは特権ユーザーによって完全に削除できます。それ以外の場合、保持間隔の最後にキーを消去できるのはシステムだけです。 |
Error |
キー コンテナー サーバーエラー。 |
Json |
の時点 http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18 |
Json |
楕円曲線名。 有効な値については、「JsonWebKeyCurveName」を参照してください。 |
Json |
|
Json |
で定義 https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40されている JsonWebKey キー型 (kty)。 |
Key |
キー コンテナー サービスによって管理されるキーの属性。 |
Key |
WebKey とその属性で構成される KeyBundle。 |
Key |
キー作成パラメーター。 |
Key |
キーをエクスポートできるポリシー ルール。 |
Key |
キー コンテナーエラー例外。 |
DeletionRecoveryLevel
現在のコンテナー内のキーに対して現在有効になっている削除回復レベルを反映します。 "Purgeable" が含まれている場合、キーは特権ユーザーによって完全に削除できます。それ以外の場合、保持間隔の最後にキーを消去できるのはシステムだけです。
名前 | 型 | 説明 |
---|---|---|
CustomizedRecoverable |
string |
即時および永続的な削除 (つまり、7<= SoftDeleteRetentionInDays 90 の場合は消去) を行わずに削除を回復できるコンテナーの状態を < 示します。このレベルでは、保持期間中およびサブスクリプションが引き続き使用できる間に、削除されたエンティティの回復可能性が保証されます。 |
CustomizedRecoverable+ProtectedSubscription |
string |
7<= SoftDeleteRetentionInDays < 90 の場合、削除が回復可能で、即時および完全な削除 (消去) が許可されず、サブスクリプション自体を完全に取り消すことができないコンテナーとサブスクリプションの状態を示します。 このレベルでは、保持期間中に削除されたエンティティの回復可能性が保証され、サブスクリプション自体を取り消すことができないという事実も反映されます。 |
CustomizedRecoverable+Purgeable |
string |
削除が回復可能であり、即時および永続的な削除も許可されるコンテナーの状態を示します (つまり、7< = SoftDeleteRetentionInDays < 90 の場合は消去)。 このレベルでは、消去操作が要求されるか、サブスクリプションが取り消されない限り、保持期間中に削除されたエンティティの回復可能性が保証されます。 |
Purgeable |
string |
復旧の可能性がない、削除が元に戻せない操作であるコンテナーの状態を示します。 このレベルは、Delete 操作に対して使用できる保護に対応しません。エンティティ レベル以上 (コンテナー、リソース グループ、サブスクリプションなど) で Delete 操作を受け入れると、データが回復不能に失われます。 |
Recoverable |
string |
即時および永続的な削除 (つまり消去) を行わずに削除を回復できるコンテナーの状態を示します。 このレベルでは、保持期間 (90 日) の間、およびサブスクリプションがまだ使用可能な間に、削除されたエンティティの回復可能性が保証されます。 回復されていない場合、システムは90日後にそれを完全に削除します |
Recoverable+ProtectedSubscription |
string |
保持期間内 (90 日以内)、即時削除と完全削除 (消去) が許可されず、サブスクリプション自体を完全に取り消すことができないコンテナーとサブスクリプションの状態を示します。 回復されていない場合、システムは90日後にそれを完全に削除します |
Recoverable+Purgeable |
string |
削除が回復可能であり、即時および永続的な削除 (消去) も許可されるコンテナーの状態を示します。 このレベルでは、消去操作が要求されたか、サブスクリプションが取り消されない限り、保持期間中 (90 日間) に削除されたエンティティの回復可能性が保証されます。 回復されていない場合、システムは90日後にそれを完全に削除します |
Error
キー コンテナー サーバーエラー。
名前 | 型 | 説明 |
---|---|---|
code |
string |
エラー コード。 |
innererror |
キー コンテナー サーバーエラー。 |
|
message |
string |
エラー メッセージ。 |
JsonWebKey
の時点 http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18
名前 | 型 | 説明 |
---|---|---|
crv |
楕円曲線名。 有効な値については、「JsonWebKeyCurveName」を参照してください。 |
|
d |
string |
RSA プライベート指数、または EC 秘密キーの D コンポーネント。 |
dp |
string |
RSA 秘密キー パラメーター。 |
dq |
string |
RSA 秘密キー パラメーター。 |
e |
string |
RSA パブリック指数。 |
k |
string |
対称キー。 |
key_hsm |
string |
保護されたキー。"Bring Your Own Key" と共に使用されます。 |
key_ops |
string[] |
サポートされているキー操作。 |
kid |
string |
キー識別子。 |
kty |
で定義 https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40されている JsonWebKey キー型 (kty)。 |
|
n |
string |
RSA 剰余。 |
p |
string |
RSA シークレット プライム。 |
q |
string |
RSA シークレット 素数、p < q。 |
qi |
string |
RSA 秘密キー パラメーター。 |
x |
string |
EC 公開キーの X コンポーネント。 |
y |
string |
EC 公開キーの Y コンポーネント。 |
JsonWebKeyCurveName
楕円曲線名。 有効な値については、「JsonWebKeyCurveName」を参照してください。
名前 | 型 | 説明 |
---|---|---|
P-256 |
string |
NIST P-256 楕円曲線、別名 SECG 曲線SECP256R1。 |
P-256K |
string |
SECG SECP256K1楕円曲線です。 |
P-384 |
string |
NIST P-384 楕円曲線、別名 SECG 曲線SECP384R1。 |
P-521 |
string |
NIST P-521 楕円曲線、別名 SECG 曲線SECP521R1。 |
JsonWebKeyOperation
名前 | 型 | 説明 |
---|---|---|
decrypt |
string |
|
encrypt |
string |
|
export |
string |
|
import |
string |
|
sign |
string |
|
unwrapKey |
string |
|
verify |
string |
|
wrapKey |
string |
JsonWebKeyType
で定義 https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40されている JsonWebKey キー型 (kty)。
名前 | 型 | 説明 |
---|---|---|
EC |
string |
楕円曲線 |
EC-HSM |
string |
HSM に格納されている秘密キーを持つ省略記号曲線。 |
RSA |
string |
|
RSA-HSM |
string |
HSM に格納されている秘密キーを持つ RSA。 |
oct |
string |
オクテット シーケンス (対称キーを表すために使用) |
oct-HSM |
string |
HSM に格納されるオクテット シーケンス (対称キーを表すために使用されます)。 |
KeyAttributes
キー コンテナー サービスによって管理されるキーの属性。
名前 | 型 | 説明 |
---|---|---|
created |
integer |
作成時刻 (UTC)。 |
enabled |
boolean |
オブジェクトが有効かどうかを判断します。 |
exp |
integer |
有効期限 (UTC)。 |
exportable |
boolean |
秘密キーをエクスポートできるかどうかを示します。 エクスポート可能なキーの最初のバージョンを作成するときは、リリース ポリシーを指定する必要があります。 |
nbf |
integer |
UTC の日付より前ではありません。 |
recoverableDays |
integer |
softDelete データ保持日数。 softDelete が有効な場合は >=7、 <=90、それ以外の場合は 0 にする必要があります。 |
recoveryLevel |
現在のコンテナー内のキーに対して現在有効になっている削除回復レベルを反映します。 "Purgeable" が含まれている場合、キーは特権ユーザーによって完全に削除できます。それ以外の場合、保持間隔の最後にキーを消去できるのはシステムだけです。 |
|
updated |
integer |
UTC での最終更新時刻。 |
KeyBundle
WebKey とその属性で構成される KeyBundle。
名前 | 型 | 説明 |
---|---|---|
attributes |
キー管理属性。 |
|
key |
Json Web キー。 |
|
managed |
boolean |
True キーの有効期間がキー コンテナーによって管理されている場合。 これが証明書をバックアップするキーの場合、マネージドは true になります。 |
release_policy |
キーをエクスポートできるポリシー ルール。 |
|
tags |
object |
キーと値のペアの形式による、アプリケーション固有のメタデータ。 |
KeyCreateParameters
キー作成パラメーター。
名前 | 型 | 説明 |
---|---|---|
attributes |
キー コンテナー サービスによって管理されるキーの属性。 |
|
crv |
楕円曲線名。 有効な値については、「JsonWebKeyCurveName」を参照してください。 |
|
key_ops |
JSON Web キー操作。 詳細については、「JsonWebKeyOperation」を参照してください。 |
|
key_size |
integer |
キー サイズ (ビット単位)。 たとえば、RSA の場合は 2048、3072、4096 などです。 |
kty |
作成するキーの種類。 有効な値については、「JsonWebKeyType」を参照してください。 |
|
public_exponent |
integer |
RSA キーの公開指数。 |
release_policy |
キーをエクスポートできるポリシー ルール。 |
|
tags |
object |
キーと値のペアの形式による、アプリケーション固有のメタデータ。 |
KeyReleasePolicy
キーをエクスポートできるポリシー ルール。
名前 | 型 | 規定値 | 説明 |
---|---|---|---|
contentType |
string |
application/json; charset=utf-8 |
コンテンツ タイプとキー リリース ポリシーのバージョン |
data |
string |
キーを解放できるポリシー規則をエンコードする BLOB。 BLOB は base64 URL エンコードされている必要があります。 |
|
immutable |
boolean |
ポリシーの変更可能性の状態を定義します。 変更不可とマークされると、このフラグをリセットできず、どのような状況でもポリシーを変更することはできません。 |
KeyVaultError
キー コンテナーエラー例外。
名前 | 型 | 説明 |
---|---|---|
error |
キー コンテナー サーバーエラー。 |