Crea o actualiza el host de Bastion especificado.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}?api-version=2024-05-01
Parámetros de identificador URI
Nombre |
En |
Requerido |
Tipo |
Description |
bastionHostName
|
path |
True
|
string
|
Nombre del host de Bastion.
|
resourceGroupName
|
path |
True
|
string
|
Nombre del grupo de recursos.
|
subscriptionId
|
path |
True
|
string
|
Credenciales de suscripción que identifican de forma única la suscripción de Microsoft Azure. El identificador de suscripción forma parte del URI de cada llamada de servicio.
|
api-version
|
query |
True
|
string
|
Versión de la API de cliente.
|
Cuerpo de la solicitud
Nombre |
Tipo |
Description |
id
|
string
|
Identificador de recurso.
|
location
|
string
|
Ubicación del recurso.
|
properties.disableCopyPaste
|
boolean
|
Habilite o deshabilite la característica Copiar y pegar del recurso de host de Bastion.
|
properties.dnsName
|
string
|
FQDN para el punto de conexión en el que se puede acceder al host bastión.
|
properties.enableFileCopy
|
boolean
|
Habilite o deshabilite la característica Copia de archivos del recurso de host de Bastion.
|
properties.enableIpConnect
|
boolean
|
Habilite o deshabilite la característica Conexión IP del recurso de host de Bastion.
|
properties.enableKerberos
|
boolean
|
Habilite o deshabilite la característica Kerberos del recurso de host de Bastion.
|
properties.enablePrivateOnlyBastion
|
boolean
|
Habilite o deshabilite la característica Solo privada del recurso de host de Bastion.
|
properties.enableSessionRecording
|
boolean
|
Habilite o deshabilite la característica Grabación de sesión del recurso de host de Bastion.
|
properties.enableShareableLink
|
boolean
|
Habilite o deshabilite el vínculo que se puede compartir del recurso de host de Bastion.
|
properties.enableTunneling
|
boolean
|
Habilite o deshabilite la característica tunelización del recurso de host de Bastion.
|
properties.ipConfigurations
|
BastionHostIPConfiguration[]
|
Configuración de IP del recurso de host de Bastion.
|
properties.networkAcls
|
NetworkAcls
|
|
properties.scaleUnits
|
integer
|
Unidades de escalado para el recurso de host de Bastion.
|
properties.virtualNetwork
|
SubResource
|
Referencia a una red virtual existente necesaria solo para el host de Bastion para desarrolladores.
|
sku
|
Sku
|
SKU de este host de Bastion.
|
tags
|
object
|
Etiquetas de recursos.
|
zones
|
string[]
|
Lista de zonas de disponibilidad de las que se indica dónde debe proceder el recurso.
|
Respuestas
Nombre |
Tipo |
Description |
200 OK
|
BastionHost
|
Se ha actualizado correctamente. La operación devuelve el recurso host de Bastion resultante.
|
201 Created
|
BastionHost
|
Cree correctamente. La operación devuelve el recurso host de Bastion resultante.
|
Other Status Codes
|
CloudError
|
Respuesta de error que describe por qué se produjo un error en la operación.
|
Seguridad
azure_auth
Flujo de OAuth2 de Azure Active Directory.
Tipo:
oauth2
Flujo:
implicit
Dirección URL de autorización:
https://login.microsoftonline.com/common/oauth2/authorize
Ámbitos
Nombre |
Description |
user_impersonation
|
suplantar la cuenta de usuario
|
Ejemplos
Create Bastion Host
Solicitud de ejemplo
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
Respuesta de muestra
{
"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
Solicitud de ejemplo
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
Respuesta de muestra
{
"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
Solicitud de ejemplo
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
Respuesta de muestra
{
"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
Solicitud de ejemplo
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
Respuesta de muestra
{
"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": []
}
}
Definiciones
BastionHost
Recurso de host de Bastion.
Nombre |
Tipo |
Valor predeterminado |
Description |
etag
|
string
|
|
Cadena de solo lectura única que cambia cada vez que se actualiza el recurso.
|
id
|
string
|
|
Identificador de recurso.
|
location
|
string
|
|
Ubicación del recurso.
|
name
|
string
|
|
Nombre del recurso.
|
properties.disableCopyPaste
|
boolean
|
False
|
Habilite o deshabilite la característica Copiar y pegar del recurso de host de Bastion.
|
properties.dnsName
|
string
|
|
FQDN para el punto de conexión en el que se puede acceder al host bastión.
|
properties.enableFileCopy
|
boolean
|
False
|
Habilite o deshabilite la característica Copia de archivos del recurso de host de Bastion.
|
properties.enableIpConnect
|
boolean
|
False
|
Habilite o deshabilite la característica Conexión IP del recurso de host de Bastion.
|
properties.enableKerberos
|
boolean
|
False
|
Habilite o deshabilite la característica Kerberos del recurso de host de Bastion.
|
properties.enablePrivateOnlyBastion
|
boolean
|
False
|
Habilite o deshabilite la característica Solo privada del recurso de host de Bastion.
|
properties.enableSessionRecording
|
boolean
|
False
|
Habilite o deshabilite la característica Grabación de sesión del recurso de host de Bastion.
|
properties.enableShareableLink
|
boolean
|
False
|
Habilite o deshabilite el vínculo que se puede compartir del recurso de host de Bastion.
|
properties.enableTunneling
|
boolean
|
False
|
Habilite o deshabilite la característica tunelización del recurso de host de Bastion.
|
properties.ipConfigurations
|
BastionHostIPConfiguration[]
|
|
Configuración de IP del recurso de host de Bastion.
|
properties.networkAcls
|
NetworkAcls
|
|
|
properties.provisioningState
|
ProvisioningState
|
|
Estado de aprovisionamiento del recurso de host bastión.
|
properties.scaleUnits
|
integer
|
|
Unidades de escalado para el recurso de host de Bastion.
|
properties.virtualNetwork
|
SubResource
|
|
Referencia a una red virtual existente necesaria solo para el host de Bastion para desarrolladores.
|
sku
|
Sku
|
|
SKU de este host de Bastion.
|
tags
|
object
|
|
Etiquetas de recursos.
|
type
|
string
|
|
Tipo de recurso.
|
zones
|
string[]
|
|
Lista de zonas de disponibilidad de las que se indica dónde debe proceder el recurso.
|
BastionHostIPConfiguration
Configuración de IP de un host de Bastion.
Nombre |
Tipo |
Description |
etag
|
string
|
Cadena de solo lectura única que cambia cada vez que se actualiza el recurso.
|
id
|
string
|
Identificador de recurso.
|
name
|
string
|
Nombre del recurso que es único dentro de un grupo de recursos. Este nombre se puede usar para acceder al recurso.
|
properties.privateIPAllocationMethod
|
IPAllocationMethod
|
Método de asignación de IP privada.
|
properties.provisioningState
|
ProvisioningState
|
Estado de aprovisionamiento del recurso de configuración de IP del host bastión.
|
properties.publicIPAddress
|
SubResource
|
Referencia del recurso PublicIP. Null solo para bastión privado
|
properties.subnet
|
SubResource
|
Referencia del recurso de subred.
|
type
|
string
|
Tipo de configuración ip.
|
BastionHostSkuName
Nombre de la SKU de este host de Bastion.
Nombre |
Tipo |
Description |
Basic
|
string
|
|
Developer
|
string
|
|
Premium
|
string
|
|
Standard
|
string
|
|
CloudError
Respuesta de error del servicio.
Nombre |
Tipo |
Description |
error
|
CloudErrorBody
|
Cuerpo del error en la nube.
|
CloudErrorBody
Respuesta de error del servicio.
Nombre |
Tipo |
Description |
code
|
string
|
Identificador del error. Los códigos son invariables y están diseñados para consumirse mediante programación.
|
details
|
CloudErrorBody[]
|
Lista de detalles adicionales sobre el error.
|
message
|
string
|
Mensaje que describe el error, diseñado para ser adecuado para mostrarse en una interfaz de usuario.
|
target
|
string
|
Destino del error concreto. Por ejemplo, el nombre de la propiedad en error.
|
IPAllocationMethod
Método de asignación de direcciones IP.
Nombre |
Tipo |
Description |
Dynamic
|
string
|
|
Static
|
string
|
|
IPRule
Nombre |
Tipo |
Description |
addressPrefix
|
string
|
Especifica el intervalo IP o IP en formato CIDR. Solo se permite la dirección IPV4.
|
NetworkAcls
Nombre |
Tipo |
Description |
ipRules
|
IPRule[]
|
Establece las reglas de ACL de IP para el host de Bastion para desarrolladores.
|
ProvisioningState
Estado de aprovisionamiento actual.
Nombre |
Tipo |
Description |
Deleting
|
string
|
|
Failed
|
string
|
|
Succeeded
|
string
|
|
Updating
|
string
|
|
Sku
SKU de este host de Bastion.
Nombre |
Tipo |
Valor predeterminado |
Description |
name
|
BastionHostSkuName
|
Standard
|
Nombre de la SKU de este host de Bastion.
|
SubResource
Referencia a otro subrecurso.
Nombre |
Tipo |
Description |
id
|
string
|
Identificador de recurso.
|