View a markdown version of this page

Configurar la conectividad de VPC para una fuente de datos - Amazon Bedrock

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Configurar la conectividad de VPC para una fuente de datos

Algunas fuentes de datos se ejecutan en recursos privados a los que no se puede acceder a través de la Internet pública, como una instancia local de Confluence Data Center en la que tienes un balanceador de cargas interno en tu VPC. Para rastrear estas fuentes de datos, debes crear una configuración de VPC. Amazon Bedrock usa la configuración para aprovisionar una ruta de red privada a su VPC y llegar al recurso.

La configuración de una VPC es un recurso reutilizable de su base de conocimientos. La crea una vez y, a continuación, hace referencia a ella por su ID desde una o más fuentes de datos. Cuando creas una fuente de datos que necesita conectividad privada, seleccionas una configuración de VPC existente o creas una nueva.

nota

Cuando Amazon Bedrock aprovisiona una configuración de VPC, asume una función AWS Identity and Access Management (IAM) asociada a su base de conocimientos para crear un pequeño conjunto de recursos de red en su cuenta. Todos los recursos que crea Amazon Bedrock están etiquetados ManagedBy=VPCProxyService y el rol solo puede actuar en los recursos que llevan esa etiqueta. Consulte Base de conocimiento: permisos de roles de IAM.

Lo que usted proporciona

Para crear una configuración de VPC, debes proporcionar lo siguiente:

Entradas de configuración de VPC
Input Por qué es necesaria
Una VPC y una o más subredes Donde Amazon Bedrock coloca el punto de entrada de la red (una puerta de enlace privada) en su VPC. Usted proporciona de 1 a 6 subredes desde la VPC elegida.
Un destino y un puerto de recursos La dirección IP privada o el nombre DNS (y el puerto) del recurso al que desea acceder.
Una función de IAM en la base de conocimientos Amazon Bedrock asume esta función para aprovisionar los recursos de red de su cuenta. Consulte Base de conocimiento: permisos de roles de IAM.

No proporciona grupos de seguridad. Amazon Bedrock usa el grupo de seguridad predeterminado de su VPC para la puerta de enlace. Asegúrese de que las reglas de salida (salida) del grupo de seguridad predeterminado permitan llegar a su destino en el puerto solicitado. Consulte Salir del grupo de seguridad predeterminado.

Requisitos de red

Amazon Bedrock llega a su recurso a través de una puerta de enlace privada que se crea únicamente con interfaces de red privadas (sin dirección IP pública). La puerta de enlace llega a su objetivo a través de la red privada (local) de su VPC y no puede acceder a las direcciones IP públicas. Tu destino de recursos debe ser accesible de forma privada desde tu VPC:

  • Un balanceador de cargas interno (scheme: internal) cuyo nombre de DNS se convierte en direcciones privadas (por ejemplo, 10.x172.x, o). 192.168.x

  • Una dirección IP privada o un nombre DNS privado que se resuelve en una dirección privada en la VPC.

No se admite un balanceador de cargas conectado a Internet. Un balanceador de cargas conectado a Internet devuelve sus direcciones IP públicas incluso a las consultas de DNS integradas en la VPC, y la puerta de enlace privada no puede acceder a esas direcciones. Si actualmente tu recurso solo está expuesto a través de un balanceador de cargas conectado a Internet, crea (o apunta a) un balanceador de cargas interno en la misma VPC y usa su nombre de DNS como destino del recurso.

Crea una configuración de VPC

