diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/bastionHost.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/bastionHost.json index 087aa1e4d21f..535330d2c4e6 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/bastionHost.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/bastionHost.json @@ -75,6 +75,9 @@ "x-ms-examples": { "Delete Bastion Host": { "$ref": "./examples/BastionHostDelete.json" + }, + "Delete Developer Bastion Host": { + "$ref": "./examples/BastionHostDeveloperDelete.json" } }, "x-ms-long-running-operation": true, @@ -119,6 +122,9 @@ "x-ms-examples": { "Get Bastion Host": { "$ref": "./examples/BastionHostGet.json" + }, + "Get Developer Bastion Host": { + "$ref": "./examples/BastionHostDeveloperGet.json" } } }, @@ -174,6 +180,9 @@ "x-ms-examples": { "Create Bastion Host": { "$ref": "./examples/BastionHostPut.json" + }, + "Create Developer Bastion Host": { + "$ref": "./examples/BastionHostDeveloperPut.json" } }, "x-ms-long-running-operation": true, @@ -595,6 +604,15 @@ }, "type": "object" }, + "IPRule": { + "properties": { + "addressPrefix": { + "type": "string", + "description": "Specifies the IP or IP range in CIDR format. Only IPV4 address is allowed." + } + }, + "type": "object" + }, "BastionHostIPConfigurationPropertiesFormat": { "properties": { "subnet": { @@ -663,6 +681,22 @@ "type": "string", "description": "FQDN for the endpoint on which bastion host is accessible." }, + "virtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to an existing virtual network required for Developer Bastion Host only." + }, + "networkAcls": { + "properties": { + "ipRules": { + "type": "array", + "items": { + "description": "IP rule with specific IP or IP range in CIDR format.", + "$ref": "#/definitions/IPRule" + }, + "description": "Sets the IP ACL rules for Developer Bastion Host." + } + } + }, "provisioningState": { "readOnly": true, "$ref": "./network.json#/definitions/ProvisioningState", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/BastionHostDeveloperDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/BastionHostDeveloperDelete.json new file mode 100644 index 000000000000..adb896bfe9c7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/BastionHostDeveloperDelete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2023-05-01", + "subscriptionId": "subid", + "resourceGroupName": "rg2", + "bastionHostName": "bastionhostdeveloper" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/operationResults/{operationId}?api-version={api-version}" + } + }, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/BastionHostDeveloperGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/BastionHostDeveloperGet.json new file mode 100644 index 000000000000..acd0a0c8d7a8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/BastionHostDeveloperGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2023-05-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhostdeveloper'" + }, + "responses": { + "200": { + "body": { + "name": "bastionhostdeveloper'", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/bastionHosts/bastionhostdeveloper'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "sku": { + "name": "Developer" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "networkAcls": { + "ipRules": [ + { + "addressPrefix": "1.1.1.1/16" + } + ] + }, + "dnsName": "omnibrain.uswest.bastionglobal.azure.com", + "ipConfigurations": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/BastionHostDeveloperPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/BastionHostDeveloperPut.json new file mode 100644 index 000000000000..5765024661fc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/BastionHostDeveloperPut.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2023-05-01", + "subscriptionId": "subid", + "resourceGroupName": "rg2", + "bastionHostName": "bastionhostdeveloper", + "sku": { + "name": "Developer" + }, + "parameters": { + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "networkAcls": { + "ipRules": [ + { + "addressPrefix": "1.1.1.1/16" + } + ] + }, + "ipConfigurations": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "bastionhostdeveloper", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/bastionHosts/bastionhostdeveloper'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "sku": { + "name": "Developer" + }, + "properties": { + "provisioningState": "Succeeded", + "dnsName": "omnibrain.uswest.bastionglobal.azure.com", + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "networkAcls": { + "ipRules": [ + { + "addressPrefix": "1.1.1.1/16" + } + ] + }, + "ipConfigurations": [] + } + } + }, + "201": { + "body": { + "name": "bastionhostdeveloper'", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/bastionHosts/bastionhostdeveloper'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "sku": { + "name": "Developer" + }, + "properties": { + "provisioningState": "Succeeded", + "dnsName": "omnibrain.uswest.bastionglobal.azure.com", + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "networkAcls": { + "ipRules": [ + { + "addressPrefix": "1.1.1.1/16" + } + ] + }, + "ipConfigurations": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/BastionHostListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/BastionHostListBySubscription.json index c8a758a63eba..35b0e23636d3 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/BastionHostListBySubscription.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/BastionHostListBySubscription.json @@ -44,6 +44,31 @@ } ] } + }, + { + "name": "bastionhostdeveloper'", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/bastionHosts/bastionhostdeveloper'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "sku": { + "name": "Developer" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "networkAcls": { + "ipRules": [ + { + "addressPrefix": "1.1.1.1/16" + } + ] + }, + "dnsName": "omnibrain.uswest.bastionglobal.azure.com", + "ipConfigurations": [] + } } ] }