> ## Documentation Index
> Fetch the complete documentation index at: https://docs.devinenterprise.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Conectividade Privada em Dedicated Deployment

Alguns clientes corporativos exigem que o Devin se conecte de forma privada a sistemas internos, como GitHub Enterprise Server, GitLab, Bitbucket Data Center, Artifactory, Nexus ou outras infraestruturas de desenvolvimento.

O Dedicated Deployment do Devin oferece suporte a isso por meio de AWS PrivateLink. Esse modelo mantém todo o tráfego no backbone de rede da AWS e evita exposição à internet pública.

<div id="overview">
  ## Visão geral
</div>

PrivateLink fornece conectividade de IP privado do seu ambiente Devin Dedicated Deployment para seus endpoints internos. Para isso, sua equipe disponibiliza um AWS VPC Endpoint Service à frente de cada sistema interno que o Devin precisa acessar. Em seguida, a Cognition cria Interface VPC Endpoints que consomem esse serviço.
O PrivateLink é configurado por domínio. Se o Devin precisar acessar vários domínios, você precisará de um Endpoint Service e um Interface Endpoint para cada domínio.

<div id="requirements">
  ## Requisitos
</div>

Você deve fornecer:

* Um Network Load Balancer (NLB) na sua conta da AWS que sirva de front-end para cada serviço interno (GitLab, Artifactory, etc.)
* Um VPC Endpoint Service que use o NLB como destino
* O nome do serviço para cada Endpoint Service
* Permissões de principal permitido que incluam a conta AWS da Cognition
* Confirmação das portas suportadas para cada serviço
* Informações de DNS para os domínios que o Devin deve resolver de forma privada

A Cognition fornecerá:

* O ID da conta AWS para adicionar como principal permitido
* A configuração de DNS no lado do Devin assim que a conectividade for estabelecida

<div id="cross-region-privatelink-if-your-services-are-in-a-different-region">
  ## Cross Region PrivateLink (se seus serviços estiverem em uma região diferente)
</div>

Se seus serviços internos estiverem em uma região diferente do tenant Cognition Dedicated Deployment, o PrivateLink ainda pode ser usado. A AWS oferece suporte ao consumo de endpoints entre regiões, desde que o proprietário do serviço o ative.

<div id="customer-steps">
  ### Etapas do cliente
</div>

1. **Criar ou reutilizar o Network Load Balancer**
   O NLB deve direcionar para os sistemas internos a que o Devin precisa ter acesso. O NLB deve oferecer suporte a todas as portas necessárias.

2. **Criar um VPC Endpoint Service a partir do NLB**
   Isso torna o serviço disponível para consumo via PrivateLink.

3. **Habilitar suporte entre regiões (cross region)**
   No console da AWS:

   ```
   VPC Console → Endpoint Services → Select service → Actions → Modify supported Regions
   ```

   Adicione a região em que seu tenant da Cognition está implantado.
   Exemplo usando CLI:

   ```bash theme={null}
   aws ec2 modify-vpc-endpoint-service-configuration \
       --service-id vpce-svc-0abc123 \
       --add-supported-regions us-west-2  # Região do seu tenant da Cognition
   ```

4. **Adicionar a conta AWS da Cognition como principal permitido**
   ```bash theme={null}
   aws ec2 modify-vpc-endpoint-service-permissions \
       --service-id vpce-svc-0abc123 \
       --add-allowed-principals arn:aws:iam::<COGNITION_ACCOUNT_ID>:root
   ```

5. **Fornecer os seguintes detalhes à Cognition**
   * Nome do Endpoint Service\
     Exemplo: `com.amazonaws.vpce.us-west-2.vpce-svc-0abc123`
   * Portas que o serviço aceita
   * Domínios que devem ser resolvidos por meio do PrivateLink

<div id="what-happens-next">
  ### O que acontece a seguir
</div>

Depois que você fornecer os detalhes acima, a Cognition irá:

1. **Criar endpoints de interface da VPC** no seu ambiente de tenant dedicado usando os nomes de serviço que você forneceu.
2. **Enviar uma solicitação de conexão** que você precisará aprovar (manualmente ou por aceitação automática, se configurado).
3. **Configurar DNS** para que os domínios que você especificou sejam resolvidos de forma privada no ambiente do Devin.

<div id="architecture-diagram">
  ## Diagrama de arquitetura
</div>

<Frame caption="Conectividade PrivateLink entre regiões, da Cognition para os serviços internos do cliente">
  <img src="https://mintcdn.com/cognitionai-enterprise/G1KUV0opl7B4FiVt/images/privatelink-architecture.svg?fit=max&auto=format&n=G1KUV0opl7B4FiVt&q=85&s=17d8611558974f3c70f9c100feaea8b7" alt="Arquitetura PrivateLink" width="900" height="480" data-path="images/privatelink-architecture.svg" />
</Frame>

<div id="gateway-load-balancer-gwlb-support">
  ## Suporte a Gateway Load Balancer (GWLB)
</div>

Se sua organização usa um appliance de segurança como o Zscaler para inspeção de tráfego, você pode usar um Gateway Load Balancer (GWLB) da AWS em vez de um Network Load Balancer. Isso permite que o tráfego do Devin passe pelo seu appliance de segurança para inspeção antes de chegar aos seus serviços internos.

Nesse modelo:

* Um **Gateway Load Balancer** fica à frente do seu appliance de segurança (por exemplo, Zscaler)
* Um **Gateway Load Balancer Endpoint** é criado no ambiente do Devin para rotear o tráfego através do appliance
* O tráfego é inspecionado pelo seu appliance de segurança e depois encaminhado para o serviço interno de destino

Para usar essa opção, forneça à Cognition:

* O nome do GWLB Endpoint Service
* O fornecedor do appliance de segurança e os respectivos detalhes de configuração
* Os domínios que devem ser roteados através do GWLB

<Note>
  Configurações baseadas em GWLB seguem os mesmos princípios de PrivateLink que configurações baseadas em NLB, mas adicionam uma camada de inspeção de tráfego. Entre em contato com a equipe da sua conta na Cognition para orientações detalhadas de configuração.
</Note>

<div id="key-considerations">
  ## Considerações principais
</div>

| Tópico                  | Orientação                                                                                               |
| ----------------------- | -------------------------------------------------------------------------------------------------------- |
| Configuração necessária | Um Endpoint Service por domínio, um Interface Endpoint por domínio                                       |
| Suporte entre regiões   | Deve ser explicitamente habilitado no Endpoint Service                                                   |
| Principais permitidos   | O cliente deve adicionar o ID da conta AWS da Cognition                                                  |
| DNS                     | Os domínios do cliente serão resolvidos para IPs privados de Interface Endpoint no ambiente da Cognition |
| Portas                  | Os listeners do NLB devem corresponder às portas que o Devin usa para acessar cada serviço               |
| Disponibilidade         | O NLB e os targets subjacentes devem ser configurados em múltiplas Availability Zones                    |
| Latência                | Pode ocorrer um pequeno aumento de latência entre regiões, já que o tráfego permanece no backbone da AWS |

<div id="information-to-provide-to-cognition">
  ## Informações a fornecer à Cognition
</div>

Quando sua configuração estiver pronta, envie à Cognition:

* Nomes dos AWS Endpoint Services para cada domínio interno
* Confirmação de que o suporte entre regiões está habilitado (se aplicável)
* Confirmação de que a configuração de allowed principal está concluída
* Portas expostas pelo NLB
* A lista de domínios que devem ser roteados pelo PrivateLink

A Cognition então provisionará os Interface Endpoints, configurará o DNS e confirmará a conectividade.