Console
Para añadir una configuración de VPC
  1. En la configuración de la fuente de datos, en Configuración de VPC, elija Agregar configuración de VPC. Si ya existe una configuración adecuada, selecciónela para reutilizarla en todas las fuentes de datos.

  2. (Opcional) Introduzca un nombre y una descripción para la configuración.

  3. Para el ID de VPC, seleccione la VPC que se va a usar para la conectividad.

  4. Para los ID de subred, selecciona una o más subredes de la VPC elegida.

  5. En el destino del recurso, introduzca el nombre de host o la dirección IP de su recurso (por ejemplo, o). 10.0.1.50 confluence.internal.example.com

  6. En Puerto, introduzca el número de puerto al que desea conectarse (por ejemplo, 443 o8090).

  7. Para Protocolo, elija HTTPS o HTTP.

  8. En el modo de resolución, elija cómo se resolverá la dirección de destino del recurso:

    • Público: el destino del recurso es un nombre de host o una dirección IP que se puede resolver públicamente.

    • En la VPC: el destino del recurso solo se puede resolver en tu VPC. Este es el caso habitual de los recursos internos.

  9. (Opcional) En el encabezado del host, introduzca el valor del Host encabezado para enviar las solicitudes. Configúralo solo si tu recurso (o un router ascendente) se enruta por el Host encabezado HTTP.

  10. (Obligatorio para HTTPS) En el nombre del servidor TLS, introduzca la identidad del certificado TLS esperada (nombre alternativo del sujeto) para el recurso. Se permite un único comodín situado en el extremo izquierdo (por ejemplo,). *.example.com

  11. Seleccione Crear.

API

Para crear una configuración de VPC, envía una solicitud. CreateVpcConfiguration Todas las operaciones se asignan a una base de conocimientos mediante el parámetro knowledgeBaseId path; el cuerpo de la solicitud no incluye un identificador de cuenta ni un ARN de rol, ya que Amazon Bedrock los resuelve a partir de la base de conocimientos.

POST /knowledgebases/knowledgeBaseId/vpcconfigurations/

El cuerpo de la solicitud usa los siguientes campos.

CreateVpcConfiguration campos
Campo Obligatorio Descripción
vpcId Es el ID de la VPC. ^vpc-[a-zA-Z0-9]+$Coincidencias, hasta 64 caracteres.
subnetIds De 1 a 6 identificadores de subred de la VPC especificada. Cada uno coincide. ^subnet-[a-zA-Z0-9]+$
resourceTarget La dirección IPv4 o el nombre DNS del recurso (de 1 a 255 caracteres). Consulte Restricciones de destino de recursos.
port El puerto al que conectarse (1—65535).
protocol HTTP o bien HTTPS.
resolutionMode PUBLIC o bien IN_VPC. Úselo IN_VPC cuando el objetivo se resuelva solo dentro de su VPC.
tlsServerName Condicional Necesario cuando lo protocol esHTTPS. El nombre de host coincide con el certificado TLS del recurso (hasta 253 caracteres). Se permite un único comodín situado en el extremo izquierdo. No debe incluir ningún puerto.
hostHeader No El valor del Host encabezado HTTP que se va a enviar (hasta 255 caracteres). Configúralo solo si el recurso se dirige por el Host encabezado.
name No Un nombre legible para los humanos (de 1 a 128 caracteres).
description No Una descripción (hasta 512 caracteres).
clientToken No Un símbolo de idempotencia.

La creación es asincrónica. CreateVpcConfigurationdevuelve una 202 respuesta con un vpcConfigurationId y un estado de. CREATING GetVpcConfigurationSondea hasta que el estado sea CREATED (oCREATE_FAILED, en ese casostatusMessage, indique la causa). ListVpcConfigurationsUtilícelo para DeleteVpcConfiguration enumerar las configuraciones y eliminar una.

nota

Si creas varias configuraciones en la misma VPC con el mismo conjunto de subredes, comparten una puerta de enlace. Un conjunto diferente de subredes aprovisiona una puerta de enlace independiente.

Protocolo, nombre del servidor TLS y encabezado del host

Estas tres opciones son las que se configuran mal con más frecuencia. Utilice la siguiente guía para elegir los valores correctos.

protocol

Elija invocar el recurso HTTP a través de HTTP de texto sin formato o HTTPS a través de TLS.

tlsServerName

Obligatorio cuando es. protocol HTTPS Es el nombre del servidor que coincide con los nombres alternativos del sujeto del certificado TLS del recurso durante la invocación. Configúralo en el nombre de host para el que se emitió el certificado (por ejemplo,). app.internal.example.com Se permite un único comodín situado en el extremo izquierdo (por ejemplo,). *.example.com Si se accede al recurso mediante una dirección IP pero se presenta un certificado como nombre, configúrelo tlsServerName con ese nombre. Si el certificado no coincide, la invocación no supera la comprobación de identidad de TLS. Este valor debe ser un nombre de host sin puerto.

hostHeader

