Acesse o Amazon OpenSearch Sem Servidor usando um endpoint de interface (AWS PrivateLink)
É possível usar um AWS PrivateLink para criar uma conexão privada entre a sua VPC e o Amazon OpenSearch de tecnologia sem servidor. É possível acessar o OpenSearch Sem Servidor como se estivesse em sua VPC, sem usar um gateway da Internet, dispositivo NAT, conexão de VPN ou uma conexão Direct Connect. As instâncias na sua VPC não precisam de endereços IP públicos para acessar o OpenSearch Sem Servidor. Para obter mais informações sobre o acesso à rede da VPC, consulte Padrões de conectividade de rede para o Amazon OpenSearch sem Servidor
Você estabelece essa conexão privada criando um endpoint de interface, alimentado pelo AWS PrivateLink. Criamos uma interface de rede de endpoint em cada sub-rede que você habilitar para o endpoint de interface. Essas são interfaces de rede gerenciadas pelo solicitante, que servem como ponto de entrada para o tráfego destinado ao OpenSearch Sem Servidor.
Para obter mais informações, consulte Acessar os Serviços da AWS pelo AWS PrivateLink no Guia do AWS PrivateLink.
Tópicos
Resolução de DNS dos endpoints de coleta
Quando você cria um endpoint da VPC, o serviço cria uma nova zona hospedada privada Amazon Route 53 e a anexa à VPC. Essa zona hospedada privada consiste em um log para resolver o log de DNS curinga das coleções tecnologia sem servidor do OpenSearch (*.aoss.us-east-1.amazonaws.com) para os endereços de interface usados para o endpoint. Você só precisa de um endpoint da VPC e da tecnologia sem servidor do OpenSearch em uma VPC para acessar todas e quaisquer coleções e Dashboards em cada Região da AWS. Cada VPC com um endpoint para a tecnologia sem servidor do OpenSearch tem sua própria zona hospedada privada anexada.
O tecnologia sem servidor do OpenSearch também cria um log de DNS curinga público do Route 53 para todas as coleções na região. O nome do DNS é resolvido para os endereços IP públicos da tecnologia sem servidor do OpenSearch. Clientes em VPCs que não têm um endpoint da VPC e a tecnologia sem servidor do OpenSearch ou clientes em redes públicas podem usar o resolvedor público do Route 53 e acessar as coleções e os Dashboards com esses endereços IP. O tipo de endereço IP (IPv4, IPv6 ou pilha dupla) do endpoint da VPC é determinado com base nas sub-redes fornecidas quando você cria um endpoint de interface para o OpenSearch sem Servidor.
nota
O OpenSearch sem Servidor cria uma zona hospedada privada adicional do Amazon Route 53 (`<region>.opensearch.amazonaws.com`) para uma resolução de domínio do OpenSearch Service. Você pode atualizar o endpoint IPv4 da VPC existente para pilha dupla usando o comando update-vpc-endpoint na AWS CLI.
O endereço do resolvedor DNS de uma determinada VPC é o segundo endereço IP do CIDR da VPC. Qualquer cliente na VPC precisa usar esse resolvedor para obter o endereço do endpoint da VPC para qualquer coleção. O resolvedor usa uma zona hospedada privada criada pela tecnologia sem servidor do OpenSearch. É suficiente usar esse resolvedor para todas as coleções em qualquer conta. Também é possível usar o resolvedor da VPC para alguns endpoints de coleção e o resolvedor público para outros, embora isso normalmente não seja necessário.
VPCs e políticas de acesso à rede
Para conceder permissão de rede às APIs e OpenSearch Dashboards para suas coleções, você pode usar as políticas de acesso à rede da tecnologia sem servidor do OpenSearch. Você pode controlar esse acesso à rede a partir dos seus endpoints da VPC ou de Internet pública. Como sua política de rede controla apenas as permissões de tráfego, você também deve configurar uma política de acesso a dados que especifique a permissão para operar com os dados em uma coleção e seus índices. Pense em um endpoint da VPC da tecnologia sem servidor do OpenSearch como um ponto de acesso ao serviço, uma política de acesso à rede como o ponto de acesso em nível de rede para coleções e Dashboards e uma política de acesso a dados como o ponto de acesso para controle de acesso detalhado para qualquer operação com dados na coleção.
Como você pode especificar vários IDs de endpoint da VPC em uma política de rede, recomendamos criar um endpoint da VPC para cada VPC que precise acessar uma coleção. Essas VPCs podem pertencer a contas da AWS diferentes da conta que possui a coleção e a política de rede da tecnologia sem servidor do OpenSearch. Não recomendamos que você crie um emparelhamento de VPC para VPC ou outra solução de proxy entre duas contas para que a VPC de uma conta possa usar o endpoint de outra. Isso é menos seguro e econômico do que cada VPC ter seu próprio endpoint. A primeira VPC não será facilmente visível para o administrador da outra VPC, que configurou o acesso ao endpoint da VPC na política de rede.
Políticas de VPCs e endpoint
O Amazon OpenSearch sem Servidor oferece suporte a políticas de endpoint para VPCs. Uma política de endpoint é uma política do IAM baseada em recurso que pode ser anexada a um endpoint da VPC para controlar quais entidades principais da AWS podem usar o endpoint para acessar seu serviço da AWS. Para obter mais informações, consulte Controlar o acesso a endpoints de VPC usando políticas de endpoint.
Para usar uma política de endpoint, primeiro você deve criar um endpoint de interface. Você pode criar um endpoint de interface usando o console do OpenSearch sem Servidor ou a API do OpenSearch sem Servidor. Depois de criar seu endpoint de interface, você precisará adicionar a política de endpoint a esse endpoint. Para obter mais informações, consulte Acessar o Amazon OpenSearch sem Servidor usando um endpoint de interface (AWS PrivateLink).
nota
Não é possível definir uma política de endpoint diretamente no console do OpenSearch Service.
Uma política de endpoint não substitui políticas baseadas em recursos, políticas de rede nem políticas de acesso a dados que você possa ter configurado. Para obter informações sobre como atualizar sua política de endpoint de VPC, consulte Controlar o acesso a endpoints da VPC usando políticas de endpoint.
Por padrão, uma política de endpoint concede acesso total ao seu endpoint de VPC.
{ "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "*", "Resource": "*" } ] }
Embora a política padrão de endpoint de VPC conceda acesso total ao endpoint, você pode configurar uma política de endpoint de VPC para permitir acesso a perfis e usuários específicos. Para fazer isso, veja o exemplo a seguir:
É possível especificar uma coleção do OpenSearch sem Servidor a ser incluída como um elemento condicional em sua política de endpoint de VPC. Para fazer isso, veja o exemplo a seguir:
aoss:CollectionId é compatível.
Condition": { "StringEquals": { "aoss:CollectionId": "collection-id" } }
Você pode usar identidades SAML em sua política de endpoint de VPC para determinar o acesso ao endpoint de VPC. Você deve usar um caractere curinga (*) na seção principal da sua política de endpoint de VPC. Para fazer isso, veja o exemplo a seguir:
Além disso, você pode configurar sua política de endpoint para incluir uma política de entidade principal de SAML específica. Para isso, veja o seguinte:
Para obter mais informações sobre o uso da autenticação SAML com o Amazon OpenSearch sem Servidor, consulte Autenticação SAML para o Amazon OpenSearch sem Servidor.
Você também pode incluir usuários do IAM e do SAML na mesma política de endpoint de VPC. Para fazer isso, veja o exemplo a seguir:
Você também pode acessar uma coleção do Amazon OpenSearch sem Servidor no Amazon EC2 por endpoints de interface da VPC. Para obter mais informações, consulte Acessar uma coleção do OpenSearch sem Servidor no Amazon EC2 (via endpoint da VPC de interface)
Considerações
Antes de configurar um endpoint de interface para o OpenSearch Sem Servidor, considere o seguinte:
-
O OpenSearch Sem Servidor oferece suporte à execução de chamadas para todas as operações da API do OpenSearch (que não operações de API de configuração) com suporte por meio de um endpoint de interface.
-
Depois de criar um endpoint de interface para o OpenSearch Sem Servidor, você ainda precisará incluí-lo nas políticas de acesso à rede para que ele acesse coleções com tecnologia sem servidor.
-
Por padrão, o acesso total às operações de API do OpenSearch Sem Servidor é permitido através do endpoint da interface. É possível associar um grupo de segurança às interfaces de rede do endpoint para controlar o tráfego para a tecnologia sem servidor do OpenSearch por meio do endpoint da interface.
-
Uma única Conta da AWS pode ter um máximo de 50 endpoints da VPC do OpenSearch Sem Servidor.
-
Se você habilitar o acesso público à API ou aos painéis da sua coleção em uma política de rede, sua coleção pode ser acessada por qualquer VPC e pela internet pública.
-
Se você estiver no local (on-premises) e fora da VPC, não poderá usar um resolvedor de DNS diretamente para a resolução do endpoint da VPC da tecnologia sem servidor do OpenSearch. Se você precisar de acesso à VPN, a VPC precisará de um resolvedor de proxy DNS para ser usado por clientes externos. O Route 53 fornece uma opção de endpoint de entrada que você pode usar para resolver consultas ao DNS à VPC, originadas na rede no local (on-premises) ou em outra VPC.
-
A zona hospedada privada que o OpenSearch sem Servidor cria e anexa à VPC é gerenciada pelo serviço, mas aparece nos recursos do Amazon Route 53 e é cobrada em sua conta.
-
Para outras considerações, consulte Considerações no Guia do AWS PrivateLink.
Permissões obrigatórias
O acesso da VPC para o OpenSearch Sem Servidor usa as permissões do AWS Identity and Access Management (IAM) a seguir. É possível especificar as condições do IAM para restringir os usuários a coleções específicas.
-
aoss:CreateVpcEndpoint: criar um endpoint da VPC. -
aoss:ListVpcEndpoints: listar todos os endpoints da VPC. -
aoss:BatchGetVpcEndpoint: veja detalhes sobre um subconjunto de endpoints da VPC. -
aoss:UpdateVpcEndpoint: modificar um endpoint da VPC. -
aoss:DeleteVpcEndpoint: excluir um endpoint da VPC.
Além disso, as seguintes permissões do Amazon EC2 e do Route 53 são necessárias para criar um endpoint de VPC.
-
ec2:CreateTags -
ec2:CreateVpcEndpoint -
ec2:DeleteVpcEndPoints -
ec2:DescribeSecurityGroups -
ec2:DescribeSubnets -
ec2:DescribeVpcEndpoints -
ec2:DescribeVpcs -
ec2:ModifyVpcEndPoint -
route53:AssociateVPCWithHostedZone -
route53:ChangeResourceRecordSets -
route53:CreateHostedZone -
route53:DeleteHostedZone -
route53:GetChange -
route53:GetHostedZone -
route53:ListHostedZonesByName -
route53:ListHostedZonesByVPC -
route53:ListResourceRecordSets
Criação de um endpoint da interface para um domínio do OpenSearch Sem Servidor
É possível criar um endpoint da interface para o OpenSearch Sem Servidor por meio do console ou da API do OpenSearch Sem Servidor.
Para criar um endpoint da interface para uma coleção do OpenSearch Sem Servidor
-
Abra o console do Amazon OpenSearch Service em https://console.aws.amazon.com/aos/home
. -
Expanda Sem Servidor no painel de navegação à esquerda e escolha Endpoints da VPC.
-
Escolha Criar endpoint da VPC.
-
Forneça um nome para o endpoint.
-
Em VPC, selecione a VPC a partir da qual você acessará o OpenSearch Sem Servidor.
-
Em Sub-redes, selecione uma sub-rede da qual você acessará o OpenSearch de tecnologia sem servidor.
-
O endereço IP e o tipo de DNS do endpoint são baseados no tipo de sub-rede
-
Pilha dupla: se todas as sub-redes tiverem intervalos de endereços IPv4 e IPv6
-
IPv6: se todas as sub-redes forem sub-redes IPv6 apenas
-
IPv4: se todas as sub-redes tiverem intervalos de endereços IPv4
-
-
-
Em Grupos de segurança, selecione os grupos de segurança para associar às interfaces de rede do endpoint. Essa é uma etapa crítica na qual você limita as portas, os protocolos e as origens para o tráfego de entrada que você está autorizando para o seu endpoint. Certifique-se de que as regras do grupo de segurança permitam que os recursos que usarão o endpoint da VPC se comuniquem com o OpenSearch Sem Servidor para comunicação com a interface de rede do endpoint.
-
Escolha Criar endpoint.
Para criar um endpoint da VPC usando a API do OpenSearch Sem Servidor, use o comando CreateVpcEndpoint.
nota
Depois de criar um endpoint, anote seu ID (por exemplo, vpce-abc123def4EXAMPLE. Para fornecer ao endpoint acesso às suas coleções, será necessário incluir esse ID em uma ou mais políticas de acesso à rede.
Depois de criar um endpoint da interface, você deverá fornecer a ele acesso às coleções por meio de políticas de acesso à rede. Para obter mais informações, consulte Acesso de rede do Amazon OpenSearch Sem Servidor.
Configuração de VPC compartilhada para o Amazon OpenSearch sem Servidor
Você pode usar a Amazon Virtual Private Cloud (VPC) para compartilhar sub-redes da VPC com outras Contas da AWS da sua organização, bem como para compartilhar a infraestrutura de rede, como uma VPN, entre várias Contas da AWS.
Atualmente, o Amazon OpenSearch sem Servidor não é compatível com a criação de uma conexão do AWS PrivateLink em uma VPC compartilhada, a menos que você seja proprietário da VPC. O AWS PrivateLink também não é compatível com o compartilhamento de conexões entre Contas da AWS.
No entanto, com base na arquitetura flexível e modular do OpenSearch sem Servidor, ainda é possível configurar uma VPC compartilhada. Isso ocorre porque a infraestrutura de rede do OpenSearch sem Servidor é separada da infraestrutura da coleção individual (OpenSearch Service). Portanto, você pode criar um endpoint VPCe do AWS PrivateLink para uma contas em que uma VPC se encontra e, em seguida, usar um ID da VPCe na política de rede de outras contas para restringir o tráfego apenas ao que vem dessa VPC compartilhada.
Os procedimentos a seguir se referem a uma conta de proprietário e a uma conta de consumidor.
Uma conta de proprietário funciona como uma conta de rede comum, na qual você configura e compartilha uma VPC com outras contas. As contas de consumidor são as contas que criam e mantêm as coleções do OpenSearch sem Servidor na VPC compartilhada com elas pela conta de proprietário.
Pré-requisitos
Certifique-se de que os seguintes requisitos sejam atendidos antes de configurar a VPC compartilhada:
-
A conta de proprietário em questão já deve ter configurada uma VPC, sub-redes, uma tabela de rotas e os outros recursos necessários na Amazon Virtual Private Cloud. Para obter mais informações, consulte o Manual do usuário da Amazon VPC.
-
A conta de proprietário e as contas de consumidor em questão devem pertencer à mesma organização do AWS Organizations. Para obter mais informações, consulte o Guia de usuário do AWS Organizations.
Para configurar uma VPC compartilhada em uma conta de proprietário/conta de rede comum.
-
Faça login no console do Amazon OpenSearch Service em https://console.aws.amazon.com/aos/home
. -
Siga as etapas em Criação de um endpoint da interface para um domínio do OpenSearch Sem Servidor. Ao fazer isso, faça as seguintes seleções:
-
Selecione uma VPC e as sub-redes que são compartilhadas com as contas de consumidores da sua organização.
-
-
Depois de criar o endpoint, anote o ID da VPCe que é gerado e o forneça aos administradores que farão a configuração nas contas dos consumidores.
Os IDs da VPCe são no formato
vpce-abc123def4EXAMPLE.
Para configurar uma VPC compartilhada em uma conta de consumidor
-
Faça login no console do Amazon OpenSearch Service em https://console.aws.amazon.com/aos/home
. -
Use as informações em Gerenciar coleções do Amazon OpenSearch sem Servidor para criar uma coleção, se ainda não tiver uma.
-
Use as informações em Criação de políticas de rede (console) para criar uma política de rede. Ao fazer isso, faça as seleções a seguir.
nota
Também é possível atualizar uma política de rede existente para essa finalidade.
-
Em Tipo de acesso, selecione VPC (recomendado).
-
Em Endpoints da VPC para acesso, escolha o ID da VPCe fornecido a você pela conta de proprietário, no formato
vpce-abc123def4EXAMPLE. -
Na área Tipo de recurso, faça o seguinte:
-
Selecione a caixa Habilitar acesso a endpoint do OpenSearch e depois o nome da coleção ou o padrão de coleção a ser usado para habilitar o acesso dessa VPC compartilhada.
-
Selecione a caixa Habilitar acesso a endpoint do OpenSearch Dashboard e depois o nome da coleção ou o padrão de coleção a ser usado para habilitar o acesso dessa VPC compartilhada.
-
-
-
Para uma nova política, escolha Criar. Para uma política existente, escolha Atualizar.