

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Configurazione di un dominio personalizzato per il portale
<a name="configure-custom-domains"></a>

## Come funziona
<a name="custom-domains-how-it-works"></a>

Quando configuri un dominio personalizzato:
+ È possibile creare e configurare un reverse proxy con il dominio personalizzato per indirizzare il traffico verso l'endpoint del portale.
+ Gli utenti accedono al portale tramite il dominio personalizzato anziché l'endpoint predefinito del portale.
+ I certificati SSL garantiscono connessioni sicure durante tutto il processo.

## Prerequisiti
<a name="custom-domains-prerequisites"></a>

Prima di configurare domini personalizzati, assicurati di avere:
+ Un nome di dominio che gestisci tramite un provider di servizi DNS come Amazon Route53.
+ Un portale WorkSpaces Secure Browser. Per ulteriori informazioni sulla creazione di un portale, vedere[Creazione di un portale Web per Amazon WorkSpaces Secure Browser](getting-started-step1.md).
+ Assicurati di disporre delle autorizzazioni necessarie per gestire AWS Certificate Manager e le CloudFront configurazioni DNS.

**Importante**  
Gli utenti devono abilitare i cookie di terze parti per il dominio personalizzato nei propri browser per garantire la corretta funzionalità del portale.  
Assicurati di possedere e gestire correttamente il dominio personalizzato e i relativi record DNS per mantenere la sicurezza e la funzionalità del tuo portale.

**Nota**  
Per abilitare l'estensione Single Sign-On per i domini personalizzati, gli utenti devono installare l'estensione nel proprio browser con una versione successiva alla 1.0.2505.6608.  
Agli utenti viene richiesto di installare l'estensione quando accedono a un portale. Per informazioni dettagliate sull'esperienza utente con l'estensione, consulta [Estensione Single Sign-On per Amazon Secure Browser WorkSpaces](extension.md).

## Nozioni di base
<a name="custom-domains-getting-started"></a>

È possibile configurare il dominio personalizzato come attributo delle impostazioni del portale quando si crea un nuovo portale o quando si modifica un portale esistente. Questa operazione può essere eseguita utilizzando i AWS comandi Console, SDK CloudFormation o AWS CLI.

Ti consigliamo di configurare una CloudFront distribuzione Amazon come proxy inverso che indirizza il traffico dal tuo dominio personalizzato all'endpoint del portale WorkSpaces Secure Browser.

**Nota**  
Sebbene Amazon CloudFront sia consigliato come soluzione di reverse proxy, puoi utilizzare configurazioni di reverse proxy alternative. Assicurati di soddisfare le impostazioni di origine e di configurazione della cache richieste, come descritto nei passaggi di CloudFront configurazione di Amazon.

## Configurazione CloudFront come proxy inverso
<a name="custom-domains-getting-started"></a>

Per completare la configurazione di un reverse proxy, è necessario:
+ Un certificato SSL tramite AWS Certificate Manager (ACM)
+ Una CloudFront distribuzione Amazon
+ Record DNS
+ Portale configurato con il tuo dominio personalizzato

**Certificato SSL**

Se non ne hai già uno, segui questi passaggi per richiederne uno tramite ACM:

1. Accedi alla console ACM all'indirizzo. [https://console.aws.amazon.com/acm](https://console.aws.amazon.com/acm)
**Importante**  
Utilizza la regione Stati Uniti orientali (Virginia settentrionale), poiché CloudFront richiede che i certificati vengano archiviati lì.

1. Richiedi un certificato:
   + Per i nuovi utenti ACM: scegli **Inizia** nella sezione **Provision certificates**
   + Per gli utenti ACM esistenti: scegli **Richiedi un certificato**

1. Scegli **Richiedi un certificato pubblico**, quindi scegli **Richiedi un certificato**.
**Nota**  
Puoi anche importare un certificato esistente. Per ulteriori informazioni, consulta [Importazione di certificati in ACM nella Guida](https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html) per l'utente *ACM.*

1. Inserisci il tuo nome di dominio principale (ad esempio,). **myportal.example.com**

1. Scegli un metodo di convalida:
   + **Convalida DNS** (consigliata per gli utenti di Route 53): consente la creazione automatica di set di record nella zona ospitata. *Per ulteriori informazioni, consulta la [convalida DNS](https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-validate-dns.html) nella ACM User Guide.*
   + **Convalida e-mail***: per ulteriori informazioni, consulta la sezione [Convalida delle e-mail](https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-validate-email.html) nella Guida per l'utente ACM.*