Opcional y un problema de nivel de aplicación que es independiente de. tlsServerName Configúralo solo si tu recurso, o un router ascendente o una entrada, se enruta por el Host encabezado HTTP y ese host es diferente del que enviarías de otro modo. Si el recurso se dirige a un solo sitio y no pasa por élHost, déjelo sin definir.

resolutionMode

Elija PUBLIC si el destino del recurso es un nombre que se pueda resolver públicamente o una dirección IP pública. Elija IN_VPC si el destino del recurso se resuelve solo dentro de su VPC (DNS privada o dirección IP privada), que es el caso habitual en los recursos internos. Un objetivo de IP literalmente privado (por ejemplo10.0.5.20) funciona en cualquiera de los dos modos, porque no hay ningún nombre de DNS que resolver.

Restricciones de destino de recursos

Amazon Bedrock las valida resourceTarget al crear la configuración para evitar que el servicio se dirija a sí mismo o a la infraestructura interna. Se rechazan los siguientes objetivos:

  • Direcciones de bucle invertido (127.0.0.0/8,::1) y. localhost

  • Link-local direcciones (169.254.0.0/16,fe80::/10), incluido el punto final de los metadatos de la instancia. 169.254.169.254

  • La dirección comodín o cualquier dirección local (0.0.0.0,::) y el bloque. 0.0.0.0/8

  • Direcciones de multidifusión.

  • Literales de IPv6. La puerta de enlace está aprovisionada IPv4-only, por lo que los destinos IP deben ser una dirección IPv4 con cuatro puntos.

Se permiten los nombres DNS. La validación no los resuelve, por lo que el destino debe seguir siendo accesible desde las subredes de la puerta de enlace.

Salir del grupo de seguridad predeterminado

Como Amazon Bedrock usa el grupo de seguridad predeterminado de su VPC para la puerta de enlace, las reglas de salida de ese grupo de seguridad deben permitir acceder a él. resourceTarget port Si el grupo de seguridad predeterminado está bloqueado, la creación se produce rápidamente y se emite un mensaje claro, en lugar de agotarse el tiempo de espera más tarde. Antes de crear la configuración, asegúrese de que una regla de salida permita el tráfico desde las subredes de la puerta de enlace al destino y al puerto.

Base de conocimiento: permisos de roles de IAM

Amazon Bedrock asume la función de IAM asociada a su base de conocimientos para aprovisionar y, posteriormente, desmantelar los recursos de red de su cuenta. El rol debe conceder los permisos de creación y eliminación que se indican a continuación, así como los permisos de lectura que hacen que las eliminaciones reintentadas sean idempotentes. Todos los recursos que crea Amazon Bedrock están etiquetados ManagedBy=VPCProxyService y los permisos destructivos de esa etiqueta están restringidos, por lo que el rol solo puede actuar en los recursos creados por esta función.

  • Cree:vpc-lattice:CreateResourceGateway,,vpc-lattice:CreateResourceConfiguration,vpc-lattice:TagResource, vpc-lattice:PutResourcePolicy ram:CreateResourceShareram:TagResource, y iam:CreateServiceLinkedRole (una sola vezram:AssociateResourceShare, para la función vinculada al servicio VPC Lattice).

  • Elimine —, vpc-lattice:DeleteResourceGateway y. vpc-lattice:DeleteResourceConfiguration ram:DeleteResourceShare

  • Leer (validación e idempotencia) vpc-lattice:GetResourceGateway,,vpc-lattice:GetResourceConfiguration, ram:GetResourceShares ec2:DescribeSubnetsec2:DescribeSecurityGroups, y. ec2:DescribeVpcs

importante

Otorga ambos yvpc-lattice:GetResourceGateway. vpc-lattice:GetResourceConfiguration Como los permisos de eliminación tienen un ámbito de etiqueta, al eliminar un recurso ya eliminado se produce un error de acceso denegado en lugar de un error de no encontrado. Amazon Bedrock utiliza estos permisos de lectura sin etiquetar para diferenciar un recurso ya eliminado (considerado como correcto) de un problema de permisos real. Sin ellos, una eliminación que se vuelva a intentar después de un error parcial puede quedar estancada.

