创建或更新指定的 Bastion 主机。
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}?api-version=2024-05-01
URI 参数
名称 |
在 |
必需 |
类型 |
说明 |
bastionHostName
|
path |
True
|
string
|
Bastion 主机的名称。
|
resourceGroupName
|
path |
True
|
string
|
资源组的名称。
|
subscriptionId
|
path |
True
|
string
|
唯一标识 Azure 订阅Microsoft的订阅凭据。 订阅 ID 构成了每个服务调用的 URI 的一部分。
|
api-version
|
query |
True
|
string
|
客户端 API 版本。
|
请求正文
名称 |
类型 |
说明 |
id
|
string
|
资源 ID。
|
location
|
string
|
资源位置。
|
properties.disableCopyPaste
|
boolean
|
启用/禁用 Bastion 主机资源的复制/粘贴功能。
|
properties.dnsName
|
string
|
堡垒主机可访问的终结点的 FQDN。
|
properties.enableFileCopy
|
boolean
|
启用/禁用 Bastion 主机资源的文件复制功能。
|
properties.enableIpConnect
|
boolean
|
启用/禁用 Bastion 主机资源的 IP Connect 功能。
|
properties.enableKerberos
|
boolean
|
启用/禁用 Bastion 主机资源的 Kerberos 功能。
|
properties.enablePrivateOnlyBastion
|
boolean
|
启用/禁用 Bastion 主机资源的“仅专用”功能。
|
properties.enableSessionRecording
|
boolean
|
启用/禁用 Bastion 主机资源的会话录制功能。
|
properties.enableShareableLink
|
boolean
|
启用/禁用 Bastion 主机资源的可共享链接。
|
properties.enableTunneling
|
boolean
|
启用/禁用 Bastion 主机资源的隧道功能。
|
properties.ipConfigurations
|
BastionHostIPConfiguration[]
|
Bastion 主机资源的 IP 配置。
|
properties.networkAcls
|
NetworkAcls
|
|
properties.scaleUnits
|
integer
|
Bastion 主机资源的缩放单位。
|
properties.virtualNetwork
|
SubResource
|
仅对开发人员 Bastion 主机所需的现有虚拟网络的引用。
|
sku
|
Sku
|
此 Bastion 主机的 SKU。
|
tags
|
object
|
资源标记。
|
zones
|
string[]
|
一个可用性区域列表,表示资源需要来自何处。
|
响应
安全性
azure_auth
Azure Active Directory OAuth2 Flow。
类型:
oauth2
流向:
implicit
授权 URL:
https://login.microsoftonline.com/common/oauth2/authorize
作用域
名称 |
说明 |
user_impersonation
|
模拟用户帐户
|
示例
Create Bastion Host
示例请求
PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant?api-version=2024-05-01
{
"properties": {
"ipConfigurations": [
{
"name": "bastionHostIpConfiguration",
"properties": {
"subnet": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet"
},
"publicIPAddress": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName"
}
}
}
]
}
}
import com.azure.core.management.SubResource;
import com.azure.resourcemanager.network.fluent.models.BastionHostInner;
import com.azure.resourcemanager.network.models.BastionHostIpConfiguration;
import java.util.Arrays;
/**
* Samples for BastionHosts CreateOrUpdate.
*/
public final class Main {
/*
* x-ms-original-file:
* specification/network/resource-manager/Microsoft.Network/stable/2024-05-01/examples/BastionHostPut.json
*/
/**
* Sample code: Create Bastion Host.
*
* @param azure The entry point for accessing resource management APIs in Azure.
*/
public static void createBastionHost(com.azure.resourcemanager.AzureResourceManager azure) {
azure.networks().manager().serviceClient().getBastionHosts().createOrUpdate("rg1", "bastionhosttenant",
new BastionHostInner().withIpConfigurations(Arrays.asList(new BastionHostIpConfiguration()
.withName("bastionHostIpConfiguration")
.withSubnet(new SubResource().withId(
"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet"))
.withPublicIpAddress(new SubResource().withId(
"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName")))),
com.azure.core.util.Context.NONE);
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.network import NetworkManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-network
# USAGE
python bastion_host_put.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = NetworkManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.bastion_hosts.begin_create_or_update(
resource_group_name="rg1",
bastion_host_name="bastionhosttenant",
parameters={
"properties": {
"ipConfigurations": [
{
"name": "bastionHostIpConfiguration",
"properties": {
"publicIPAddress": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName"
},
"subnet": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet"
},
},
}
]
}
},
).result()
print(response)
# x-ms-original-file: specification/network/resource-manager/Microsoft.Network/stable/2024-05-01/examples/BastionHostPut.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armnetwork_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v6"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/ab04533261eff228f28e08900445d0edef3eb70c/specification/network/resource-manager/Microsoft.Network/stable/2024-05-01/examples/BastionHostPut.json
func ExampleBastionHostsClient_BeginCreateOrUpdate_createBastionHost() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armnetwork.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewBastionHostsClient().BeginCreateOrUpdate(ctx, "rg1", "bastionhosttenant", armnetwork.BastionHost{
Properties: &armnetwork.BastionHostPropertiesFormat{
IPConfigurations: []*armnetwork.BastionHostIPConfiguration{
{
Name: to.Ptr("bastionHostIpConfiguration"),
Properties: &armnetwork.BastionHostIPConfigurationPropertiesFormat{
PublicIPAddress: &armnetwork.SubResource{
ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName"),
},
Subnet: &armnetwork.SubResource{
ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet"),
},
},
}},
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.BastionHost = armnetwork.BastionHost{
// Name: to.Ptr("bastionhost"),
// Type: to.Ptr("Microsoft.Network/bastionHosts"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'"),
// Location: to.Ptr("West US"),
// Etag: to.Ptr("w/\\00000000-0000-0000-0000-000000000000\\"),
// Properties: &armnetwork.BastionHostPropertiesFormat{
// DisableCopyPaste: to.Ptr(false),
// DNSName: to.Ptr("bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com"),
// EnableIPConnect: to.Ptr(false),
// EnableKerberos: to.Ptr(false),
// EnablePrivateOnlyBastion: to.Ptr(false),
// EnableSessionRecording: to.Ptr(false),
// EnableShareableLink: to.Ptr(false),
// EnableTunneling: to.Ptr(false),
// IPConfigurations: []*armnetwork.BastionHostIPConfiguration{
// {
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration"),
// Name: to.Ptr("bastionHostIpConfiguration"),
// Type: to.Ptr("Microsoft.Network/bastionHosts/bastionHostIpConfigurations"),
// Etag: to.Ptr("w/\\00000000-0000-0000-0000-000000000000\\"),
// Properties: &armnetwork.BastionHostIPConfigurationPropertiesFormat{
// PrivateIPAllocationMethod: to.Ptr(armnetwork.IPAllocationMethodDynamic),
// ProvisioningState: to.Ptr(armnetwork.ProvisioningStateSucceeded),
// PublicIPAddress: &armnetwork.SubResource{
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName"),
// },
// Subnet: &armnetwork.SubResource{
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet"),
// },
// },
// }},
// ProvisioningState: to.Ptr(armnetwork.ProvisioningStateSucceeded),
// ScaleUnits: to.Ptr[int32](2),
// },
// SKU: &armnetwork.SKU{
// Name: to.Ptr(armnetwork.BastionHostSKUNameStandard),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { NetworkManagementClient } = require("@azure/arm-network");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates or updates the specified Bastion Host.
*
* @summary Creates or updates the specified Bastion Host.
* x-ms-original-file: specification/network/resource-manager/Microsoft.Network/stable/2024-05-01/examples/BastionHostPut.json
*/
async function createBastionHost() {
const subscriptionId = process.env["NETWORK_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["NETWORK_RESOURCE_GROUP"] || "rg1";
const bastionHostName = "bastionhosttenant";
const parameters = {
ipConfigurations: [
{
name: "bastionHostIpConfiguration",
publicIPAddress: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName",
},
subnet: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet",
},
},
],
};
const credential = new DefaultAzureCredential();
const client = new NetworkManagementClient(credential, subscriptionId);
const result = await client.bastionHosts.beginCreateOrUpdateAndWait(
resourceGroupName,
bastionHostName,
parameters,
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
示例响应
{
"name": "bastionhost",
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'",
"type": "Microsoft.Network/bastionHosts",
"etag": "w/\\00000000-0000-0000-0000-000000000000\\",
"location": "West US",
"sku": {
"name": "Standard"
},
"properties": {
"provisioningState": "Succeeded",
"dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com",
"scaleUnits": 2,
"disableCopyPaste": false,
"enableTunneling": false,
"enableIpConnect": false,
"enableShareableLink": false,
"enableKerberos": false,
"enableSessionRecording": false,
"enablePrivateOnlyBastion": false,
"ipConfigurations": [
{
"name": "bastionHostIpConfiguration",
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration",
"etag": "w/\\00000000-0000-0000-0000-000000000000\\",
"type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations",
"properties": {
"provisioningState": "Succeeded",
"privateIPAllocationMethod": "Dynamic",
"subnet": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet"
},
"publicIPAddress": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName"
}
}
}
]
}
}
{
"name": "bastionhosttenant'",
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant",
"type": "Microsoft.Network/bastionHosts",
"etag": "w/\\00000000-0000-0000-0000-000000000000\\",
"location": "West US",
"sku": {
"name": "Standard"
},
"properties": {
"provisioningState": "Succeeded",
"dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com",
"scaleUnits": 2,
"disableCopyPaste": false,
"enableTunneling": false,
"enableIpConnect": false,
"enableShareableLink": false,
"enableKerberos": false,
"enableSessionRecording": false,
"enablePrivateOnlyBastion": false,
"ipConfigurations": [
{
"name": "bastionHostIpConfiguration",
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration",
"etag": "w/\\00000000-0000-0000-0000-000000000000\\",
"type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations",
"properties": {
"provisioningState": "Succeeded",
"privateIPAllocationMethod": "Dynamic",
"subnet": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet"
},
"publicIPAddress": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName"
}
}
}
]
}
}
Create Bastion Host With Private Only
示例请求
PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant?api-version=2024-05-01
{
"properties": {
"enablePrivateOnlyBastion": true,
"ipConfigurations": [
{
"name": "bastionHostIpConfiguration",
"properties": {
"subnet": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet"
}
}
}
]
}
}
import com.azure.core.management.SubResource;
import com.azure.resourcemanager.network.fluent.models.BastionHostInner;
import com.azure.resourcemanager.network.models.BastionHostIpConfiguration;
import java.util.Arrays;
/**
* Samples for BastionHosts CreateOrUpdate.
*/
public final class Main {
/*
* x-ms-original-file:
* specification/network/resource-manager/Microsoft.Network/stable/2024-05-01/examples/BastionHostPutWithPrivateOnly
* .json
*/
/**
* Sample code: Create Bastion Host With Private Only.
*
* @param azure The entry point for accessing resource management APIs in Azure.
*/
public static void createBastionHostWithPrivateOnly(com.azure.resourcemanager.AzureResourceManager azure) {
azure.networks().manager().serviceClient().getBastionHosts().createOrUpdate("rg1", "bastionhosttenant",
new BastionHostInner().withIpConfigurations(Arrays.asList(new BastionHostIpConfiguration()
.withName("bastionHostIpConfiguration")
.withSubnet(new SubResource().withId(
"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet"))))
.withEnablePrivateOnlyBastion(true),
com.azure.core.util.Context.NONE);
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.network import NetworkManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-network
# USAGE
python bastion_host_put_with_private_only.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = NetworkManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.bastion_hosts.begin_create_or_update(
resource_group_name="rg1",
bastion_host_name="bastionhosttenant",
parameters={
"properties": {
"enablePrivateOnlyBastion": True,
"ipConfigurations": [
{
"name": "bastionHostIpConfiguration",
"properties": {
"subnet": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet"
}
},
}
],
}
},
).result()
print(response)
# x-ms-original-file: specification/network/resource-manager/Microsoft.Network/stable/2024-05-01/examples/BastionHostPutWithPrivateOnly.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armnetwork_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v6"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/ab04533261eff228f28e08900445d0edef3eb70c/specification/network/resource-manager/Microsoft.Network/stable/2024-05-01/examples/BastionHostPutWithPrivateOnly.json
func ExampleBastionHostsClient_BeginCreateOrUpdate_createBastionHostWithPrivateOnly() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armnetwork.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewBastionHostsClient().BeginCreateOrUpdate(ctx, "rg1", "bastionhosttenant", armnetwork.BastionHost{
Properties: &armnetwork.BastionHostPropertiesFormat{
EnablePrivateOnlyBastion: to.Ptr(true),
IPConfigurations: []*armnetwork.BastionHostIPConfiguration{
{
Name: to.Ptr("bastionHostIpConfiguration"),
Properties: &armnetwork.BastionHostIPConfigurationPropertiesFormat{
Subnet: &armnetwork.SubResource{
ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet"),
},
},
}},
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.BastionHost = armnetwork.BastionHost{
// Name: to.Ptr("bastionhosttenant"),
// Type: to.Ptr("Microsoft.Network/bastionHosts"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant"),
// Location: to.Ptr("West US"),
// Etag: to.Ptr("w/\\00000000-0000-0000-0000-000000000000\\"),
// Properties: &armnetwork.BastionHostPropertiesFormat{
// DisableCopyPaste: to.Ptr(false),
// DNSName: to.Ptr("bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com"),
// EnableIPConnect: to.Ptr(false),
// EnableKerberos: to.Ptr(false),
// EnablePrivateOnlyBastion: to.Ptr(true),
// EnableSessionRecording: to.Ptr(false),
// EnableShareableLink: to.Ptr(false),
// EnableTunneling: to.Ptr(false),
// IPConfigurations: []*armnetwork.BastionHostIPConfiguration{
// {
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration"),
// Name: to.Ptr("bastionHostIpConfiguration"),
// Type: to.Ptr("Microsoft.Network/bastionHosts/bastionHostIpConfigurations"),
// Etag: to.Ptr("w/\\00000000-0000-0000-0000-000000000000\\"),
// Properties: &armnetwork.BastionHostIPConfigurationPropertiesFormat{
// PrivateIPAllocationMethod: to.Ptr(armnetwork.IPAllocationMethodDynamic),
// ProvisioningState: to.Ptr(armnetwork.ProvisioningStateSucceeded),
// Subnet: &armnetwork.SubResource{
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet"),
// },
// },
// }},
// ProvisioningState: to.Ptr(armnetwork.ProvisioningStateSucceeded),
// ScaleUnits: to.Ptr[int32](2),
// },
// SKU: &armnetwork.SKU{
// Name: to.Ptr(armnetwork.BastionHostSKUNamePremium),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { NetworkManagementClient } = require("@azure/arm-network");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates or updates the specified Bastion Host.
*
* @summary Creates or updates the specified Bastion Host.
* x-ms-original-file: specification/network/resource-manager/Microsoft.Network/stable/2024-05-01/examples/BastionHostPutWithPrivateOnly.json
*/
async function createBastionHostWithPrivateOnly() {
const subscriptionId = process.env["NETWORK_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["NETWORK_RESOURCE_GROUP"] || "rg1";
const bastionHostName = "bastionhosttenant";
const parameters = {
enablePrivateOnlyBastion: true,
ipConfigurations: [
{
name: "bastionHostIpConfiguration",
subnet: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet",
},
},
],
};
const credential = new DefaultAzureCredential();
const client = new NetworkManagementClient(credential, subscriptionId);
const result = await client.bastionHosts.beginCreateOrUpdateAndWait(
resourceGroupName,
bastionHostName,
parameters,
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
示例响应
{
"name": "bastionhosttenant",
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant",
"type": "Microsoft.Network/bastionHosts",
"etag": "w/\\00000000-0000-0000-0000-000000000000\\",
"location": "West US",
"sku": {
"name": "Premium"
},
"properties": {
"provisioningState": "Succeeded",
"dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com",
"scaleUnits": 2,
"disableCopyPaste": false,
"enableTunneling": false,
"enableIpConnect": false,
"enableShareableLink": false,
"enableKerberos": false,
"enableSessionRecording": false,
"enablePrivateOnlyBastion": true,
"ipConfigurations": [
{
"name": "bastionHostIpConfiguration",
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration",
"etag": "w/\\00000000-0000-0000-0000-000000000000\\",
"type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations",
"properties": {
"provisioningState": "Succeeded",
"privateIPAllocationMethod": "Dynamic",
"subnet": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet"
}
}
}
]
}
}
{
"name": "bastionhosttenant",
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant",
"type": "Microsoft.Network/bastionHosts",
"etag": "w/\\00000000-0000-0000-0000-000000000000\\",
"location": "West US",
"sku": {
"name": "Premium"
},
"properties": {
"provisioningState": "Succeeded",
"dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com",
"scaleUnits": 2,
"disableCopyPaste": false,
"enableTunneling": false,
"enableIpConnect": false,
"enableShareableLink": false,
"enableKerberos": false,
"enableSessionRecording": false,
"enablePrivateOnlyBastion": true,
"ipConfigurations": [
{
"name": "bastionHostIpConfiguration",
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration",
"etag": "w/\\00000000-0000-0000-0000-000000000000\\",
"type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations",
"properties": {
"provisioningState": "Succeeded",
"privateIPAllocationMethod": "Dynamic",
"subnet": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet"
}
}
}
]
}
}
Create Bastion Host With Zones
示例请求
PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant?api-version=2024-05-01
{
"properties": {
"ipConfigurations": [
{
"name": "bastionHostIpConfiguration",
"properties": {
"subnet": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet"
},
"publicIPAddress": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName"
}
}
}
]
}
}
import com.azure.core.management.SubResource;
import com.azure.resourcemanager.network.fluent.models.BastionHostInner;
import com.azure.resourcemanager.network.models.BastionHostIpConfiguration;
import java.util.Arrays;
/**
* Samples for BastionHosts CreateOrUpdate.
*/
public final class Main {
/*
* x-ms-original-file:
* specification/network/resource-manager/Microsoft.Network/stable/2024-05-01/examples/BastionHostPutWithZones.json
*/
/**
* Sample code: Create Bastion Host With Zones.
*
* @param azure The entry point for accessing resource management APIs in Azure.
*/
public static void createBastionHostWithZones(com.azure.resourcemanager.AzureResourceManager azure) {
azure.networks().manager().serviceClient().getBastionHosts().createOrUpdate("rg1", "bastionhosttenant",
new BastionHostInner().withIpConfigurations(Arrays.asList(new BastionHostIpConfiguration()
.withName("bastionHostIpConfiguration")
.withSubnet(new SubResource().withId(
"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet"))
.withPublicIpAddress(new SubResource().withId(
"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName")))),
com.azure.core.util.Context.NONE);
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.network import NetworkManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-network
# USAGE
python bastion_host_put_with_zones.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = NetworkManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.bastion_hosts.begin_create_or_update(
resource_group_name="rg1",
bastion_host_name="bastionhosttenant",
parameters={
"properties": {
"ipConfigurations": [
{
"name": "bastionHostIpConfiguration",
"properties": {
"publicIPAddress": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName"
},
"subnet": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet"
},
},
}
]
}
},
).result()
print(response)
# x-ms-original-file: specification/network/resource-manager/Microsoft.Network/stable/2024-05-01/examples/BastionHostPutWithZones.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armnetwork_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v6"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/ab04533261eff228f28e08900445d0edef3eb70c/specification/network/resource-manager/Microsoft.Network/stable/2024-05-01/examples/BastionHostPutWithZones.json
func ExampleBastionHostsClient_BeginCreateOrUpdate_createBastionHostWithZones() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armnetwork.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewBastionHostsClient().BeginCreateOrUpdate(ctx, "rg1", "bastionhosttenant", armnetwork.BastionHost{
Properties: &armnetwork.BastionHostPropertiesFormat{
IPConfigurations: []*armnetwork.BastionHostIPConfiguration{
{
Name: to.Ptr("bastionHostIpConfiguration"),
Properties: &armnetwork.BastionHostIPConfigurationPropertiesFormat{
PublicIPAddress: &armnetwork.SubResource{
ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName"),
},
Subnet: &armnetwork.SubResource{
ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet"),
},
},
}},
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.BastionHost = armnetwork.BastionHost{
// Name: to.Ptr("bastionhost"),
// Type: to.Ptr("Microsoft.Network/bastionHosts"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'"),
// Location: to.Ptr("West US"),
// Etag: to.Ptr("w/\\00000000-0000-0000-0000-000000000000\\"),
// Properties: &armnetwork.BastionHostPropertiesFormat{
// DisableCopyPaste: to.Ptr(false),
// DNSName: to.Ptr("bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com"),
// EnableIPConnect: to.Ptr(false),
// EnableKerberos: to.Ptr(false),
// EnablePrivateOnlyBastion: to.Ptr(false),
// EnableSessionRecording: to.Ptr(false),
// EnableShareableLink: to.Ptr(false),
// EnableTunneling: to.Ptr(false),
// IPConfigurations: []*armnetwork.BastionHostIPConfiguration{
// {
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration"),
// Name: to.Ptr("bastionHostIpConfiguration"),
// Type: to.Ptr("Microsoft.Network/bastionHosts/bastionHostIpConfigurations"),
// Etag: to.Ptr("w/\\00000000-0000-0000-0000-000000000000\\"),
// Properties: &armnetwork.BastionHostIPConfigurationPropertiesFormat{
// PrivateIPAllocationMethod: to.Ptr(armnetwork.IPAllocationMethodDynamic),
// ProvisioningState: to.Ptr(armnetwork.ProvisioningStateSucceeded),
// PublicIPAddress: &armnetwork.SubResource{
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName"),
// },
// Subnet: &armnetwork.SubResource{
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet"),
// },
// },
// }},
// ProvisioningState: to.Ptr(armnetwork.ProvisioningStateSucceeded),
// ScaleUnits: to.Ptr[int32](2),
// },
// SKU: &armnetwork.SKU{
// Name: to.Ptr(armnetwork.BastionHostSKUNameStandard),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { NetworkManagementClient } = require("@azure/arm-network");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates or updates the specified Bastion Host.
*
* @summary Creates or updates the specified Bastion Host.
* x-ms-original-file: specification/network/resource-manager/Microsoft.Network/stable/2024-05-01/examples/BastionHostPutWithZones.json
*/
async function createBastionHostWithZones() {
const subscriptionId = process.env["NETWORK_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["NETWORK_RESOURCE_GROUP"] || "rg1";
const bastionHostName = "bastionhosttenant";
const parameters = {
ipConfigurations: [
{
name: "bastionHostIpConfiguration",
publicIPAddress: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName",
},
subnet: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet",
},
},
],
};
const credential = new DefaultAzureCredential();
const client = new NetworkManagementClient(credential, subscriptionId);
const result = await client.bastionHosts.beginCreateOrUpdateAndWait(
resourceGroupName,
bastionHostName,
parameters,
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
示例响应
{
"name": "bastionhost",
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'",
"type": "Microsoft.Network/bastionHosts",
"etag": "w/\\00000000-0000-0000-0000-000000000000\\",
"location": "West US",
"sku": {
"name": "Standard"
},
"properties": {
"provisioningState": "Succeeded",
"dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com",
"scaleUnits": 2,
"disableCopyPaste": false,
"enableTunneling": false,
"enableIpConnect": false,
"enableShareableLink": false,
"enableKerberos": false,
"enableSessionRecording": false,
"enablePrivateOnlyBastion": false,
"ipConfigurations": [
{
"name": "bastionHostIpConfiguration",
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration",
"etag": "w/\\00000000-0000-0000-0000-000000000000\\",
"type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations",
"properties": {
"provisioningState": "Succeeded",
"privateIPAllocationMethod": "Dynamic",
"subnet": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet"
},
"publicIPAddress": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName"
}
}
}
]
}
}
{
"name": "bastionhost'",
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'",
"type": "Microsoft.Network/bastionHosts",
"etag": "w/\\00000000-0000-0000-0000-000000000000\\",
"location": "West US",
"sku": {
"name": "Standard"
},
"properties": {
"provisioningState": "Succeeded",
"dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com",
"scaleUnits": 2,
"disableCopyPaste": false,
"enableTunneling": false,
"enableIpConnect": false,
"enableShareableLink": false,
"enableKerberos": false,
"enableSessionRecording": false,
"enablePrivateOnlyBastion": false,
"ipConfigurations": [
{
"name": "bastionHostIpConfiguration",
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration",
"etag": "w/\\00000000-0000-0000-0000-000000000000\\",
"type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations",
"properties": {
"provisioningState": "Succeeded",
"privateIPAllocationMethod": "Dynamic",
"subnet": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet"
},
"publicIPAddress": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName"
}
}
}
]
}
}
Create Developer Bastion Host
示例请求
PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/bastionHosts/bastionhostdeveloper?api-version=2024-05-01
{
"properties": {
"virtualNetwork": {
"id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet2"
},
"networkAcls": {
"ipRules": [
{
"addressPrefix": "1.1.1.1/16"
}
]
},
"ipConfigurations": []
}
}
import com.azure.core.management.SubResource;
import com.azure.resourcemanager.network.fluent.models.BastionHostInner;
import com.azure.resourcemanager.network.models.BastionHostPropertiesFormatNetworkAcls;
import com.azure.resourcemanager.network.models.IpRule;
import java.util.Arrays;
/**
* Samples for BastionHosts CreateOrUpdate.
*/
public final class Main {
/*
* x-ms-original-file:
* specification/network/resource-manager/Microsoft.Network/stable/2024-05-01/examples/BastionHostDeveloperPut.json
*/
/**
* Sample code: Create Developer Bastion Host.
*
* @param azure The entry point for accessing resource management APIs in Azure.
*/
public static void createDeveloperBastionHost(com.azure.resourcemanager.AzureResourceManager azure) {
azure.networks().manager().serviceClient().getBastionHosts().createOrUpdate("rg2", "bastionhostdeveloper",
new BastionHostInner().withIpConfigurations(Arrays.asList())
.withVirtualNetwork(new SubResource().withId(
"/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet2"))
.withNetworkAcls(new BastionHostPropertiesFormatNetworkAcls()
.withIpRules(Arrays.asList(new IpRule().withAddressPrefix("1.1.1.1/16")))),
com.azure.core.util.Context.NONE);
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.network import NetworkManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-network
# USAGE
python bastion_host_developer_put.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = NetworkManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.bastion_hosts.begin_create_or_update(
resource_group_name="rg2",
bastion_host_name="bastionhostdeveloper",
parameters={
"properties": {
"ipConfigurations": [],
"networkAcls": {"ipRules": [{"addressPrefix": "1.1.1.1/16"}]},
"virtualNetwork": {
"id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet2"
},
}
},
).result()
print(response)
# x-ms-original-file: specification/network/resource-manager/Microsoft.Network/stable/2024-05-01/examples/BastionHostDeveloperPut.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armnetwork_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v6"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/ab04533261eff228f28e08900445d0edef3eb70c/specification/network/resource-manager/Microsoft.Network/stable/2024-05-01/examples/BastionHostDeveloperPut.json
func ExampleBastionHostsClient_BeginCreateOrUpdate_createDeveloperBastionHost() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armnetwork.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewBastionHostsClient().BeginCreateOrUpdate(ctx, "rg2", "bastionhostdeveloper", armnetwork.BastionHost{
Properties: &armnetwork.BastionHostPropertiesFormat{
IPConfigurations: []*armnetwork.BastionHostIPConfiguration{},
NetworkACLs: &armnetwork.BastionHostPropertiesFormatNetworkACLs{
IPRules: []*armnetwork.IPRule{
{
AddressPrefix: to.Ptr("1.1.1.1/16"),
}},
},
VirtualNetwork: &armnetwork.SubResource{
ID: to.Ptr("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet2"),
},
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.BastionHost = armnetwork.BastionHost{
// Name: to.Ptr("bastionhostdeveloper"),
// Type: to.Ptr("Microsoft.Network/bastionHosts"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/bastionHosts/bastionhostdeveloper'"),
// Location: to.Ptr("West US"),
// Etag: to.Ptr("w/\\00000000-0000-0000-0000-000000000000\\"),
// Properties: &armnetwork.BastionHostPropertiesFormat{
// DNSName: to.Ptr("omnibrain.uswest.bastionglobal.azure.com"),
// IPConfigurations: []*armnetwork.BastionHostIPConfiguration{
// },
// NetworkACLs: &armnetwork.BastionHostPropertiesFormatNetworkACLs{
// IPRules: []*armnetwork.IPRule{
// {
// AddressPrefix: to.Ptr("1.1.1.1/16"),
// }},
// },
// ProvisioningState: to.Ptr(armnetwork.ProvisioningStateSucceeded),
// VirtualNetwork: &armnetwork.SubResource{
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet2"),
// },
// },
// SKU: &armnetwork.SKU{
// Name: to.Ptr(armnetwork.BastionHostSKUNameDeveloper),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { NetworkManagementClient } = require("@azure/arm-network");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates or updates the specified Bastion Host.
*
* @summary Creates or updates the specified Bastion Host.
* x-ms-original-file: specification/network/resource-manager/Microsoft.Network/stable/2024-05-01/examples/BastionHostDeveloperPut.json
*/
async function createDeveloperBastionHost() {
const subscriptionId = process.env["NETWORK_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["NETWORK_RESOURCE_GROUP"] || "rg2";
const bastionHostName = "bastionhostdeveloper";
const parameters = {
ipConfigurations: [],
networkAcls: { ipRules: [{ addressPrefix: "1.1.1.1/16" }] },
virtualNetwork: {
id: "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet2",
},
};
const credential = new DefaultAzureCredential();
const client = new NetworkManagementClient(credential, subscriptionId);
const result = await client.bastionHosts.beginCreateOrUpdateAndWait(
resourceGroupName,
bastionHostName,
parameters,
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
示例响应
{
"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": []
}
}
{
"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": []
}
}
定义
BastionHost
Bastion 主机资源。
名称 |
类型 |
默认值 |
说明 |
etag
|
string
|
|
一个唯一的只读字符串,每当更新资源时更改。
|
id
|
string
|
|
资源 ID。
|
location
|
string
|
|
资源位置。
|
name
|
string
|
|
资源名称。
|
properties.disableCopyPaste
|
boolean
|
False
|
启用/禁用 Bastion 主机资源的复制/粘贴功能。
|
properties.dnsName
|
string
|
|
堡垒主机可访问的终结点的 FQDN。
|
properties.enableFileCopy
|
boolean
|
False
|
启用/禁用 Bastion 主机资源的文件复制功能。
|
properties.enableIpConnect
|
boolean
|
False
|
启用/禁用 Bastion 主机资源的 IP Connect 功能。
|
properties.enableKerberos
|
boolean
|
False
|
启用/禁用 Bastion 主机资源的 Kerberos 功能。
|
properties.enablePrivateOnlyBastion
|
boolean
|
False
|
启用/禁用 Bastion 主机资源的“仅专用”功能。
|
properties.enableSessionRecording
|
boolean
|
False
|
启用/禁用 Bastion 主机资源的会话录制功能。
|
properties.enableShareableLink
|
boolean
|
False
|
启用/禁用 Bastion 主机资源的可共享链接。
|
properties.enableTunneling
|
boolean
|
False
|
启用/禁用 Bastion 主机资源的隧道功能。
|
properties.ipConfigurations
|
BastionHostIPConfiguration[]
|
|
Bastion 主机资源的 IP 配置。
|
properties.networkAcls
|
NetworkAcls
|
|
|
properties.provisioningState
|
ProvisioningState
|
|
堡垒主机资源的预配状态。
|
properties.scaleUnits
|
integer
|
|
Bastion 主机资源的缩放单位。
|
properties.virtualNetwork
|
SubResource
|
|
仅对开发人员 Bastion 主机所需的现有虚拟网络的引用。
|
sku
|
Sku
|
|
此 Bastion 主机的 SKU。
|
tags
|
object
|
|
资源标记。
|
type
|
string
|
|
资源类型。
|
zones
|
string[]
|
|
一个可用性区域列表,表示资源需要来自何处。
|
BastionHostIPConfiguration
Bastion 主机的 IP 配置。
名称 |
类型 |
说明 |
etag
|
string
|
一个唯一的只读字符串,每当更新资源时更改。
|
id
|
string
|
资源 ID。
|
name
|
string
|
资源组中唯一的资源的名称。 此名称可用于访问资源。
|
properties.privateIPAllocationMethod
|
IPAllocationMethod
|
专用 IP 分配方法。
|
properties.provisioningState
|
ProvisioningState
|
堡垒主机 IP 配置资源的预配状态。
|
properties.publicIPAddress
|
SubResource
|
PublicIP 资源的引用。 仅专用堡垒的 Null
|
properties.subnet
|
SubResource
|
子网资源的引用。
|
type
|
string
|
Ip 配置类型。
|
BastionHostSkuName
此 Bastion 主机的 SKU 的名称。
名称 |
类型 |
说明 |
Basic
|
string
|
|
Developer
|
string
|
|
Premium
|
string
|
|
Standard
|
string
|
|
CloudError
服务的错误响应。
CloudErrorBody
服务的错误响应。
名称 |
类型 |
说明 |
code
|
string
|
错误的标识符。 代码是固定的,旨在以编程方式使用。
|
details
|
CloudErrorBody[]
|
有关错误的其他详细信息的列表。
|
message
|
string
|
描述错误的消息,旨在适合在用户界面中显示。
|
target
|
string
|
特定错误的目标。 例如,错误属性的名称。
|
IPAllocationMethod
IP 地址分配方法。
名称 |
类型 |
说明 |
Dynamic
|
string
|
|
Static
|
string
|
|
IPRule
名称 |
类型 |
说明 |
addressPrefix
|
string
|
以 CIDR 格式指定 IP 或 IP 范围。 仅允许 IPV4 地址。
|
NetworkAcls
名称 |
类型 |
说明 |
ipRules
|
IPRule[]
|
设置开发人员 Bastion 主机的 IP ACL 规则。
|
ProvisioningState
当前预配状态。
名称 |
类型 |
说明 |
Deleting
|
string
|
|
Failed
|
string
|
|
Succeeded
|
string
|
|
Updating
|
string
|
|
Sku
此 Bastion 主机的 SKU。
SubResource
对另一个子资源的引用。
名称 |
类型 |
说明 |
id
|
string
|
资源 ID。
|