1. Controlla le impostazioni e scegli **Conferma** e richiedi.

**CloudFront distribuzione**

Crea una CloudFront distribuzione per le richieste proxy dal tuo dominio personalizzato all'endpoint del portale.

1. Accedere alla CloudFront console all'indirizzo[https://console.aws.amazon.com/cloudfront](https://console.aws.amazon.com/cloudfront).

1. Scegliere **Create Distribution (Crea distribuzione)**.
   + **Nome della distribuzione**: inserisci un nome per la distribuzione
   + **Tipo di distribuzione**: sito Web o app singola
**Nota**  
Se il tuo dominio personalizzato è gestito in Route 53 nello stesso account AWS, CloudFront può gestire automaticamente il tuo DNS per te. Inserisci il tuo dominio personalizzato e fai clic su «Verifica dominio». Se hai un dominio di un altro provider DNS, salta questo passaggio e configura il dominio in un secondo momento. 

1. Configura le impostazioni di origine:
   + **Tipo di origine**: Altro
   + **Origine personalizzata**: inserisci l'endpoint del portale .workspaces-web.com *<portalId>*
   + **Percorso di origine**: lascia vuoto (impostazione predefinita)

1. Personalizza le impostazioni di origine:
   + Aggiunta di intestazioni personalizzate