El siguiente ejemplo de política otorga los permisos necesarios. Reemplace region y accountId con sus valores.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VpcProxyCreateTagged", "Effect": "Allow", "Action": [ "vpc-lattice:CreateResourceGateway", "vpc-lattice:CreateResourceConfiguration", "vpc-lattice:TagResource" ], "Resource": [ "arn:aws:vpc-lattice:region:accountId:resourcegateway/*", "arn:aws:vpc-lattice:region:accountId:resourceconfiguration/*" ], "Condition": { "StringEquals": { "aws:RequestTag/ManagedBy": "VPCProxyService", "aws:ResourceTag/ManagedBy": "VPCProxyService" }, "ForAllValues:StringEquals": { "aws:TagKeys": ["ManagedBy"] } } }, { "Sid": "VpcProxyPutResourcePolicy", "Effect": "Allow", "Action": "vpc-lattice:PutResourcePolicy", "Resource": [ "arn:aws:vpc-lattice:region:accountId:resourceconfiguration/*" ], "Condition": { "StringEquals": { "aws:ResourceTag/ManagedBy": "VPCProxyService" } } }, { "Sid": "VpcProxyRamCreate", "Effect": "Allow", "Action": "ram:CreateResourceShare", "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/ManagedBy": "VPCProxyService" }, "StringEqualsIfExists": { "ram:RequestedResourceType": "vpc-lattice:ResourceConfiguration" } } }, { "Sid": "VpcProxyRamAssociate", "Effect": "Allow", "Action": "ram:AssociateResourceShare", "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/ManagedBy": "VPCProxyService" } } }, { "Sid": "VpcProxyRamTagOnCreate", "Effect": "Allow", "Action": "ram:TagResource", "Resource": [ "arn:aws:ram:region:accountId:resource-share/*" ], "Condition": { "StringEquals": { "aws:RequestTag/ManagedBy": "VPCProxyService", "aws:ResourceTag/ManagedBy": "VPCProxyService" }, "ForAllValues:StringEquals": { "aws:TagKeys": ["ManagedBy"] } } }, { "Sid": "VpcProxyDeleteTagged", "Effect": "Allow", "Action": [ "vpc-lattice:DeleteResourceConfiguration", "vpc-lattice:DeleteResourceGateway" ], "Resource": [ "arn:aws:vpc-lattice:region:accountId:resourcegateway/*", "arn:aws:vpc-lattice:region:accountId:resourceconfiguration/*" ], "Condition": { "StringEquals": { "aws:ResourceTag/ManagedBy": "VPCProxyService" } } }, { "Sid": "VpcProxyRamDeleteTagged", "Effect": "Allow", "Action": "ram:DeleteResourceShare", "Resource": [ "arn:aws:ram:region:accountId:resource-share/*" ], "Condition": { "StringEquals": { "aws:ResourceTag/ManagedBy": "VPCProxyService" }, "StringLike": { "ram:ResourceShareName": "vpc-proxy-share-*" } } }, { "Sid": "VpcProxyGetResource", "Effect": "Allow", "Action": [ "vpc-lattice:GetResourceConfiguration", "vpc-lattice:GetResourceGateway" ], "Resource": [ "arn:aws:vpc-lattice:region:accountId:resourcegateway/*", "arn:aws:vpc-lattice:region:accountId:resourceconfiguration/*" ] }, { "Sid": "VpcProxyRamGetResourceShares", "Effect": "Allow", "Action": "ram:GetResourceShares", "Resource": "*" }, { "Sid": "VpcProxyEc2Describe", "Effect": "Allow", "Action": [ "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DescribeVpcs" ], "Resource": "*" }, { "Sid": "VpcProxyLatticeServiceLinkedRole", "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": [ "arn:aws:iam::accountId:role/aws-service-role/vpc-lattice.amazonaws.com/*" ], "Condition": { "StringEquals": { "iam:AWSServiceName": "vpc-lattice.amazonaws.com" } } } ] }

Ciclo de vida

  • Una configuración de VPC pasa CREATING a CREATED o hastaCREATE_FAILED. Cuando la eliminas, el estado es DELETING oDELETE_FAILED.

  • La creación y la eliminación son asincrónicas. Sondea GetVpcConfiguration para hacer un seguimiento del progreso. En caso de errorstatusMessage, indica la causa procesable, como la falta de un permiso.

  • La eliminación es idempotente. Una eliminación parcialmente completada converge cuando se vuelve a intentar.