Managed Hsms - Create Or Update
Create or update a managed HSM Pool in the specified subscription.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}?api-version=2021-10-01
URI Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
|
name
|
path | True |
|
Name of the managed HSM Pool |
|
resource
|
path | True |
|
Name of the resource group that contains the managed HSM pool. |
|
subscription
|
path | True |
|
Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call. |
|
api-version
|
query | True |
|
Client Api Version. |
Request Body
| Name | Type | Description |
|---|---|---|
| location |
|
The supported Azure location where the managed HSM Pool should be created. |
| properties |
Properties of the managed HSM |
|
| sku |
SKU details |
|
| tags |
|
Resource tags |
Responses
| Name | Type | Description |
|---|---|---|
| 200 OK |
Created or updated managed HSM Pool |
|
| 202 Accepted |
Accepted and the operation will complete asynchronously. |
|
| Other Status Codes |
The error response describing why the operation failed. |
Security
azure_auth
Azure Active Directory OAuth2 Flow
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
| Name | Description |
|---|---|
| user_impersonation | impersonate your user account |
Examples
Create a new managed HSM Pool or update an existing managed HSM Pool
Sample Request
PUT https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1?api-version=2021-10-01
{
"properties": {
"tenantId": "00000000-0000-0000-0000-000000000000",
"initialAdminObjectIds": [
"00000000-0000-0000-0000-000000000000"
],
"enableSoftDelete": true,
"softDeleteRetentionInDays": 90,
"enablePurgeProtection": true
},
"location": "westus",
"sku": {
"family": "B",
"name": "Standard_B1"
},
"tags": {
"Dept": "hsm",
"Environment": "dogfood"
}
}
Sample Response
{
"properties": {
"tenantId": "00000000-0000-0000-0000-000000000000",
"initialAdminObjectIds": [
"00000000-0000-0000-0000-000000000000"
],
"enableSoftDelete": true,
"softDeleteRetentionInDays": 90,
"enablePurgeProtection": true,
"hsmUri": null,
"provisioningState": "Provisioning",
"statusMessage": "Allocating hardware"
},
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1",
"name": "hsm1",
"type": "Microsoft.KeyVault/managedHSMs",
"location": "westus",
"sku": {
"family": "B",
"name": "Standard_B1"
},
"tags": {
"Dept": "hsm",
"Environment": "dogfood"
}
}
{
"properties": {
"tenantId": "00000000-0000-0000-0000-000000000000",
"initialAdminObjectIds": [
"00000000-0000-0000-0000-000000000000"
],
"enableSoftDelete": true,
"softDeleteRetentionInDays": 90,
"enablePurgeProtection": true,
"hsmUri": "https://westus.hsm1.managedhsm.azure.net",
"provisioningState": "Succeeded",
"statusMessage": "ManagedHsm is functional."
},
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1",
"name": "hsm1",
"type": "Microsoft.KeyVault/managedHSMs",
"location": "westus",
"sku": {
"family": "B",
"name": "Standard_B1"
},
"tags": {
"Dept": "hsm",
"Environment": "dogfood"
}
}
Definitions
|
Actions |
A message indicating if changes on the service provider require any updates on the consumer. |
|
Create |
The create mode to indicate whether the resource is being created or is being recovered from a deleted resource. |
| Error |
The server error. |
|
identity |
The type of identity that created the key vault resource. |
|
Managed |
Resource information with extended details. |
|
Managed |
The error exception. |
|
Managed |
Properties of the managed HSM Pool |
|
Managed |
SKU details |
|
Managed |
SKU Family of the managed HSM Pool |
|
Managed |
SKU of the managed HSM Pool |
| MHSMIPRule |
A rule governing the accessibility of a managed hsm pool from a specific ip address or ip range. |
|
MHSMNetwork |
A set of rules governing the network accessibility of a managed hsm pool. |
|
MHSMPrivate |
Private endpoint object properties. |
|
MHSMPrivate |
Private endpoint connection item. |
|
MHSMPrivate |
An object that represents the approval state of the private link connection. |
|
MHSMVirtual |
A rule governing the accessibility of a managed hsm pool from a specific virtual network. |
|
Network |
The default action when no rule from ipRules and from virtualNetworkRules match. This is only used after the bypass property has been evaluated. |
|
Network |
Tells what traffic can bypass network rules. This can be 'AzureServices' or 'None'. If not specified the default is 'AzureServices'. |
|
Private |
Provisioning state of the private endpoint connection. |
|
Private |
Indicates whether the connection has been approved, rejected or removed by the key vault owner. |
|
Provisioning |
Provisioning state. |
|
Public |
Control permission for data plane traffic coming from public networks while private endpoint is enabled. |
|
System |
Metadata pertaining to creation and last modification of the key vault resource. |
ActionsRequired
A message indicating if changes on the service provider require any updates on the consumer.
| Name | Type | Description |
|---|---|---|
| None |
|
CreateMode
The create mode to indicate whether the resource is being created or is being recovered from a deleted resource.
| Name | Type | Description |
|---|---|---|
| default |
|
Create a new managed HSM pool. This is the default option. |
| recover |
|
Recover the managed HSM pool from a soft-deleted resource. |
Error
The server error.
| Name | Type | Description |
|---|---|---|
| code |
|
The error code. |
| innererror |
The inner error, contains a more specific error code. |
|
| message |
|
The error message. |
identityType
The type of identity that created the key vault resource.
| Name | Type | Description |
|---|---|---|
| Application |
|
|
| Key |
|
|
| ManagedIdentity |
|
|
| User |
|
ManagedHsm
Resource information with extended details.
| Name | Type | Description |
|---|---|---|
| id |
|
The Azure Resource Manager resource ID for the managed HSM Pool. |
| location |
|
The supported Azure location where the managed HSM Pool should be created. |
| name |
|
The name of the managed HSM Pool. |
| properties |
Properties of the managed HSM |
|
| sku |
SKU details |
|
| systemData |
Metadata pertaining to creation and last modification of the key vault resource. |
|
| tags |
|
Resource tags |
| type |
|
The resource type of the managed HSM Pool. |
ManagedHsmError
The error exception.
| Name | Type | Description |
|---|---|---|
| error |
The server error. |
ManagedHsmProperties
Properties of the managed HSM Pool
| Name | Type | Default Value | Description |
|---|---|---|---|
| createMode |
The create mode to indicate whether the resource is being created or is being recovered from a deleted resource. |
||
| enablePurgeProtection |
|
True |
Property specifying whether protection against purge is enabled for this managed HSM pool. Setting this property to true activates protection against purge for this managed HSM pool and its content - only the Managed HSM service may initiate a hard, irrecoverable deletion. The setting is effective only if soft delete is also enabled. Enabling this functionality is irreversible. |
| enableSoftDelete |
|
True |
Property to specify whether the 'soft delete' functionality is enabled for this managed HSM pool. If it's not set to any value(true or false) when creating new managed HSM pool, it will be set to true by default. Once set to true, it cannot be reverted to false. |
| hsmUri |
|
The URI of the managed hsm pool for performing operations on keys. |
|
| initialAdminObjectIds |
|
Array of initial administrators object ids for this managed hsm pool. |
|
| networkAcls |
Rules governing the accessibility of the key vault from specific network locations. |
||
| privateEndpointConnections |
List of private endpoint connections associated with the managed hsm pool. |
||
| provisioningState |
Provisioning state. |
||
| publicNetworkAccess |
Control permission for data plane traffic coming from public networks while private endpoint is enabled. |
||
| scheduledPurgeDate |
|
The scheduled purge date in UTC. |
|
| softDeleteRetentionInDays |
|
90 |
softDelete data retention days. It accepts >=7 and <=90. |
| statusMessage |
|
Resource Status Message. |
|
| tenantId |
|
The Azure Active Directory tenant ID that should be used for authenticating requests to the managed HSM pool. |
ManagedHsmSku
SKU details
| Name | Type | Description |
|---|---|---|
| family |
SKU Family of the managed HSM Pool |
|
| name |
SKU of the managed HSM Pool |
ManagedHsmSkuFamily
SKU Family of the managed HSM Pool
| Name | Type | Description |
|---|---|---|
| B |
|
ManagedHsmSkuName
SKU of the managed HSM Pool
| Name | Type | Description |
|---|---|---|
| Custom_B32 |
|
|
| Standard_B1 |
|
MHSMIPRule
A rule governing the accessibility of a managed hsm pool from a specific ip address or ip range.
| Name | Type | Description |
|---|---|---|
| value |
|
An IPv4 address range in CIDR notation, such as '124.56.78.91' (simple IP address) or '124.56.78.0/24' (all addresses that start with 124.56.78). |
MHSMNetworkRuleSet
A set of rules governing the network accessibility of a managed hsm pool.
| Name | Type | Description |
|---|---|---|
| bypass |
Tells what traffic can bypass network rules. This can be 'AzureServices' or 'None'. If not specified the default is 'AzureServices'. |
|
| defaultAction |
The default action when no rule from ipRules and from virtualNetworkRules match. This is only used after the bypass property has been evaluated. |
|
| ipRules |
The list of IP address rules. |
|
| virtualNetworkRules |
The list of virtual network rules. |
MHSMPrivateEndpoint
Private endpoint object properties.
| Name | Type | Description |
|---|---|---|
| id |
|
Full identifier of the private endpoint resource. |
MHSMPrivateEndpointConnectionItem
Private endpoint connection item.
| Name | Type | Description |
|---|---|---|
| etag |
|
Modified whenever there is a change in the state of private endpoint connection. |
| id |
|
Id of private endpoint connection. |
| properties.privateEndpoint |
Properties of the private endpoint object. |
|
| properties.privateLinkServiceConnectionState |
Approval state of the private link connection. |
|
| properties.provisioningState |
Provisioning state of the private endpoint connection. |
MHSMPrivateLinkServiceConnectionState
An object that represents the approval state of the private link connection.
| Name | Type | Description |
|---|---|---|
| actionsRequired |
A message indicating if changes on the service provider require any updates on the consumer. |
|
| description |
|
The reason for approval or rejection. |
| status |
Indicates whether the connection has been approved, rejected or removed by the key vault owner. |
MHSMVirtualNetworkRule
A rule governing the accessibility of a managed hsm pool from a specific virtual network.
| Name | Type | Description |
|---|---|---|
| id |
|
Full resource id of a vnet subnet, such as '/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1'. |
NetworkRuleAction
The default action when no rule from ipRules and from virtualNetworkRules match. This is only used after the bypass property has been evaluated.
| Name | Type | Description |
|---|---|---|
| Allow |
|
|
| Deny |
|
NetworkRuleBypassOptions
Tells what traffic can bypass network rules. This can be 'AzureServices' or 'None'. If not specified the default is 'AzureServices'.
| Name | Type | Description |
|---|---|---|
| AzureServices |
|
|
| None |
|
PrivateEndpointConnectionProvisioningState
Provisioning state of the private endpoint connection.
| Name | Type | Description |
|---|---|---|
| Creating |
|
|
| Deleting |
|
|
| Disconnected |
|
|
| Failed |
|
|
| Succeeded |
|
|
| Updating |
|
PrivateEndpointServiceConnectionStatus
Indicates whether the connection has been approved, rejected or removed by the key vault owner.
| Name | Type | Description |
|---|---|---|
| Approved |
|
|
| Disconnected |
|
|
| Pending |
|
|
| Rejected |
|
ProvisioningState
Provisioning state.
| Name | Type | Description |
|---|---|---|
| Activated |
|
The managed HSM pool is ready for normal use. |
| Deleting |
|
The managed HSM Pool is currently being deleted. |
| Failed |
|
Provisioning of the managed HSM Pool has failed. |
| Provisioning |
|
The managed HSM Pool is currently being provisioned. |
| Restoring |
|
The managed HSM pool is being restored from full HSM backup. |
| SecurityDomainRestore |
|
The managed HSM pool is waiting for a security domain restore action. |
| Succeeded |
|
The managed HSM Pool has been full provisioned. |
| Updating |
|
The managed HSM Pool is currently being updated. |
PublicNetworkAccess
Control permission for data plane traffic coming from public networks while private endpoint is enabled.
| Name | Type | Description |
|---|---|---|
| Disabled |
|
|
| Enabled |
|
SystemData
Metadata pertaining to creation and last modification of the key vault resource.
| Name | Type | Description |
|---|---|---|
| createdAt |
|
The timestamp of the key vault resource creation (UTC). |
| createdBy |
|
The identity that created the key vault resource. |
| createdByType |
The type of identity that created the key vault resource. |
|
| lastModifiedAt |
|
The timestamp of the key vault resource last modification (UTC). |
| lastModifiedBy |
|
The identity that last modified the key vault resource. |
| lastModifiedByType |
The type of identity that last modified the key vault resource. |