Conexión privada a API Management con un punto de conexión privado entrante
SE APLICA A: Desarrollador | Básico | Estándar | Premium
Puede configurar un punto de conexión privado entrante para la instancia de API Management. Así, los clientes de la red privada podrán acceder de forma segura a la instancia con Azure Private Link.
El punto de conexión privado usa una dirección IP de una red virtual de Azure en la que se hospeda.
El tráfico de red entre un cliente en la red privada y la API Management recorre la red virtual y un servicio Private Link en la red troncal de Microsoft, lo que elimina la exposición desde la red pública de Internet.
Configure los valores del DNS personalizado o una zona privada Azure DNS para asignar el nombre de host de API Management a la dirección IP privada del punto de conexión.
Con un punto de conexión privado y Private Link, puede:
Crear varias conexiones de Private Link a una instancia de API Management.
Usar el punto de conexión privado para enviar tráfico de entrada a una conexión segura.
Usar la directiva para distinguir el tráfico que procede de un punto de conexión privado.
Limitar el tráfico de entrada solo a los puntos de conexión privados, lo que impide la filtración de datos.
Importante
Solo puede configurar una conexión de punto de conexión privado para el tráfico entrante a la instancia de API Management. Actualmente, no se admite el tráfico de salida.
Puede usar el modelo de red virtual externa o interna para establecer la conectividad saliente a puntos de conexión privados desde la instancia de API Management.
Para habilitar los puntos de conexión privados de entrada, la instancia de API Management no se puede insertar en una red virtual externa o interna.
Limitaciones
- Solo el punto de conexión de la puerta de enlace de la instancia de API Management es compatible con las conexiones de Private Link entrantes.
- Cada instancia de API Management admite 100 conexiones de Private Link como máximo.
- Las conexiones no se admiten en la puerta de enlace autohospedada ni en una puerta de enlace del espacio de trabajo.
Requisitos previos
- Tener una instancia de API Management existente. Cree una suscripción si todavía no lo ha hecho.
- La instancia de API Management debe hospedarse en la
stv2
plataforma de proceso. Por ejemplo, cree una nueva instancia o, si ya tiene una en el nivel de servicio Premium, habilite la redundancia de zona. - No implemente (inserte) la instancia en una red virtual externa ni interna.
- La instancia de API Management debe hospedarse en la
- Una red virtual o una subred para hospedar el punto de conexión privado. La subred puede contener otros recursos de Azure.
- (Recomendado) Una máquina virtual en la misma u otra subred en la red virtual para probar el punto de conexión privado.
Método de aprobación del punto de conexión privado
Normalmente un administrador de red crea un punto de conexión privado. En función de los permisos del control de acceso basado en rol (RBAC) de Azure, el punto de conexión privado que cree se aprueban automáticamente para enviar tráfico a la instancia de API Management o necesitan que el propietario apruebe manualmente la conexión.
Método de aprobación | Permisos mínimos de RBAC |
---|---|
Automático | Microsoft.Network/virtualNetworks/** Microsoft.Network/virtualNetworks/subnets/** Microsoft.Network/privateEndpoints/** Microsoft.Network/networkinterfaces/** Microsoft.Network/locations/availablePrivateEndpointTypes/read Microsoft.ApiManagement/service/** Microsoft.ApiManagement/service/privateEndpointConnections/** |
Manual | Microsoft.Network/virtualNetworks/** Microsoft.Network/virtualNetworks/subnets/** Microsoft.Network/privateEndpoints/** Microsoft.Network/networkinterfaces/** Microsoft.Network/locations/availablePrivateEndpointTypes/read |
Pasos para configurar un punto de conexión privado
- Tipos de puntos de conexión privados disponibles en la suscripción
- Deshabilitación de directivas de red en subred
- Creación de un punto de conexión privado: portal
- Lista de las conexiones de los puntos de conexión privados a la instancia
- Aprobación de la conexiones pendientes de punto de conexión privado
- Deshabilitación opcional del acceso a la red pública
Obtenga los tipos de puntos de conexión privados disponibles con la suscripción
Compruebe que el tipo de punto de conexión privado de API Management está disponible con su suscripción y en su ubicación. En el portal, busque esta información en Private Link Center. Seleccione Recursos compatibles.
También puede encontrar esta información en Tipos de puntos de conexión privados disponibles: lista de API de REST.
GET https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{region}/availablePrivateEndpointTypes?api-version=2021-03-01
La salida debe incluir el Microsoft.ApiManagement.service
tipo de punto de conexión:
[...]
"name": "Microsoft.ApiManagement.service",
"id": "/subscriptions/{subscriptionId}/providers/Microsoft.Network/AvailablePrivateEndpointTypes/Microsoft.ApiManagement.service",
"type": "Microsoft.Network/AvailablePrivateEndpointTypes",
"resourceName": "Microsoft.ApiManagement/service",
"displayName": "Microsoft.ApiManagement/service",
"apiVersion": "2021-04-01-preview"
}
[...]
Deshabilitación de directivas de red en subred
Las directivas de red, como los grupos de seguridad de red, deben deshabilitarse en la subred que se usó para el punto de conexión privado.
Si usa herramientas como Azure PowerShell, la Interfaz de la línea de comandos de Azure o la API de REST para configurar los puntos de conexión privados, actualice manualmente la configuración de la subred. Por ejemplo, consulte Administración de directivas de red de puntos de conexión privados.
Al usar Azure Portal para crear un punto de conexión privado, como se muestra en la siguiente sección, las directivas de red se deshabilitan automáticamente como parte del proceso de creación
Creación de un punto de conexión privado: portal
Vaya al servicio API Management en Azure Portal.
En el menú de la izquierda, seleccione Red.
Seleccione Conexiones de puntos de conexión privados entrantes>+ Agregar punto de conexión.
En la pestaña Aspectos básicos de Crear un punto de conexión privado, escriba o seleccione la siguiente información:
Configuración Value Detalles del proyecto Subscription Seleccione su suscripción. Resource group Seleccione un grupo de recursos existente, o bien cree uno. Debe estar en la misma región que la red virtual. Detalles de instancia Nombre Escriba un nombre para el punto de conexión privado, como myPrivateEndpoint. Nombre de la interfaz de red Escriba un nombre para la interfaz de red, como myInterface Region Seleccione una ubicación para el punto de conexión privado. Debe estar en la misma región que la red virtual. Puede ser distinta a la región en la que se hospeda la instancia de API Management. Seleccione la pestaña Recurso o el botón Siguiente: Recurso en la parte inferior de la página. Ya está rellenada la siguiente información sobre la instancia de API Management:
- Subscription
- Resource group
- Nombre del recurso
En Recurso, en subrecurso de destino, seleccione Puerta de enlace.
Seleccione la pestaña Virtual Network o el botón Siguiente: Virtual Network en la parte inferior de la pantalla.
En Redes, escriba o seleccione esta información:
Configuración Value Virtual network Seleccione la red virtual. Subnet Seleccione la subred. Configuración de IP privada En la mayoría de los casos, seleccione Asignar dinámicamente la dirección IP. Grupo de seguridad de aplicaciones Opcionalmente, seleccione un grupo de seguridad de aplicaciones. Seleccione la pestaña DNS o el botón Siguiente: DNS en la parte inferior de la página.
En Integración de DNS privado, escriba o seleccione esta información:
Configuración Valor Integración con una zona DNS privada Deje el valor predeterminado de Sí. Subscription Seleccione su suscripción. Grupos de recursos Seleccione el grupo de recursos que necesite. Zonas DNS privadas Se muestra el valor predeterminado: (nuevo) privatelink.azure-api.net. Seleccione la pestaña Etiquetas o el botón Siguiente: Etiquetas en la parte inferior de la página. Si lo desea, escriba etiquetas para organizar los recursos de Azure.
Seleccione Revisar + crear.
Seleccione Crear.
Lista de las conexiones de los puntos de conexión privados a la instancia
Una vez creado el punto de conexión privado, figura en la lista de la página de las Conexiones del punto de conexión privado entrantes de la instancia de API Management del portal.
También puede usar la Conexión del punto de conexión privado: lista por servicioAPI REST para enumerar las conexiones del punto de conexión privado a la instancia de servicio.
Tenga en cuenta el estado de la conexión del punto de conexión:
- Aprobada indica que el recurso API Management la aprobó automáticamente.
- Pendiente indica que el propietario del recurso tiene que aprobarla manualmente.
Aprobación de conexiones pendientes del punto de conexión privado
Si el estado de una conexión de punto de conexión privado es pendiente, un propietario de la instancia de API Management tiene que aprobarla manualmente para que pueda usarse.
Si tiene los permisos adecuados, apruebe una conexión de punto de conexión privado en la página Conexiones de puntos de conexión privado de la instancia de API Management en el portal.
También puede usar API Management Conexión de punto de conexión privado: crear o actualizar API de REST.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{apimServiceName}privateEndpointConnections/{privateEndpointConnectionName}?api-version=2021-08-01
Deshabilitación opcional del acceso a la red pública
Para limitar, de forma opcional, el tráfico de entrada solo de la instancia de API Management a los puntos de conexión privados, deshabilite el acceso a la red pública. Use el Servicio de API Management: crear o actualizar la API de REST para establecer la propiedad publicNetworkAccess
en Disabled
.
Nota:
La propiedad publicNetworkAccess
solo se puede usar para deshabilitar el acceso público a las instancias de API Management configuradas con un punto de conexión privado, no con otras configuraciones de red, como la inyección de red virtual.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{apimServiceName}?api-version=2021-08-01
Authorization: Bearer {{authToken.response.body.access_token}}
Content-Type: application/json
Use el siguiente cuerpo JSON:
{
[...]
"properties": {
"publicNetworkAccess": "Disabled"
}
}
Validación de una conexión del punto de conexión privado
Una vez creado el punto de conexión privado, confirme su configuración DNS en el portal:
Vaya al servicio API Management en Azure Portal.
En el menú de la izquierda, seleccione Red>Conexiones de punto de conexión privado entrantes y seleccione el punto de conexión privado que ha creado.
En el panel de navegación izquierdo, seleccione Configuración DNS.
Revise los registros de DNS y la dirección IP del punto de conexión privado. La dirección IP es una dirección privada en el espacio de direcciones de la subred en donde se configura el punto de conexión privado.
Prueba en la red virtual
Conéctese a una máquina virtual que haya configurado en la red virtual.
Ejecute una utilidad, como nslookup
o dig
, para buscar la dirección IP del punto de conexión de la puerta de enlace predeterminado a través de Private Link. Por ejemplo:
nslookup my-apim-service.azure-api.net
La salida debe incluir la dirección IP privada asociada al punto de conexión privado.
Las llamadas API iniciadas dentro de la red virtual al punto de conexión de la puerta de enlace predeterminada deberían hacerse correctamente.
Prueba de Internet
Desde el exterior de la ruta de acceso del punto de conexión privado, intente llamar al punto de conexión predeterminado de la puerta de enlace de la instancia de API Management. Si el acceso público está deshabilitado, la salida incluye un error con el código de estado 403
y un mensaje similar al siguiente:
Request originated from client public IP address xxx.xxx.xxx.xxx, public network access on this 'Microsoft.ApiManagement/service/my-apim-service' is disabled.
To connect to 'Microsoft.ApiManagement/service/my-apim-service', please use the Private Endpoint from inside your virtual network.
Pasos siguientes
- Use expresiones de la directiva con la
context.request
variable para identificar el tráfico desde el punto de conexión privado. - Obtenga más información sobre los puntos de conexión privados y Private Link, incluidos los precios de Private Link.
- Más información sobre la administración de las conexiones de punto de conexión privado.
- Solución de problemas de conectividad de puntos de conexión privados de Azure.
- Use una plantilla de Resource Manager para crear una instancia de API Management y un punto de conexión privado con integración DNS privada.