Espacio de nombres: microsoft.graph.networkaccess
Importante
Las API de la versión /beta de Microsoft Graph están sujetas a cambios. No se admite el uso de estas API en aplicaciones de producción. Para determinar si una API está disponible en la versión 1.0, use el selector de Versión.
Cree un sitio de sucursal con vínculos de dispositivo asociados.
Esta API está disponible en las siguientes implementaciones nacionales de nube.
| Servicio global |
Gobierno de EE. UU. L4 |
Us Government L5 (DOD) |
China operada por 21Vianet |
| ✅ |
❌ |
❌ |
❌ |
Permissions
Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use un permiso o permisos con privilegios superiores solo si la aplicación lo requiere. Para obtener más información sobre los permisos delegados y de aplicación, consulte Tipos de permisos. Para obtener más información sobre estos permisos, consulte la referencia de permisos.
| Tipo de permiso |
Permisos con privilegios mínimos |
Permisos con privilegios más altos |
| Delegado (cuenta profesional o educativa) |
NetworkAccess.ReadWrite.All |
No disponible. |
| Delegado (cuenta personal de Microsoft) |
No admitida. |
No admitida. |
| Aplicación |
NetworkAccess.ReadWrite.All |
No disponible. |
Importante
En escenarios delegados con cuentas profesionales o educativas, al usuario que ha iniciado sesión se le debe asignar un rol de Microsoft Entra compatible o un rol personalizado con un permiso de rol admitido. Se admiten los siguientes roles con privilegios mínimos para esta operación.
- Administrador de acceso seguro global
- Administrador de seguridad
Solicitud HTTP
POST /networkAccess/connectivity/branches/{branchSiteId}/deviceLinks
| Nombre |
Descripción |
| Authorization |
{token} de portador. Obligatorio. Obtenga más información sobre la autenticación y la autorización. |
| Content-Type |
application/json. Obligatorio. |
Cuerpo de la solicitud
En el cuerpo de la solicitud, proporcione una representación JSON del objeto microsoft.graph.networkaccess.deviceLink .
Puede especificar las siguientes propiedades al crear un deviceLink.
| Propiedad |
Tipo |
Descripción |
| name |
Cadena |
Nombre o identificador asociado a un vínculo de dispositivo. Obligatorio. |
| ipAddress |
Cadena |
Dirección IP asociada a un vínculo de dispositivo. Obligatorio. |
| deviceVendor |
microsoft.graph.networkaccess.deviceVendor |
Proveedor o fabricante del dispositivo asociado a un vínculo de dispositivo. Los valores posibles son: barracudaNetworks, checkPoint, , ciscoMeraki, fortinetcitrix, hpeAruba, netFoundry, , nuage, openSystems, paloAltoNetworks, riverbedTechnology, , silverPeak, vmWareSdWan, , versa. other Obligatorio. |
| lastModifiedDateTime |
DateTimeOffset |
Fecha y hora en que se modificó por última vez el vínculo del dispositivo. Obligatorio. |
| tunnelConfiguration |
microsoft.graph.networkaccess.tunnelConfiguration |
Los valores de configuración del túnel asociados a un vínculo de dispositivo. Obligatorio. |
| bgpConfiguration |
microsoft.graph.networkaccess.bgpConfiguration |
Los valores de configuración del Protocolo de puerta de enlace de borde (BGP) asociados a un vínculo de dispositivo. Obligatorio. |
Respuesta
Si se ejecuta correctamente, este método devuelve un 201 Created código de respuesta y un objeto microsoft.graph.networkaccess.deviceLink en el cuerpo de la respuesta.
Ejemplos
Solicitud
En el ejemplo siguiente se muestra la solicitud.
POST https://graph.microsoft.com/beta/networkAccess/connectivity/branches/19a92090-c14e-4cea-a933-27d38f72c4d1/deviceLinks
Content-Type: application/json
{
"name": "device link 1",
"ipAddress": "24.123.22.168",
"deviceVendor": "intel",
"bandwidthCapacityInMbps": "mbps250",
"bgpConfiguration":
{
"localIpAddress": "1.128.24.22",
"peerIpAddress": "1.128.24.28",
"asn": 4
},
"redundancyConfiguration":
{
"zoneLocalIpAddress": "1.128.23.20",
"redundancyTier": "zoneRedundancy"
},
"tunnelConfiguration":
{
"@odata.type": "microsoft.graph.networkAccess.tunnelConfigurationIKEv2Default",
"preSharedKey": "/microsoft/keyVault/placeholder"
}
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Models.Networkaccess;
var requestBody = new DeviceLink
{
Name = "device link 1",
IpAddress = "24.123.22.168",
DeviceVendor = DeviceVendor.BarracudaNetworks,
BandwidthCapacityInMbps = BandwidthCapacityInMbps.Mbps250,
BgpConfiguration = new BgpConfiguration
{
LocalIpAddress = "1.128.24.22",
PeerIpAddress = "1.128.24.28",
Asn = 4,
},
RedundancyConfiguration = new RedundancyConfiguration
{
ZoneLocalIpAddress = "1.128.23.20",
RedundancyTier = RedundancyTier.ZoneRedundancy,
},
TunnelConfiguration = new TunnelConfiguration
{
OdataType = "microsoft.graph.networkAccess.tunnelConfigurationIKEv2Default",
PreSharedKey = "/microsoft/keyVault/placeholder",
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.NetworkAccess.Connectivity.Branches["{branchSite-id}"].DeviceLinks.PostAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphmodelsnetworkaccess "github.com/microsoftgraph/msgraph-beta-sdk-go/models/networkaccess"
//other-imports
)
requestBody := graphmodelsnetworkaccess.NewDeviceLink()
name := "device link 1"
requestBody.SetName(&name)
ipAddress := "24.123.22.168"
requestBody.SetIpAddress(&ipAddress)
deviceVendor := graphmodels.INTEL_DEVICEVENDOR
requestBody.SetDeviceVendor(&deviceVendor)
bandwidthCapacityInMbps := graphmodels.MBPS250_BANDWIDTHCAPACITYINMBPS
requestBody.SetBandwidthCapacityInMbps(&bandwidthCapacityInMbps)
bgpConfiguration := graphmodelsnetworkaccess.NewBgpConfiguration()
localIpAddress := "1.128.24.22"
bgpConfiguration.SetLocalIpAddress(&localIpAddress)
peerIpAddress := "1.128.24.28"
bgpConfiguration.SetPeerIpAddress(&peerIpAddress)
asn := int32(4)
bgpConfiguration.SetAsn(&asn)
requestBody.SetBgpConfiguration(bgpConfiguration)
redundancyConfiguration := graphmodelsnetworkaccess.NewRedundancyConfiguration()
zoneLocalIpAddress := "1.128.23.20"
redundancyConfiguration.SetZoneLocalIpAddress(&zoneLocalIpAddress)
redundancyTier := graphmodels.ZONEREDUNDANCY_REDUNDANCYTIER
redundancyConfiguration.SetRedundancyTier(&redundancyTier)
requestBody.SetRedundancyConfiguration(redundancyConfiguration)
tunnelConfiguration := graphmodelsnetworkaccess.NewTunnelConfiguration()
preSharedKey := "/microsoft/keyVault/placeholder"
tunnelConfiguration.SetPreSharedKey(&preSharedKey)
requestBody.SetTunnelConfiguration(tunnelConfiguration)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
deviceLinks, err := graphClient.NetworkAccess().Connectivity().Branches().ByBranchSiteId("branchSite-id").DeviceLinks().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.beta.models.networkaccess.DeviceLink deviceLink = new com.microsoft.graph.beta.models.networkaccess.DeviceLink();
deviceLink.setName("device link 1");
deviceLink.setIpAddress("24.123.22.168");
deviceLink.setDeviceVendor(com.microsoft.graph.beta.models.networkaccess.DeviceVendor.BarracudaNetworks);
deviceLink.setBandwidthCapacityInMbps(com.microsoft.graph.beta.models.networkaccess.BandwidthCapacityInMbps.Mbps250);
com.microsoft.graph.beta.models.networkaccess.BgpConfiguration bgpConfiguration = new com.microsoft.graph.beta.models.networkaccess.BgpConfiguration();
bgpConfiguration.setLocalIpAddress("1.128.24.22");
bgpConfiguration.setPeerIpAddress("1.128.24.28");
bgpConfiguration.setAsn(4);
deviceLink.setBgpConfiguration(bgpConfiguration);
com.microsoft.graph.beta.models.networkaccess.RedundancyConfiguration redundancyConfiguration = new com.microsoft.graph.beta.models.networkaccess.RedundancyConfiguration();
redundancyConfiguration.setZoneLocalIpAddress("1.128.23.20");
redundancyConfiguration.setRedundancyTier(com.microsoft.graph.beta.models.networkaccess.RedundancyTier.ZoneRedundancy);
deviceLink.setRedundancyConfiguration(redundancyConfiguration);
com.microsoft.graph.beta.models.networkaccess.TunnelConfiguration tunnelConfiguration = new com.microsoft.graph.beta.models.networkaccess.TunnelConfiguration();
tunnelConfiguration.setOdataType("microsoft.graph.networkAccess.tunnelConfigurationIKEv2Default");
tunnelConfiguration.setPreSharedKey("/microsoft/keyVault/placeholder");
deviceLink.setTunnelConfiguration(tunnelConfiguration);
com.microsoft.graph.models.networkaccess.DeviceLink result = graphClient.networkAccess().connectivity().branches().byBranchSiteId("{branchSite-id}").deviceLinks().post(deviceLink);
const options = {
authProvider,
};
const client = Client.init(options);
const deviceLink = {
name: 'device link 1',
ipAddress: '24.123.22.168',
deviceVendor: 'intel',
bandwidthCapacityInMbps: 'mbps250',
bgpConfiguration:
{
localIpAddress: '1.128.24.22',
peerIpAddress: '1.128.24.28',
asn: 4
},
redundancyConfiguration:
{
zoneLocalIpAddress: '1.128.23.20',
redundancyTier: 'zoneRedundancy'
},
tunnelConfiguration:
{
'@odata.type': 'microsoft.graph.networkAccess.tunnelConfigurationIKEv2Default',
preSharedKey: '/microsoft/keyVault/placeholder'
}
};
await client.api('/networkAccess/connectivity/branches/19a92090-c14e-4cea-a933-27d38f72c4d1/deviceLinks')
.version('beta')
.post(deviceLink);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Models\Networkaccess\DeviceLink;
use Microsoft\Graph\Beta\Generated\Models\Networkaccess\DeviceVendor;
use Microsoft\Graph\Beta\Generated\Models\Networkaccess\BandwidthCapacityInMbps;
use Microsoft\Graph\Beta\Generated\Models\Networkaccess\BgpConfiguration;
use Microsoft\Graph\Beta\Generated\Models\Networkaccess\RedundancyConfiguration;
use Microsoft\Graph\Beta\Generated\Models\Networkaccess\RedundancyTier;
use Microsoft\Graph\Beta\Generated\Models\Networkaccess\TunnelConfiguration;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new DeviceLink();
$requestBody->setName('device link 1');
$requestBody->setIpAddress('24.123.22.168');
$requestBody->setDeviceVendor(new DeviceVendor('intel'));
$requestBody->setBandwidthCapacityInMbps(new BandwidthCapacityInMbps('mbps250'));
$bgpConfiguration = new BgpConfiguration();
$bgpConfiguration->setLocalIpAddress('1.128.24.22');
$bgpConfiguration->setPeerIpAddress('1.128.24.28');
$bgpConfiguration->setAsn(4);
$requestBody->setBgpConfiguration($bgpConfiguration);
$redundancyConfiguration = new RedundancyConfiguration();
$redundancyConfiguration->setZoneLocalIpAddress('1.128.23.20');
$redundancyConfiguration->setRedundancyTier(new RedundancyTier('zoneRedundancy'));
$requestBody->setRedundancyConfiguration($redundancyConfiguration);
$tunnelConfiguration = new TunnelConfiguration();
$tunnelConfiguration->setOdataType('microsoft.graph.networkAccess.tunnelConfigurationIKEv2Default');
$tunnelConfiguration->setPreSharedKey('/microsoft/keyVault/placeholder');
$requestBody->setTunnelConfiguration($tunnelConfiguration);
$result = $graphServiceClient->networkAccess()->connectivity()->branches()->byBranchSiteId('branchSite-id')->deviceLinks()->post($requestBody)->wait();
Import-Module Microsoft.Graph.Beta.NetworkAccess
$params = @{
name = "device link 1"
ipAddress = "24.123.22.168"
deviceVendor = "intel"
bandwidthCapacityInMbps = "mbps250"
bgpConfiguration = @{
localIpAddress = "1.128.24.22"
peerIpAddress = "1.128.24.28"
asn = 4
}
redundancyConfiguration = @{
zoneLocalIpAddress = "1.128.23.20"
redundancyTier = "zoneRedundancy"
}
tunnelConfiguration = @{
"@odata.type" = "microsoft.graph.networkAccess.tunnelConfigurationIKEv2Default"
preSharedKey = "/microsoft/keyVault/placeholder"
}
}
New-MgBetaNetworkAccessConnectivityBranchDeviceLink -BranchSiteId $branchSiteId -BodyParameter $params
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.models.networkaccess.device_link import DeviceLink
from msgraph_beta.generated.models.device_vendor import DeviceVendor
from msgraph_beta.generated.models.bandwidth_capacity_in_mbps import BandwidthCapacityInMbps
from msgraph_beta.generated.models.networkaccess.bgp_configuration import BgpConfiguration
from msgraph_beta.generated.models.networkaccess.redundancy_configuration import RedundancyConfiguration
from msgraph_beta.generated.models.redundancy_tier import RedundancyTier
from msgraph_beta.generated.models.networkaccess.tunnel_configuration import TunnelConfiguration
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = DeviceLink(
name = "device link 1",
ip_address = "24.123.22.168",
device_vendor = DeviceVendor.BarracudaNetworks,
bandwidth_capacity_in_mbps = BandwidthCapacityInMbps.Mbps250,
bgp_configuration = BgpConfiguration(
local_ip_address = "1.128.24.22",
peer_ip_address = "1.128.24.28",
asn = 4,
),
redundancy_configuration = RedundancyConfiguration(
zone_local_ip_address = "1.128.23.20",
redundancy_tier = RedundancyTier.ZoneRedundancy,
),
tunnel_configuration = TunnelConfiguration(
odata_type = "microsoft.graph.networkAccess.tunnelConfigurationIKEv2Default",
pre_shared_key = "/microsoft/keyVault/placeholder",
),
)
result = await graph_client.network_access.connectivity.branches.by_branch_site_id('branchSite-id').device_links.post(request_body)
Respuesta
En el ejemplo siguiente se muestra la respuesta.
Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.
HTTP/1.1 201 Created
Content-Type: application/json
{
"@odata.type": "#microsoft.graph.networkaccess.deviceLink",
"id": "2f183529-b8d9-c6f1-0373-3a6beee36e38",
"name": "device link 1",
"ipAddress": "24.123.22.168",
"deviceVendor": "intel",
"bandwidthCapacityInMbps": "mbps250",
"redundancyConfiguration_redundancyTier": "zoneRedundancy",
"tunnelConfiguration_type": "microsoft.graph.networkAccess.tunnelConfigurationIKEv2Default",
"tunnelConfiguration_preSharedKey": "/microsoft/keyVault/placeholder"
}