

 O Amazon Redshift não permitirá mais a criação de UDFs do Python a partir do Patch 198. As UDFs do Python existentes continuarão a funcionar normalmente até 30 de junho de 2026. Para ter mais informações, consulte a [publicação de blog ](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

# Segurança da infraestrutura no Amazon Redshift
<a name="security-network-isolation"></a>

Como serviço gerenciado, o Amazon Redshift é protegido pela segurança da rede global da AWS. Para saber mais sobre serviços de segurança da AWS e como a AWS protege a infraestrutura, consulte [Segurança na Nuvem AWS](https://aws.amazon.com/security/). Para projetar seu ambiente da AWS usando as práticas recomendadas de segurança da infraestrutura, consulte [Proteção de Infraestrutura](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/infrastructure-protection.html) em *Pilar de Segurança: AWS Estrutura bem arquitetada*.

Você usa as chamadas de API publicadas da AWS para acessar o Amazon Redshift por meio da rede. Os clientes devem oferecer compatibilidade com:
+ Transport Layer Security (TLS). Exigimos TLS 1.2 e recomendamos TLS 1.3.
+ Conjuntos de criptografia com perfect forward secrecy (PFS) como DHE (Ephemeral Diffie-Hellman) ou ECDHE (Ephemeral Elliptic Curve Diffie-Hellman). A maioria dos sistemas modernos, como Java 7 e versões posteriores, comporta esses modos.

## Isolamento de rede
<a name="network-isolation"></a>

Uma nuvem privada virtual (VPC) baseada no serviço Amazon VPC é sua rede privada e logicamente isolada na Nuvem AWS. Você pode implantar um cluster do Amazon Redshift ou um grupo de trabalho do Redshift sem servidor em uma VPC seguindo estas etapas:
+ Crie um VPC em uma região da AWS. Para obter mais informações, consulte [O que é o Amazon VPC?](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) no *Manual do usuário do Amazon VPC*. 
+ Crie duas ou mais sub-redes de VPC privadas. Para obter mais informações, consulte [VPCs e sub-redes](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html) no *Manual do usuário do Amazon VPC*.
+ Implante um cluster do Amazon Redshift ou um grupo de trabalho do Redshift sem servidor. Para ter mais informações, consulte [Sub-redes para recursos do Redshift](working-with-cluster-subnet-groups.md) ou [Grupos de trabalho e namespaces](serverless-workgroup-namespace.md).

Um cluster do Amazon Redshift é bloqueado por padrão no provisionamento. Para permitir o tráfego de rede de entrada de clientes do Amazon Redshift, associe um grupo de segurança da VPC a um cluster do Amazon Redshift. Para obter mais informações, consulte [Sub-redes para recursos do Redshift](working-with-cluster-subnet-groups.md). 

Para permitir tráfego somente de e para intervalos específicos de endereços IP, atualize os grupos de segurança com sua VPC. Um exemplo é permitir tráfego somente de e para sua rede corporativa.

Ao configurar listas de controle de acesso associadas às sub-redes com que o cluster do Amazon Redshift está marcado, verifique se os respectivos intervalos CIDR do S3 da Região da AWS estão adicionados à lista de permissões para regras de entrada e saída. Isso permite que você execute operações baseadas em S3, como Redshift Spectrum, COPY e UNLOAD, sem interrupções.

O exemplo de comando a seguir analisa a resposta JSON de todos os endereços IPv4 usados no Amazon S3, na região us-east-1.

```
curl https://ip-ranges.amazonaws.com/ip-ranges.json | jq -r '.prefixes[] | select(.region=="us-east-1") | select(.service=="S3") | .ip_prefix'

54.231.0.0/17

52.92.16.0/20

52.216.0.0/15
```

Para obter instruções sobre como obter intervalos de IP do S3 para uma região específica, consulte [Intervalos de endereços IP da AWS](https://docs.aws.amazon.com/general/latest/gr/aws-ip-ranges.html).

O Amazon Redshift oferece suporte à implantação de clusters em VPCs de locação dedicadas. Para obter mais informações, consulte [Instâncias dedicadas](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/dedicated-instance.html) no *Guia do usuário do Amazon EC2*.

## Grupos de segurança do Amazon Redshift
<a name="working-with-security-groups"></a>

Quando você provisiona um cluster do Amazon Redshift, ele é bloqueado por padrão para que ninguém tenha acesso a ele. Para conceder a outros usuários acesso de entrada a um cluster do Amazon Redshift, você associa o cluster a um grupo de segurança. Se você estiver na plataforma EC2-VPC, poderá usar um grupo de segurança Amazon VPC existente ou definir um novo e associá-lo a um cluster. Para obter mais informações sobre o gerenciamento de um cluster na plataforma EC2-VPC, consulte [Recursos do Redshift em uma VPC](managing-clusters-vpc.md).

## Endpoints da VPC de interface
<a name="security-private-link"></a>

Você pode se conectar diretamente aos serviços de API do Amazon Redshift e Amazon Redshift sem servidor usando um endpoint da VPC de interface (AWS PrivateLink) em sua nuvem privada virtual (VPC) em vez de se conectar pela internet. Para obter mais informações sobre as ações de API do Amazon Redshift, consulte [Ações](https://docs.aws.amazon.com/redshift/latest/APIReference/API_Operations.html) na *Referência de API do Amazon Redshift*. Para obter informações sobre as ações de API do Redshift sem servidor, consulte [Actions](https://docs.aws.amazon.com/redshift-serverless/latest/APIReference/API_Operations.html) na *Referência de API do Amazon Redshift*. Para obter mais informações sobre AWS PrivateLink, consulte [Endpoints da interface da VPC (AWS PrivateLink)](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html) no *Manual do usuário do Amazon VPC*. Observe que a conexão JDBC/ODBC com o cluster ou o espaço de trabalho não faz parte do serviço de API do Amazon Redshift.

Quando você usa um endpoint da VPC de interface, a comunicação entre a VPC e o Amazon Redshift ou o Redshift sem servidor é conduzida inteiramente dentro da rede da AWS, o que pode fornecer maior segurança. Cada VPC endpoint é representado por uma ou mais interfaces de rede elástica com endereços IP privados em suas sub-redes da VPC. Para obter mais informações sobre interfaces de rede elástica, consulte [Interfaces de rede elástica](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html) no *Guia do usuário do Amazon EC2.* 

Um endpoint da interface da VPC conecta sua VPC diretamente ao Amazon Redshift. Ele não usa um gateway da Internet, um dispositivo de conversão de endereço de rede (NAT), uma conexão de rede privada virtual (VPN) ou conexão Direct Connect. As instâncias em sua VPC não precisam de endereços IP públicos para se comunicarem com a API do Amazon Redshift. 

Para usar o Amazon Redshift ou o Redshift sem servidor por meio da VPC, você tem duas opções. Um deles é conectar a partir de uma instância que esteja dentro da VPC. O outro é conectar sua rede privada à sua VPC usando uma opção de Site-to-Site VPN ou do Direct Connect. Para obter mais informações sobre opções de Site-to-Site VPN, consulte [Conexões VPN](https://docs.aws.amazon.com/vpc/latest/userguide/vpn-connections.html) no *Manual do usuário do Amazon VPC*. Para obter informações sobre o Direct Connect, consulte [Criação de uma conexão](https://docs.aws.amazon.com/directconnect/latest/UserGuide/create-connection.html), no *Manual do usuário do Direct Connect*. 

É possível criar um endpoint da interface da VPC para se conectar ao Amazon Redshift usando o Console de gerenciamento da AWS ou os comandos da AWS Command Line Interface (AWS CLI). Para obter mais informações, consulte [Criação de um endpoint de interface](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpce-interface.html#create-interface-endpoint).

Depois de criar um endpoint da interface da VPC, você poderá habilitar nomes de host DNS privados para o endpoint. Quando você faz isso, o endpoint padrão é o seguinte:
+ **Amazon Redshift provisionado**: `https://redshift.Region.amazonaws.com`
+ **Amazon Redshift sem servidor**: `https://redshift-serverless.Region.amazonaws.com`

Se você não habilitar nomes de host DNS privados, o Amazon VPC fornece um nome de endpoint do DNS que você pode usar no formato a seguir.
+ **Amazon Redshift provisionado**: `VPC_endpoint_ID.redshift.Region.vpce.amazonaws.com`
+ **Amazon Redshift sem servidor**: `VPC_endpoint_ID.redshift-serverless.Region.vpce.amazonaws.com`

Para obter mais informações, consulte [Endpoints da VPC da interface (AWS PrivateLink)](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html) no *Manual do Usuário do Amazon VPC*.

O Amazon Redshift e o Redshift sem servidor comportam chamadas a todas as [operações de API do Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/APIReference/API_Operations.html) e às [operações de API do Redshift sem servidor](https://docs.aws.amazon.com/redshift-serverless/latest/APIReference/API_Operations.html) dentro da VPC. 

É possível anexar políticas de endpoint da VPC a um endpoint da VPC para controlar o acesso aos principais do AWS Identity and Access Management (IAM). Também é possível associar grupos de segurança a um endpoint da VPC para controlar o acesso de entrada e saída com base na origem e no destino do tráfego de rede. Um exemplo é um intervalo de endereços IP. Para obter mais informações, consulte [Controlar o acesso a serviços com VPC endpoints](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints-access.html) no *Guia do usuário da Amazon VPC*. 

### Políticas de endpoint da VPC para o Amazon Redshift
<a name="security-private-link-vpc_endpoint-policy"></a>

Você pode criar uma política de endpoints da VPC para Amazon Redshift para especificar o seguinte:
+ O principal que pode ou não executar ações
+ As ações que podem ser executadas
+ Os recursos nos quais as ações podem ser executadas

Para mais informações, consulte [Controlar o acesso a serviços com VPC endpoints](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints-access.html) no *Guia do usuário da Amazon VPC*. 

Veja a seguir exemplos de políticas de endpoint da VPC.

#### Exemplos de políticas de endpoint provisionado do Amazon Redshift
<a name="security-private-link-examples-provisioned"></a>

Veja a seguir exemplos de políticas de endpoint da VPC para o Amazon Redshift provisionado.

##### Exemplo: política de endpoint da VPC que nega todo o acesso de uma conta da AWS especificada
<a name="security-private-link-example-1"></a>

A política de endpoint da VPC a seguir nega o `123456789012` da conta da AWS todo o acesso aos recursos que usam este endpoint.

```
{
    "Statement": [
        {
            "Action": "*",
            "Effect": "Allow",
            "Resource": "*",
            "Principal": "*"
        },
        {
            "Action": "*",
            "Effect": "Deny",
            "Resource": "*",
            "Principal": {
                "AWS": [
                    "123456789012"
                ]
            }
        }
    ]
}
```

##### Exemplo: política de endpoint da VPC para permitir o acesso à VPC apenas a um perfil do IAM especificado
<a name="security-private-link-example-1.1"></a>

A política de endpoint da VPC a seguir permite acesso total somente ao perfil do IAM *`redshiftrole`* na conta da AWS *123456789012*. Todos os outros principais IAM têm acesso negado usando o endpoint.

```
   {
    "Statement": [
        {
            "Action": "*",
            "Effect": "Allow",
            "Resource": "*",
            "Principal": {
                "AWS": [
                    "arn:aws:iam::123456789012:role/redshiftrole"
                ]
            }
        }]
}
```

Isso é apenas um exemplo. Na maioria dos casos de uso, recomendamos anexar permissões para ações específicas a fim de restringir o escopo das permissões.

##### Exemplo: política de endpoint da VPC para permitir o acesso ao VPC apenas a um principal IAM especificado (usuário)
<a name="security-private-link-example-2"></a>

A política de endpoint da VPC a seguir permite acesso total somente ao usuário do IAM *`redshiftadmin`* na conta da AWS *123456789012*. Todos os outros principais IAM têm acesso negado usando o endpoint.

```
   {
    "Statement": [
        {
            "Action": "*",
            "Effect": "Allow",
            "Resource": "*",
            "Principal": {
                "AWS": [
                    "arn:aws:iam::123456789012:user/redshiftadmin"
                ]
            }
        }]
}
```

Isso é apenas um exemplo. Na maioria dos casos de uso, recomendamos anexar permissões a um perfil antes de atribuí-lo a um usuário. Além disso, recomendamos o uso de ações específicas para restringir o escopo das permissões.

##### Exemplo: política de endpoint da VPC para permitir operações somente leitura do Amazon Redshift
<a name="security-private-link-example-3"></a>

A política de endpoint da VPC a seguir permite que apenas a conta da AWS *`123456789012`* execute as ações especificadas do Amazon Redshift. 

As ações especificadas fornecem o equivalente ao acesso somente leitura para o Amazon Redshift. Todas as outras ações na VPC serão negadas para a conta especificada. Além disso, todas as outras contas têm acesso negado. Para obter uma lista de ações do Amazon Redshift, consulte [Ações, recursos e chaves de condição do Amazon Redshift](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonredshift.html) no *Manual do usuário do IAM*.

```
  {
    "Statement": [
        {
            "Action": [
                "redshift:DescribeAccountAttributes",
                "redshift:DescribeClusterParameterGroups",
                "redshift:DescribeClusterParameters",
                "redshift:DescribeClusterSecurityGroups",
                "redshift:DescribeClusterSnapshots",
                "redshift:DescribeClusterSubnetGroups",
                "redshift:DescribeClusterVersions",
                "redshift:DescribeDefaultClusterParameters",
                "redshift:DescribeEventCategories",
                "redshift:DescribeEventSubscriptions",
                "redshift:DescribeHsmClientCertificates",
                "redshift:DescribeHsmConfigurations",
                "redshift:DescribeLoggingStatus",
                "redshift:DescribeOrderableClusterOptions",
                "redshift:DescribeQuery",
                "redshift:DescribeReservedNodeOfferings",
                "redshift:DescribeReservedNodes",
                "redshift:DescribeResize",
                "redshift:DescribeSavedQueries",
                "redshift:DescribeScheduledActions",
                "redshift:DescribeSnapshotCopyGrants",
                "redshift:DescribeSnapshotSchedules",
                "redshift:DescribeStorage",
                "redshift:DescribeTable",
                "redshift:DescribeTableRestoreStatus",
                "redshift:DescribeTags",
                "redshift:FetchResults",
                "redshift:GetReservedNodeExchangeOfferings"            
            ],
            "Effect": "Allow",
            "Resource": "*",
            "Principal": {
                "AWS": [
                    "123456789012"
                ]
            }
        }
    ]
}
```

##### Exemplo: política de endpoint da VPC negando acesso a um cluster especificado
<a name="security-private-link-example-4"></a>

A política de endpoint da VPC a seguir permite acesso total a todas as contas e principais. Ao mesmo tempo, nega qualquer acesso para a conta da AWS *`123456789012`* em ações executadas no cluster do Amazon Redshift com ID de cluster `my-redshift-cluster`. Outras ações do Amazon Redshift que não oferecem suporte a permissões de nível de recurso para clusters ainda são permitidas. Para obter uma lista de ações do Amazon Redshift e seu tipo de recurso correspondente, consulte [Ações, recursos e chaves de condição do Amazon Redshift](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonredshift.html) no *Manual do usuário do IAM*. 

```
 {
    "Statement": [
        {
            "Action": "*",
            "Effect": "Allow",
            "Resource": "*",
            "Principal": "*"
        },
        {
            "Action": "*",
            "Effect": "Deny",
            "Resource": "arn:aws:redshift:us-east-1:123456789012:cluster:my-redshift-cluster",
            "Principal": {
                "AWS": [
                    "123456789012"
                ]
            }
        }
    ]
}
```

#### Exemplos de política de endpoint do Amazon Redshift sem servidor
<a name="security-private-link-examples-serverless"></a>

Veja a seguir exemplos de políticas de endpoint da VPC para o Redshift sem servidor.

##### Exemplo: política de endpoint da VPC para permitir operações somente leitura do Redshift
<a name="security-private-link-serverless-example-1"></a>

A política de endpoint da VPC a seguir permite que apenas a conta *`123456789012`* da AWS execute as ações especificadas do Redshift sem servidor. 

As ações especificadas oferecem o equivalente ao acesso somente leitura ao Redshift sem servidor. Todas as outras ações na VPC serão negadas para a conta especificada. Além disso, todas as outras contas têm acesso negado. Para obter uma lista de ações do Redshift sem servidor, consulte [Actions, Resources, and Condition Keys for Redshift Serverless](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonredshiftserverless.html) no *Guia do usuário do IAM*.

```
  {
    "Statement": [
        {
            "Action": [
                "redshift-serverless:DescribeOneTimeCredit",
                "redshift-serverless:GetCustomDomainAssociation",
                "redshift-serverless:GetEndpointAccess",
                "redshift-serverless:GetNamespace",
                "redshift-serverless:GetRecoveryPoint",
                "redshift-serverless:GetResourcePolicy",
                "redshift-serverless:GetScheduledAction",
                "redshift-serverless:GetSnapshot",
                "redshift-serverless:GetTableRestoreStatus",
                "redshift-serverless:GetUsageLimit",
                "redshift-serverless:GetWorkgroup"
            ],
            "Effect": "Allow",
            "Resource": "*",
            "Principal": {
                "AWS": [
                    "123456789012"
                ]
            }
        }
    ]
}
```

##### Exemplo: política de endpoint da VPC que nega acesso a um grupo de trabalho especificado
<a name="security-private-link-serverless-example-2"></a>

A política de endpoint da VPC a seguir permite acesso total a todas as contas e principais. Ao mesmo tempo, ela nega à conta *`123456789012`* da AWS qualquer acesso a ações executadas no grupo de trabalho do Amazon Redshift com o ID do grupo de trabalho `my-redshift-workgroup`. Outras ações do Amazon Redshift que não comportam permissões em nível de recurso para grupos de trabalho ainda são permitidas. Para obter uma lista de ações do Amazon Redshift e seu tipo de recurso correspondente, consulte [Actions, Resources, and Condition Keys for Redshift Serverless](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonredshiftserverless.html) no *Guia do usuário do IAM*. 

```
 {
    "Statement": [
        {
            "Action": "*",
            "Effect": "Allow",
            "Resource": "*",
            "Principal": "*"
        },
        {
            "Action": "*",
            "Effect": "Deny",
            "Resource": "arn:aws:redshift-serverless:us-east-1:123456789012:workgroup:my-redshift-workgroup",
            "Principal": {
                "AWS": [
                    "123456789012"
                ]
            }
        }
    ]
}
```