> ## 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.

# Rete privata per distribuzione dedicata

Alcuni clienti Enterprise richiedono che Devin si connetta in modo privato a sistemi interni come GitHub Enterprise Server, GitLab, Bitbucket Data Center, Artifactory, Nexus o altre infrastrutture di sviluppo.

La distribuzione dedicata di Devin supporta questo tramite AWS PrivateLink. Questo modello mantiene tutto il traffico sul backbone di AWS ed evita l'esposizione su Internet pubblico.

<div id="overview">
  ## Panoramica
</div>

PrivateLink fornisce connettività IP privata dal tuo ambiente Devin distribuzione dedicata ai tuoi endpoint interni. Per abilitare questa connettività, il tuo team deve esporre un AWS VPC Endpoint Service davanti a ciascun sistema interno a cui Devin deve accedere. Cognition crea quindi degli Interface VPC Endpoint che utilizzano tale servizio.
PrivateLink è configurato per singolo dominio. Se Devin deve raggiungere più domini, saranno necessari un Endpoint Service e un Interface Endpoint per ciascun dominio.

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

Devi fornire:

* Un Network Load Balancer (NLB) nel tuo account AWS che faccia da front-end a ciascun servizio interno (GitLab, Artifactory, ecc.)
* Un VPC Endpoint Service che utilizzi l'NLB come target
* Il nome del servizio per ciascun Endpoint Service
* Autorizzazioni per i principal autorizzati (allowed principal) che includano l'account AWS di Cognition
* Conferma delle porte supportate per ciascun servizio
* Informazioni DNS per i domini che Devin deve risolvere privatamente

Cognition fornirà:

* L'ID dell'account AWS da aggiungere come principal autorizzato (allowed principal)
* La configurazione DNS dal lato Devin una volta che la connettività è stata stabilita

<div id="cross-region-privatelink-if-your-services-are-in-a-different-region">
  ## PrivateLink tra regioni (se i tuoi servizi si trovano in un'altra regione)
</div>

Se i tuoi servizi interni vengono eseguiti in una regione diversa rispetto al tuo tenant Cognition distribuzione dedicata, è comunque possibile utilizzare PrivateLink. AWS supporta l'utilizzo di endpoint tra regioni, a condizione che il proprietario del servizio lo abiliti.

<div id="customer-steps">
  ### Passaggi per il cliente
</div>

1. **Crea o riutilizza il Network Load Balancer**
   L'NLB deve puntare ai sistemi interni a cui Devin deve accedere. L'NLB deve supportare tutte le porte richieste.

2. **Crea un VPC Endpoint Service dall'NLB**
   In questo modo il servizio sarà disponibile per l'utilizzo tramite PrivateLink.

3. **Abilita il supporto cross-region**
   Nella console AWS:

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

   Aggiungi la regione in cui è distribuito il tuo tenant Cognition.
   Esempio CLI:

   ```bash theme={null}
   aws ec2 modify-vpc-endpoint-service-configuration \
       --service-id vpce-svc-0abc123 \
       --add-supported-regions us-west-2  # Regione del tuo tenant Cognition
   ```

4. **Aggiungi l'account AWS di Cognition come principal autorizzato**
   ```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. **Fornisci a Cognition i seguenti dettagli**
   * Nome del servizio Endpoint\
     Esempio: `com.amazonaws.vpce.us-west-2.vpce-svc-0abc123`
   * Porte accettate dal servizio
   * I domini che devono essere risolti tramite PrivateLink

<div id="what-happens-next">
  ### Cosa succede dopo
</div>

Una volta forniti i dettagli di cui sopra, Cognition provvederà a:

1. **Creare Endpoint VPC di tipo Interface** nell'ambiente dedicato al tenant, utilizzando i nomi dei servizi che hai fornito.
2. **Inviare una richiesta di connessione** che dovrai approvare (manualmente oppure tramite accettazione automatica, se configurata).
3. **Configurare il DNS** in modo che i domini specificati vengano risolti privatamente all'interno dell'ambiente Devin.

<div id="architecture-diagram">
  ## Diagramma dell'architettura
</div>

<Frame caption="Connettività PrivateLink inter-regionale da Cognition ai servizi interni del cliente">
  <img src="https://mintcdn.com/cognitionai-enterprise/G1KUV0opl7B4FiVt/images/privatelink-architecture.svg?fit=max&auto=format&n=G1KUV0opl7B4FiVt&q=85&s=17d8611558974f3c70f9c100feaea8b7" alt="Architettura PrivateLink" width="900" height="480" data-path="images/privatelink-architecture.svg" />
</Frame>

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

Se l'organizzazione utilizza un'appliance di sicurezza come Zscaler per l'ispezione del traffico, è possibile usare un AWS Gateway Load Balancer (GWLB) invece di un Network Load Balancer. Questo consente al traffico di Devin di passare attraverso l'appliance di sicurezza per l'ispezione prima di raggiungere i servizi interni.

In questo modello:

* Un **Gateway Load Balancer** fa da front-end all'appliance di sicurezza (ad es. Zscaler)
* Un **Gateway Load Balancer Endpoint** viene creato nell'ambiente Devin per instradare il traffico tramite l'appliance
* Il traffico viene ispezionato dall'appliance di sicurezza e quindi inoltrato al servizio interno di destinazione

Per utilizzare questa opzione, fornite a Cognition:

* Il nome del GWLB Endpoint Service
* Il fornitore dell'appliance di sicurezza e i relativi dettagli di configurazione
* I domini che devono essere instradati attraverso il GWLB

<Note>
  Le configurazioni basate su GWLB seguono gli stessi principi PrivateLink delle configurazioni basate su NLB, ma aggiungono un livello di ispezione del traffico. Contattate il vostro team di account di Cognition per indicazioni dettagliate sulla configurazione.
</Note>

<div id="key-considerations">
  ## Considerazioni chiave
</div>

| Topic                | Guidance                                                                                                          |
| -------------------- | ----------------------------------------------------------------------------------------------------------------- |
| Required setup       | Un Endpoint Service per dominio, un Interface Endpoint per dominio                                                |
| Cross region support | Deve essere esplicitamente abilitato sull'Endpoint Service                                                        |
| Allowed principals   | Il cliente deve aggiungere l'ID dell'account AWS di Cognition                                                     |
| DNS                  | I domini del cliente verranno risolti in IP privati degli Interface Endpoint sul lato Cognition                   |
| Ports                | I listener NLB devono corrispondere alle porte che Devin utilizza per accedere a ciascun servizio                 |
| Availability         | NLB e i target sottostanti devono essere configurati in più Availability Zones                                    |
| Latency              | Potrebbe verificarsi un piccolo aumento della latenza inter-regionale, poiché il traffico rimane sul backbone AWS |

<div id="information-to-provide-to-cognition">
  ## Informazioni da fornire a Cognition
</div>

Quando la configurazione è pronta, invia a Cognition:

* Nomi degli AWS Endpoint Service per ciascun dominio interno
* Conferma che il supporto tra region è abilitato (se applicabile)
* Che la configurazione dei principal autorizzati è completa
* Porte esposte dall'NLB
* L'elenco dei domini che devono essere instradati tramite PrivateLink

Cognition quindi effettuerà il provisioning degli Interface Endpoint, configurerà il DNS e confermerà la connettività.