**Importante**  
L'accesso al portale tramite dominio personalizzato funzionerà solo se questa intestazione è presente nelle richieste proxy. Assicurati che il nome e il valore dell'intestazione siano specificati esattamente come indicato.
     + **Nome dell'intestazione**: workspacessecurebrowser-custom-domain
     + **Valore**: il tuo dominio personalizzato (ad esempio,**myportal.example.com**)
   + **Protocollo**: solo HTTPS
   + **Porta HTTPS**: 443 (mantieni l'impostazione predefinita)
   + **Protocollo SSL originale minimo**: TLSv1 .2 (impostazione predefinita)
   + **Tipo di indirizzo IP di origine**: IPv4 solo (Amazon WorkSpaces Secure Browser non è supportato IPv6 al momento della stesura di questa guida amministrativa).

1. Personalizza le impostazioni della cache:
   + **Politica del protocollo Viewer**: reindirizza HTTP a HTTPS
   + **Metodi HTTP consentiti**: GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE
   + **Politica sulla cache**: CachingDisabled
   + **Politica di richiesta Origin**: AllViewerExceptHostHeader
**Importante**  
L'accesso al portale tramite un dominio personalizzato funzionerà solo se la policy di richiesta di origine è impostata su AllViewerExceptHostHeader. Come suggerisce il nome, questa politica filtra solo l'intestazione dell'host dalle intestazioni della richiesta e trasmette tutte le intestazioni rimanenti all'origine.

1. È possibile configurare WAF se lo si desidera, ma non è necessario ai fini di questa configurazione.

1. In Ottieni certificato TLS, seleziona il certificato TLS creato nel passaggio 1.

1. Controlla le impostazioni e scegli **Crea** distribuzione.

**Record DNS**

Cloudfront può aggiornare i record DNS in Route 53 per indirizzare il traffico dai domini specificati alla distribuzione creata nella Fase 2, se la zona ospitata si trova nello stesso account AWS.

1. Vai alle impostazioni CloudFront 

1. Fai clic su «Indirizza i domini verso CloudFront» 

1. Fai clic su «Configura il routing automaticamente» 

Se hai configurato il DNS per il dominio personalizzato in un altro provider di servizi o in un altro account AWS, configura il provider DNS per indirizzare il traffico dal tuo dominio alla distribuzione. I passaggi seguenti descrivono come eseguire questa operazione utilizzando Route 53.

1. Apri la console Amazon Route 53 all'indirizzo[https://console.aws.amazon.com/route53](https://console.aws.amazon.com/route53).

1. Accedi alla gestione DNS:
   + Se non conosci Route 53 con questo AWS account, si apre la pagina di panoramica di Amazon Route 53. In Gestione DNS, scegli **Inizia subito**.
   + Se hai già utilizzato Route 53 con questo AWS account, procedi al passaggio successivo.

1. Nel pannello di navigazione, scegli **Zone ospitate**.

1. Crea una zona ospitata se non ne hai già una:
   + Per indirizzare il traffico Internet verso le tue risorse, consulta [Creazione di una zona ospitata pubblica](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/CreatingHostedZone.html) nella *Amazon Route 53 Developer Guide*.
   + Per indirizzare il traffico nel tuo VPC, consulta [Creazione di una zona ospitata privata](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zone-private-creating.html) nella *Amazon Route 53 Developer Guide*.

1. Nella pagina **Hosted Zones**, scegli il nome della zona ospitata che desideri amministrare.

1. Scegliere **Create Record Set (Crea set di record)**.

1. Crea una voce per il tuo dominio (ad esempio,**myportal.example.com**):
   + **Tipo**: A — IPv4 indirizzo
   + **Alias**: Yes (Sì)
   + **Alias Target**: URL CloudFront di distribuzione

   Mantieni i valori predefiniti per tutte le altre impostazioni.

**Nota**  
Se non utilizzi Route 53 per gestire il DNS per il tuo dominio, usa il tuo provider di servizi DNS e aggiungi voci DNS che puntano al tuo dominio all'URL della tua distribuzione. CloudFront 

**In alternativa, puoi utilizzare il seguente CloudFormation modello per creare la tua distribuzione: CloudFront **

Questo CloudFormation modello crea automaticamente la CloudFront distribuzione, configura le impostazioni del reverse proxy e, facoltativamente, crea i record DNS di Route53:

**Example workspaces-web-custom-domain-template.yaml**  

```
AWSTemplateFormatVersion: '2010-09-09'
Description: 'CloudFront Distribution for custom domain configuration with existing AWS WorkSpaces Secure Browser Portal'

Parameters:
  PortalEndpoint:
    Type: String
    Description: 'The endpoint of your existing WorkSpaces Web Portal (e.g., abc123.workspaces-web.com)'
    AllowedPattern: '^[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)?\.workspaces-web\.com$'
    ConstraintDescription: 'Must be a valid WorkSpaces Web portal endpoint'
  
  CustomDomainName:
    Type: String
    Description: 'Custom domain name for the portal (e.g., myportal.example.com)'
    AllowedPattern: '^([a-zA-Z0-9]?((?!-)([A-Za-z0-9-]*[A-Za-z0-9])\.)+[a-zA-Z0-9]+)$'
    ConstraintDescription: 'Must be a valid domain name'
  
  CertificateArn:
    Type: String
    Description: 'ARN of the validated SSL certificate in ACM (must be in us-east-1 region for CloudFront)'
    AllowedPattern: 'arn:aws:acm:us-east-1:[0-9]{12}:certificate/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}'
    ConstraintDescription: 'Must be a valid ACM certificate ARN in us-east-1 region'
  
  CreateRoute53Record:
    Type: String
    Description: 'Create Route53 record for custom domain (requires existing hosted zone)'
    Default: 'No'
    AllowedValues:
      - 'Yes'
      - 'No'
  
  HostedZoneId:
    Type: String
    Description: 'Route53 Hosted Zone ID for the custom domain (required if creating Route53 record)'
    Default: ''

Conditions:
  ShouldCreateRoute53Record: !And
    - !Equals [!Ref CreateRoute53Record, 'Yes']
    - !Not [!Equals [!Ref HostedZoneId, '']]

Resources:
  # CloudFront Distribution
  CloudFrontDistribution:
    Type: AWS::CloudFront::Distribution
    Properties:
      DistributionConfig:
        Aliases:
          - !Ref CustomDomainName
        Comment: !Sub 'CloudFront distribution for WorkSpaces Web Portal - ${CustomDomainName}'
        Enabled: true
        HttpVersion: http2
        IPV6Enabled: false  # WorkSpaces Secure Browser does not support IPv6
        PriceClass: PriceClass_All
        
        # Origin Configuration
        Origins:
          - Id: WorkSpacesWebOrigin
            DomainName: !Ref PortalEndpoint
            CustomOriginConfig:
              HTTPSPort: 443
              OriginProtocolPolicy: https-only
              OriginSSLProtocols:
                - TLSv1.2
            OriginCustomHeaders:
              - HeaderName: workspacessecurebrowser-custom-domain
                HeaderValue: !Ref CustomDomainName
        
        # Default Cache Behavior
        DefaultCacheBehavior:
          TargetOriginId: WorkSpacesWebOrigin
          ViewerProtocolPolicy: https-only
          AllowedMethods:
            - GET
            - HEAD
            - OPTIONS
            - PUT
            - POST
            - PATCH
            - DELETE
          Compress: false
          # Cache Policy: CachingDisabled (using predefined managed policy)
          CachePolicyId: 4135ea2d-6df8-44a3-9df3-4b5a84be39ad
          # Origin Request Policy: AllViewerExceptHostHeader (using predefined managed policy)
          OriginRequestPolicyId: b689b0a8-53d0-40ab-baf2-68738e2966ac
        
        # SSL Configuration
        ViewerCertificate:
          AcmCertificateArn: !Ref CertificateArn
          SslSupportMethod: sni-only
          MinimumProtocolVersion: TLSv1.2_2021
      
      Tags:
        - Key: Name
          Value: !Sub '${AWS::StackName}-cloudfront'

  # Route 53 Record (optional - requires hosted zone to exist)
  Route53Record:
    Type: AWS::Route53::RecordSet
    Condition: ShouldCreateRoute53Record
    Properties:
      HostedZoneId: !Ref HostedZoneId
      Name: !Ref CustomDomainName
      Type: A
      AliasTarget:
        DNSName: !GetAtt CloudFrontDistribution.DomainName
        HostedZoneId: Z2FDTNDATAQYW2  # CloudFront Hosted Zone ID
        EvaluateTargetHealth: false

Outputs:
  PortalEndpoint:
    Description: 'WorkSpaces Web Portal endpoint used as origin'
    Value: !Ref PortalEndpoint
    Export:
      Name: !Sub '${AWS::StackName}-PortalEndpoint'
  
  CustomDomainEndpoint:
    Description: 'Custom domain endpoint for the portal'
    Value: !Sub 'https://${CustomDomainName}'
    Export:
      Name: !Sub '${AWS::StackName}-CustomDomainEndpoint'
  
  CloudFrontDistributionId:
    Description: 'CloudFront Distribution ID'
    Value: !Ref CloudFrontDistribution
    Export:
      Name: !Sub '${AWS::StackName}-CloudFrontDistributionId'
  
  CloudFrontDomainName:
    Description: 'CloudFront Distribution Domain Name'
    Value: !GetAtt CloudFrontDistribution.DomainName
    Export:
      Name: !Sub '${AWS::StackName}-CloudFrontDomainName'
  
  CertificateArn:
    Description: 'SSL Certificate ARN used by CloudFront'
    Value: !Ref CertificateArn
    Export:
      Name: !Sub '${AWS::StackName}-CertificateArn'

Metadata:
  AWS::CloudFormation::Interface:
    ParameterGroups:
      - Label:
          default: "Existing Portal Configuration"
        Parameters:
          - PortalEndpoint
      - Label:
          default: "Custom Domain Configuration"
        Parameters:
          - CustomDomainName
          - CertificateArn
          - CreateRoute53Record
          - HostedZoneId
    ParameterLabels:
      PortalEndpoint:
        default: "Portal Endpoint"
      CustomDomainName:
        default: "Custom Domain Name"
      CertificateArn:
        default: "SSL Certificate ARN"
      CreateRoute53Record:
        default: "Create Route53 Record"
      HostedZoneId:
        default: "Hosted Zone ID"
```

Per utilizzare questo modello:

1. Salva il modello qui sopra come `workspaces-web-custom-domain-template.yaml`

1. Esegui la distribuzione utilizzando la AWS console, la AWS CLI AWS o l'SDK con i valori dei parametri specifici

1. Dopo la distribuzione, configura il portale con il dominio personalizzato come descritto nel passaggio 4 di seguito

**Configurazione del portale**

Registra il tuo dominio personalizzato come attributo delle impostazioni del portale utilizzando la AWS console, l' UpdatePortal API o il comando CLI AWS update-portal.

1. Apri la console WorkSpaces Secure Browser all'indirizzo. [https://console.aws.amazon.com/workspaces-web/home](https://console.aws.amazon.com/workspaces-web/home)

1. Nel riquadro di navigazione scegli **Portali web**.

1. Seleziona il portale web che desideri configurare e scegli **Modifica**.

1. Nelle impostazioni del portale, aggiungi il tuo dominio personalizzato.

1. Salva la configurazione del portale.

**Verifica la tua configurazione**

Per testare la tua configurazione, segui questi passaggi:

1. Apri un browser Web e accedi all'URL del tuo dominio personalizzato (ad esempio,**https://myportal.example.com**).

1. Se tutto è configurato correttamente, dovresti vedere la pagina di accesso al tuo portale.

1. Successivamente, inserisci l'URL del portale nel tuo browser, dovresti essere reindirizzato al dominio personalizzato dopo aver effettuato l'accesso al tuo IdP.

1. Infine, accedi al tuo IdP e fai clic sul riquadro dell'applicazione relativo al tuo portale. Dovresti essere reindirizzato al dominio personalizzato.