

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Configurando domínio personalizado para seu portal
<a name="configure-custom-domains"></a>

## Como funciona
<a name="custom-domains-how-it-works"></a>

Quando você configura um domínio personalizado:
+ Você cria e configura um proxy reverso com seu domínio personalizado para rotear o tráfego para o endpoint do portal.
+ Os usuários acessam seu portal através do seu domínio personalizado em vez do endpoint padrão do portal.
+ Os certificados SSL garantem conexões seguras durante todo o processo.

## Pré-requisitos
<a name="custom-domains-prerequisites"></a>

Antes de configurar domínios personalizados, verifique se você tem:
+ Um nome de domínio que você gerencia por meio de um provedor de serviços de DNS, como o Amazon Route53.
+ Um portal de Navegador WorkSpaces Seguro. Para obter mais informações sobre a criação de um portal, consulte[Criação de um portal web para o Amazon WorkSpaces Secure Browser](getting-started-step1.md).
+ Certifique-se de ter as permissões necessárias para gerenciar o AWS Certificate Manager e CloudFront as configurações de DNS.

**Importante**  
Os usuários devem habilitar cookies de terceiros para o domínio personalizado em seus navegadores para garantir a funcionalidade adequada do portal.  
Certifique-se de que você possua e gerencie adequadamente o domínio personalizado e seus registros DNS para manter a segurança e a funcionalidade do seu portal.

**nota**  
Para habilitar a extensão de login único para domínios personalizados, os usuários devem instalar a extensão no navegador com uma versão posterior à 1.0.2505.6608.  
Os usuários são solicitados a instalar a extensão quando fazem login em um portal. Para obter detalhes sobre a experiência do usuário com a extensão, consulte [Extensão de login único para o Amazon WorkSpaces Secure Browser](extension.md).

## Introdução
<a name="custom-domains-getting-started"></a>

Você pode configurar seu domínio personalizado como um atributo de configurações do portal ao criar um novo portal ou ao editar um portal existente. Isso pode ser feito usando os comandos AWS Console, SDK CloudFormation ou AWS CLI.

Recomendamos configurar uma CloudFront distribuição da Amazon como um proxy reverso que roteia o tráfego do seu domínio personalizado para o endpoint do portal WorkSpaces Secure Browser.

**nota**  
Embora a Amazon CloudFront seja recomendada como solução de proxy reverso, você pode usar configurações alternativas de proxy reverso. Certifique-se de atender às configurações de origem e cache exigidas, conforme detalhado nas etapas de CloudFront configuração da Amazon.

## Configurando CloudFront como proxy reverso
<a name="custom-domains-getting-started"></a>

Para concluir a configuração de um proxy reverso, você precisa:
+ Um certificado SSL por meio de AWS Certificate Manager (ACM)
+ Uma CloudFront distribuição da Amazon
+ Registros de DNS
+ Portal configurado com seu domínio personalizado

**SSL Certificate (Certificado SSL)**

Se você ainda não tiver um, siga estas etapas para solicitar um por meio do ACM:

1. Navegue até o console do ACM em[https://console.aws.amazon.com/acm](https://console.aws.amazon.com/acm).
**Importante**  
Use a região Leste dos EUA (Norte da Virgínia), pois CloudFront exige que os certificados sejam armazenados lá.

1. Solicite um certificado:
   + Para novos usuários do ACM: escolha **Começar** em **Provisionar certificados**
   + Para usuários existentes do ACM: escolha **Solicitar um certificado**

1. Escolha **Solicitar um certificado público** e, em seguida, escolha **Solicitar um certificado**.
**nota**  
Você também pode importar um certificado existente. Para obter mais informações, consulte [Importação de certificados para o ACM no Guia](https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html) do usuário do *ACM.*

1. Insira seu nome de domínio principal (por exemplo,**myportal.example.com**).

1. Escolha um método de validação:
   + **Validação de DNS** (recomendada para usuários do Route 53) — Permite a criação automática de conjuntos de registros em sua zona hospedada. Para obter mais informações, consulte [Validação de DNS](https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-validate-dns.html) no Guia do *usuário do ACM*.
   + **Validação de e-mail** — Para obter mais informações, consulte [Validação de e-mail](https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-validate-email.html) no *Guia do usuário do ACM*.

1. Revise suas configurações e escolha **Confirmar e solicitar**.

**CloudFront distribuição**

Crie uma CloudFront distribuição para solicitações de proxy do seu domínio personalizado para o endpoint do portal.

1. Navegue até o CloudFront console em[https://console.aws.amazon.com/cloudfront](https://console.aws.amazon.com/cloudfront).

1. Escolha **Criar distribuição**.
   + **Nome da distribuição**: insira um nome para a distribuição
   + **Tipo de distribuição**: Site ou aplicativo único
**nota**  
Se seu domínio personalizado for gerenciado no Route 53 na mesma conta da AWS, CloudFront poderá gerenciar automaticamente seu DNS para você. Insira seu domínio personalizado e clique em “Verificar domínio”. Se você tiver um domínio de um provedor de DNS diferente, pule esta etapa e configure seu domínio posteriormente. 

1. Defina as configurações de origem:
   + **Tipo de origem**: Outro
   + **Origem personalizada**: insira o endpoint do portal .workspaces-web.com *<portalId>*
   + **Caminho de origem**: deixe em branco (padrão)

1. Personalize as configurações de origem:
   + Adicionar cabeçalho personalizado
**Importante**  
O acesso ao portal por meio de domínio personalizado só funcionará se esse cabeçalho estiver presente em solicitações com proxy. Certifique-se de que o nome e o valor do cabeçalho estejam especificados exatamente como mencionado.
     + **Nome do cabeçalho**: workspacessecurebrowser-custom-domain
     + **Valor**: Seu domínio personalizado (por exemplo,**myportal.example.com**)
   + **Protocolo**: somente HTTPS
   + **Porta HTTPS**: 443 (mantenha o padrão)
   + **Protocolo SSL original mínimo**: TLSv1 .2 (padrão)
   + **Tipo de endereço IP de origem**: IPv4 somente (o Amazon WorkSpaces Secure Browser não oferece suporte IPv6 no momento da redação deste guia de administração).

1. Personalize as configurações de cache:
   + **Política de protocolo do visualizador**: redirecionar HTTP para HTTPS
   + **Métodos HTTP permitidos**: GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE
   + **Política de cache**: CachingDisabled
   + **Política de solicitação de origem**: AllViewerExceptHostHeader
**Importante**  
O acesso ao portal por meio de domínio personalizado só funcionará se a política de solicitação de origem estiver definida como AllViewerExceptHostHeader. Como o nome sugere, essa política filtra somente o cabeçalho do host dos cabeçalhos da solicitação e passa todos os cabeçalhos restantes para a origem.

1. Você pode configurar o WAF se quiser, mas isso não é necessário para o propósito desta configuração.

1. Em Obter certificado TLS, selecione o certificado TLS criado na Etapa 1.

1. Revise as configurações e escolha **Criar distribuição**.

**Registros DNS**

O Cloudfront pode atualizar seus registros DNS no Route 53 para rotear o tráfego dos domínios especificados para a distribuição criada na Etapa 2, se sua zona hospedada estiver na mesma conta da AWS.

1. Navegue até CloudFront as configurações

1. Clique em “Encaminhar domínios para CloudFront” 

1. Clique em “Configurar roteamento automaticamente” 

Se você configurou o DNS para o domínio personalizado em outro provedor de serviços ou outra conta da AWS, configure seu provedor de DNS para rotear o tráfego do seu domínio para a distribuição. As etapas a seguir descrevem como fazer isso usando o Route 53.

1. Abra o console do Amazon Route 53 em[https://console.aws.amazon.com/route53](https://console.aws.amazon.com/route53).

1. Acesse o gerenciamento de DNS:
   + Se você está começando a usar o Route 53 com essa AWS conta, a página de visão geral do Amazon Route 53 é aberta. Em Gerenciamento de DNS, escolha **Começar agora**.
   + Se você já usou o Route 53 com essa AWS conta, vá para a próxima etapa.

1. No painel de navegação, escolha **Zonas hospedadas**.

1. Crie uma zona hospedada se você ainda não tiver uma:
   + Para direcionar o tráfego da Internet para seus recursos, consulte [Criação de uma zona hospedada pública](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/CreatingHostedZone.html) no *Guia do desenvolvedor do Amazon Route 53*.
   + Para rotear o tráfego em sua VPC, consulte [Criação de uma zona hospedada privada no Guia](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zone-private-creating.html) do *desenvolvedor do Amazon Route 53*.

1. Na página **Zonas hospedadas**, escolha o nome da zona hospedada que você deseja administrar.

1. Escolha **Create Record Set (Criar conjunto de registros)**.

1. Crie uma entrada para seu domínio (por exemplo,**myportal.example.com**):
   + **Tipo**: A — IPv4 endereço
   + **Alias**: Yes
   + **Alvo do alias**: URL CloudFront de distribuição

   Mantenha os valores padrão para todas as demais configurações.

**nota**  
Se você não estiver usando o Route 53 para gerenciar o DNS do seu domínio, use seu provedor de serviços de DNS e adicione entradas de DNS que apontem para seu domínio na URL da sua distribuição. CloudFront 

**Como alternativa, você pode usar o CloudFormation modelo a seguir para criar sua CloudFront distribuição:**

Esse CloudFormation modelo cria automaticamente a CloudFront distribuição, configura as configurações de proxy reverso e, opcionalmente, cria registros DNS do 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"
```

Para usar esse modelo:

1. Salve o modelo acima como `workspaces-web-custom-domain-template.yaml`

1. Implante usando o AWS console, a AWS CLI ou o AWS SDK com seus valores de parâmetros específicos

1. Após a implantação, configure seu portal com o domínio personalizado conforme descrito na Etapa 4 abaixo

**Configuração do portal**

Registre seu domínio personalizado como um atributo de configurações do portal usando o AWS console, a UpdatePortal API ou o comando da CLI AWS update-portal.

1. Abra o console do WorkSpaces Secure Browser em[https://console.aws.amazon.com/workspaces-web/home](https://console.aws.amazon.com/workspaces-web/home).

1. No painel de navegação, selecione **Portais da Web**.

1. Selecione o portal da web que você deseja configurar e escolha **Editar**.

1. Nas configurações do portal, adicione seu domínio personalizado.

1. Salve a configuração do portal.

**Teste sua configuração**

Para testar sua configuração, siga estas etapas:

1. Abra um navegador da Web e navegue até o URL do seu domínio personalizado (por exemplo,**https://myportal.example.com**).

1. Se tudo estiver configurado corretamente, você deverá ver a página de entrada do seu portal.

1. Em seguida, insira a URL do portal em seu navegador, você deve ser redirecionado para o domínio personalizado após fazer login no seu IdP.

1. Finalmente, entre no seu IdP e clique no mosaico do aplicativo do seu portal. Você deve ser redirecionado para um domínio personalizado.