Controlar el acceso a los servicios publicados
En esta página se describen las funciones que puedes usar para controlar el acceso a los servicios publicados mediante Private Service Connect.
Preferencias de conexión
Cada adjunto de servicio tiene una preferencia de conexión que controla si las conexiones se aceptan automáticamente.
- Aceptar todas las conexiones automáticamente. El adjunto de servicio acepta automáticamente todas las solicitudes de conexión entrantes de cualquier consumidor.
- Aceptar explícitamente las conexiones de los consumidores seleccionados. El adjunto de servicio solo acepta solicitudes de conexión entrantes si el consumidor está en la lista de consumidores aceptados del adjunto de servicio. Puedes especificar consumidores por proyecto, red de VPC o punto final de Private Service Connect individual (vista previa). No puedes incluir diferentes tipos de consumidores en la misma lista de aceptación o rechazo de consumidores.
En ambos casos, las conexiones aceptadas se pueden anular y rechazar mediante una política de organización que bloquee las conexiones entrantes.
Te recomendamos que aceptes explícitamente las conexiones de los consumidores seleccionados. Aceptar automáticamente todas las conexiones puede ser adecuado si controlas el acceso de los consumidores por otros medios y quieres habilitar el acceso permisivo a tu servicio.
Listas de aceptación y rechazo de consumidores
Las listas de aceptación de consumidores y las listas de rechazo de consumidores son una función de seguridad de los archivos adjuntos de servicios. Estas listas permiten a los productores de servicios especificar qué consumidores pueden establecer conexiones de Private Service Connect a sus servicios. Cuando un adjunto de servicio se configura para que se apruebe explícitamente, solo se acepta una conexión nueva si el consumidor está en la lista de aceptación y no en la de rechazo. Las actualizaciones de las listas de consumidores solo afectan a las conexiones nuevas, a menos que se habilite la opción Reconciliación de conexiones.
Las listas de consumidores aceptados y rechazados te permiten especificar consumidores de una de las siguientes formas:
- Proyecto
- Red VPC
Endpoint de Private Service Connect (vista previa)
Este método no se aplica a los backends de Private Service Connect.
Si añades el mismo consumidor a las listas de aceptación y rechazo, se le impedirá conectarse al adjunto de servicio. No se admite la especificación de consumidores por carpeta.
Ambas listas de consumidores de un adjunto de servicio deben contener el mismo tipo de consumidor. Por ejemplo, si añades un proyecto a una lista de elementos aceptados, no podrás añadir una red VPC ni un URI de endpoint a ninguna de las listas, a menos que sustituyas el proyecto de la lista de elementos aceptados por el nuevo tipo de consumidor.
Si quieres publicar un servicio que acepte diferentes tipos de consumidores, puedes crear varios adjuntos de servicio que se conecten al mismo servicio. Cada adjunto de servicio se puede configurar con su propia preferencia de conexión y listas de consumidores.
Puedes cambiar el tipo de consumidor de las listas de consumidores sin interrumpir las conexiones, pero debes hacer el cambio en una sola actualización. De lo contrario, la operación no se realizará.
Hay límites en el número de consumidores que puedes añadir a las listas de aceptación y rechazo:
- Puedes añadir un máximo de 5000 valores a la lista de aceptación de consumidores.
- Puedes añadir un máximo de 64 valores a la lista de rechazo de consumidores.
Las listas de consumidores controlan si un endpoint o un backend pueden conectarse a un servicio publicado, pero no controlan quién puede enviar solicitudes a ese endpoint. Por ejemplo, supongamos que un consumidor tiene una red de VPC compartida a la que tiene asociados dos proyectos de servicio. Si un servicio publicado tiene service-project1 en la lista de aceptación de consumidores y service-project2 en la lista de rechazo de consumidores, se aplican las siguientes condiciones:
-
Un consumidor de
service-project1puede crear un punto final que se conecte al servicio publicado. -
Un consumidor de
service-project2no puede crear un punto final que se conecte al servicio publicado. -
Un cliente de
service-project2puede enviar solicitudes al endpoint deservice-project1si no hay reglas ni políticas de cortafuegos que impidan ese tráfico.
Para obtener información sobre cómo interactúan las listas de aceptación de consumidores con las políticas de la organización, consulta el artículo Interacción entre las listas de aceptación de consumidores y las políticas de la organización.
Límites de listas de aceptación de consumidores
Las listas de aceptación de consumidores tienen límites de conexión. Estos límites definen el número total de conexiones de punto final de Private Service Connect que una vinculación de servicio puede aceptar del proyecto o la red de VPC del consumidor especificados.
Los productores pueden usar límites de conexión para evitar que los consumidores individuales agoten las direcciones IP o las cuotas de recursos en la red de VPC del productor. Cada conexión de Private Service Connect aceptada se resta del límite configurado para un proyecto o una red de VPC de consumidor. Los límites se definen al crear o actualizar listas de aceptación de consumidores. Puedes ver las conexiones de un archivo adjunto de servicio cuando describes un archivo adjunto de servicio.
Por ejemplo, supongamos que un adjunto de servicio tiene una lista de aceptación de consumidores que incluye project-1 y project-2, ambos con un límite de una conexión. El proyecto project-1 solicita dos conexiones, project-2 solicita una conexión y project-3 solicita una conexión. Como project-1 tiene un límite de una conexión, la primera se acepta y la segunda se queda pendiente.
Se acepta la conexión de project-2 y la de project-3 sigue pendiente. La segunda conexión de project-1 se puede aceptar aumentando el límite de project-1. Si se añade project-3 a la lista de aceptación del consumidor, esa conexión pasa de pendiente a aceptada.
Reconciliación de conexiones
La conciliación de conexiones determina si las actualizaciones de las listas de aceptación o rechazo de un adjunto de servicio pueden afectar a las conexiones de Private Service Connect. Si la conciliación de conexiones está habilitada, al actualizar las listas de aceptación o rechazo se pueden finalizar las conexiones existentes. Las conexiones que se hayan rechazado previamente se pueden aceptar. Si la conciliación de conexiones está inhabilitada, al actualizar las listas de aceptación o rechazo solo se verán afectadas las conexiones nuevas y pendientes.
Por ejemplo, supongamos que tienes un adjunto de servicio que tiene varias conexiones aceptadas de Project-A. Project-A está en la lista de
aceptación del adjunto de servicio. El archivo adjunto de servicio se actualiza quitando Project-A de la lista de aceptados.
Si la conciliación de conexiones está habilitada, todas las conexiones existentes de Project-A pasarán a PENDING, lo que finalizará la conectividad de red entre las dos redes VPC y detendrá inmediatamente el tráfico de red.
Si la conciliación de conexiones está inhabilitada, las conexiones de Project-A no se verán afectadas. El tráfico de red puede seguir fluyendo a través de las conexiones de Private Service Connect. Sin embargo, no se permiten las nuevas conexiones de Private Service Connect.
Para obtener información sobre cómo configurar la conciliación de conexiones para los nuevos elementos adjuntos de servicio, consulta Publicar un servicio con aprobación explícita.
Para obtener información sobre cómo configurar la conciliación de conexiones para los elementos ServiceAttachment, consulta Configurar la conciliación de conexiones.
Aceptar o rechazar conexiones de endpoints de Private Service Connect
Puedes aceptar o rechazar conexiones de puntos finales de Private Service Connect concretos añadiendo el URI basado en ID del punto final a una de las listas de consumidores de un adjunto de servicio. Este enfoque, que se recomienda para los servicios multiinquilino, ofrece el control más granular para gestionar las conexiones. La opción de aceptar consumidores por punto final de Private Service Connect solo se aplica a los puntos finales de Private Service Connect y no es compatible con los backends de Private Service Connect.
A diferencia de los proyectos o las redes de VPC, solo puedes aceptar o rechazar un endpoint de Private Service Connect individual después de que el consumidor lo cree. Esto se debe a que el URI único de un endpoint no se conoce hasta que el consumidor crea el endpoint. Para añadir un endpoint a una lista de aceptación de consumidores, debes seguir estos pasos:
- El productor publica un servicio que requiere aprobación explícita sin añadir ningún valor a la lista de aceptación del consumidor.
-
Un consumidor crea un endpoint que se conecta al servicio publicado. La conexión
se muestra en el archivo adjunto de servicio con el estado
Pending. - Para encontrar el URI basado en el ID del endpoint pendiente, el productor puede describir el adjunto de servicio o el consumidor puede describir el endpoint.
-
El productor añade el URI basado en el ID del endpoint a la lista de aceptación del consumidor. Se establece la conexión y su estado cambia a
Accepted.