

 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/). 

# Opções para fornecer credenciais do IAM
<a name="options-for-providing-iam-credentials"></a>

Para fornecer credenciais do IAM para uma conexão JDBC ou ODBC, escolha uma das opções a seguir.
+ **AWS Perfil da** 

  Como alternativa ao fornecimento de valores de credenciais sob a forma de configurações JDBC ou ODBC, você pode colocar os valores em um perfil nomeado. Para obter mais informações, consulte [Usar um perfil de configuração](#using-configuration-profile).
+ **Credenciais do IAM**

  Forneça valores para AccessKeyID, SecretAccessKey e, opcionalmente, SessionToken sob a forma de configurações JDBC ou ODBC. SessionToken é obrigatório somente em uma função do IAM com credenciais temporárias. Para obter mais informações, consulte [Opções JDBC e ODBC para fornecer credenciais do IAM](#jdbc-options-for-providing-iam-credentials).
+ **Federação do provedor de identidade** 

  Ao usar a federação de provedor de identidade para permitir que usuários de um provedor de identidade se autentiquem no Amazon Redshift, especifique o nome de um plug-in de provedor de credencial. Para obter mais informações, consulte [Plug-ins de provedores de credenciais](#using-credentials-provider-plugin).

  Os drivers JDBC e ODBC do Amazon Redshift incluem plug-ins para os seguintes provedores de credenciais de federação de identidade baseados em SAML: 
  + Microsoft Active Identity Federation Services (AD FS)
  + PingOne
  + Okta
  + Microsoft Azure Active Directory (Azure AD)

  Você pode fornecer o nome de plug-in e valores relacionados sob a forma de configurações JDBC ou ODBC ou usando um perfil. Para obter mais informações, consulte [Opções para a configuração do driver JDBC versão 2.x](jdbc20-configuration-options.md). 

Para obter mais informações, consulte [Etapa 5: configurar uma conexão JDBC ou ODBC para usar credenciais do IAM](generating-iam-credentials-steps.md#generating-iam-credentials-configure-jdbc-odbc).

## Usar um perfil de configuração
<a name="using-configuration-profile"></a>

Você pode fornecer as opções `GetClusterCredentials` e opções de credenciais do IAM como configurações em perfis nomeados em seu arquivo de configuração da AWS. Para fornecer o nome do perfil, use a opção de perfil JDBC. A configuração é armazenada em um arquivo chamado `config` ou um arquivo chamado `credentials` em uma pasta chamada `.aws` no seu diretório inicial.

Para um plug-in de provedor de credencial baseado em SAML incluído com um driver Amazon Redshift JDBC ou ODBC, você pode usar as configurações descritas anteriormente em [Plug-ins de provedores de credenciais](#using-credentials-provider-plugin). Se `plugin_name` não for usado, as outras opções serão ignoradas.

O exemplo a seguir mostra o arquivo \~/.aws/credentials com dois perfis.

```
[default]
aws_access_key_id=AKIAIOSFODNN7EXAMPLE
aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

[user2]
aws_access_key_id=AKIAI44QH8DHBEXAMPLE
aws_secret_access_key=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY
session_token=AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGd
QrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU
9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz
+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
```

Para suar as credenciais do exemplo `user2`, especifique `Profile=user2` no URL de JDBC.

Para obter mais informações sobre o uso de perfis, consulte [Configurações de arquivos de configuração e credenciais](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html) no *Guia do usuário do AWS Command Line Interface*. 

Para obter mais informações sobre o uso de perfis para o driver JDBC, consulte [Especificar perfis](jdbc20-configure-authentication-ssl.md#jdbc20-aws-credentials-profiles). 

Para obter mais informações sobre o uso de perfis para o driver ODBC, consulte [Métodos de autenticação](odbc20-authentication-ssl.md). 

## Opções JDBC e ODBC para fornecer credenciais do IAM
<a name="jdbc-options-for-providing-iam-credentials"></a>

A tabela a seguir lista as opções JDBC e ODBC para fornecimento de credenciais do IAM.


|  Opção  | Descrição | 
| --- | --- | 
| `Iam` | Para uso somente em uma string de conexão ODBC. Defina como 1 para usar a autenticação do IAM. | 
| `AccessKeyID`<br />`SecretAccessKey`<br />`SessionToken` | O ID da chave de acesso e a chave de acesso secreta para o usuário ou perfil do IAM configurado para autenticação de banco de dados do IAM. O SessionToken é necessário somente para um perfil do IAM com credenciais temporárias. SessionToken não é usado para um usuário. Para obter mais informações, consulte [ Credenciais de segurança temporárias](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html). | 
| plugin\_name | O nome totalmente qualificado de uma classe que implementa um provedor de credenciais. O driver JDBC do Amazon Redshift inclui plug-ins de provedor de credenciais baseados em SAML. Se você fornecer o plugin\_name, também poderá fornecer outras opções relacionadas. Para obter mais informações, consulte [Plug-ins de provedores de credenciais](#using-credentials-provider-plugin). | 
| `Profile`  | O nome de um perfil em um arquivo de credenciais da AWS ou configuração que contém valores para as opções de conexão JDBC. Para obter mais informações, consulte [Usar um perfil de configuração](#using-configuration-profile). | 

## Opções JDBC e ODBC para criar credenciais de usuário de banco de dados
<a name="jdbc-and-odbc-options-for-database-credentials"></a>

Para usar o driver Amazon Redshift JDBC ou ODBC para criar credenciais de usuário do banco de dados, forneça o nome do usuário do banco de dados como uma opção JDBC ou ODBC. Opcional, o driver poderá criar um novo usuário de banco de dados, caso não exista um, e você poderá especificar uma lista de grupos de usuários de banco de dados aos quais o usuário se associará no login. 

Se você usa um provedor de identidade (IdP), trabalhe com o administrador do IdP para determinar os valores corretos dessas opções. O administrador do IdP também pode configurar o IdP para fornecer essas opções; nesse caso, você não precisa fornecer as opções como JDBC ou ODBC. Para obter mais informações, consulte [Etapa 2: configurar declarações de SAML para o IdP](generating-iam-credentials-steps.md#configuring-saml-assertions). 

**nota**  
Se você usar uma variável de política do IAM `${redshift:DbUser}`, conforme descrito em [Políticas de recursos de GetClusterCredentials](redshift-iam-access-control-identity-based.md#redshift-policy-resources.getclustercredentials-resources), o valor para `DbUser` será substituído pelo valor recuperado pelo contexto da solicitação da operação de API. Os drivers do Amazon Redshift usam o valor da variável `DbUser` fornecida pelo URL de conexão, em vez do valor fornecido como um atributo SAML.   
Para ajudar a proteger essa configuração, recomendamos que você use uma condição em uma política do IAM para validar o valor `DbUser` com o `RoleSessionName`. Você pode encontrar exemplos de como definir uma condição usando uma política do IAM em [Exemplo 8: Política do IAM para usar GetClusterCredentials](redshift-iam-access-control-identity-based.md#redshift-policy-examples-getclustercredentials).

A tabela a seguir lista as opções de criação de credenciais de usuário de banco de dados. 


|  Opção  | Descrição | 
| --- | --- | 
| DbUser | O nome de um usuário do banco de dados. Se houver um usuário chamado DbUser no banco de dados, as credenciais temporárias do usuário terão as mesmas permissões que o usuário existente. Se DbUser não existir no banco de dados e AutoCreate for definido como true, um novo usuário DbUser será criado. Se desejar, desabilite a senha de um usuário existente. Para obter mais informações, consulte [ALTER\_USER](https://docs.aws.amazon.com/redshift/latest/dg/r_ALTER_USER.html) | 
| AutoCreate | Especifique `true` para criar um usuário de banco de dados com o nome especificado como DbUser, caso ainda não exista um. O padrão é falso. | 
| DbGroups | Uma lista delimitada por vírgulas dos nomes de um ou mais grupos de bancos de dados existentes que o usuário do banco de dados une para a sessão atual. Por padrão, o novo usuário é adicionado somente a PUBLIC. | 

## Plug-ins de provedores de credenciais
<a name="using-credentials-provider-plugin"></a>

O Amazon Redshift usa plug-ins de provedor de credenciais para autenticação única.

Para comportar autenticação única, o Amazon Redshift fornece o plug-in do Azure AD para o Microsoft Azure Active Directory. Para obter informações sobre como configurar esse plugin, consulte [Configurar a autenticação única de JDBC ou ODBC](setup-azure-ad-identity-provider.md).

### Autenticação multifator
<a name="setting_mfa"></a>

Para oferecer suporte à autenticação multifator (MFA), o Amazon Redshift fornece o plug-in do Azure AD para o Microsoft Azure Active Directory. Use o plug-in SAML do navegador para Okta, PingOne e o plug-in Azure AD do navegador para o Diretório Ativo do Microsoft Azure.

Com o plug-in de navegador do SAML, o fluxo de autenticação do OAuth é assim:

![Fluxos de trabalho do OAuth que mostram como o plug-in, o servidor local, o navegador da web e o endpoint trabalham em conjunto para autenticar um usuário com a autenticação SAML.](http://docs.aws.amazon.com/pt_br/redshift/latest/mgmt/images/BrowserSAML_plugin.png)


1. Um usuário tenta fazer login.

1. O plug-in executa um servidor local para ouvir conexões de entrada no host local.

1. O plug-in inicia um navegador da web para solicitar uma resposta de SAML por HTTPS pelo endpoint do provedor de identidades federado do URL de login de autenticação única especificado.

1. O navegador da web segue o link e solicita que o usuário insira as credenciais.

1. Depois que o usuário autentica e concede consentimento, o endpoint do provedor de identidade federado retorna uma resposta de SAML por HTTPS para o URI indicado por `redirect_uri`.

1. O navegador da web move a mensagem de resposta com a resposta de SAML para o indicado `redirect_uri`.

1. O servidor local aceita a conexão de entrada e o plug-in recupera a resposta SAML e a passa para o Amazon Redshift.

Com o plug-in de navegador do Azure AD, a autenticação de SAML flui assim:

![Fluxos de trabalho do Azure que mostram como o plug-in, o servidor local, o navegador da web e o endpoint trabalham em conjunto para autenticar um usuário com a autenticação SAML.](http://docs.aws.amazon.com/pt_br/redshift/latest/mgmt/images/BrowserAzure_plugin.png)


1. Um usuário tenta fazer login.

1. O plug-in executa um servidor local para ouvir conexões de entrada no host local.

1. O plug-in inicia um navegador da web para solicitar um código de autorização do endpoint `oauth2/authorize` do Azure AD.

1. O navegador da web segue o link gerado por HTTPS e solicita que o usuário insira as credenciais. O link é gerado com o uso de propriedades de configuração, como locatário e client\_id.

1. Depois que o usuário autentica e concede consentimento, o endpoint `oauth2/authorize` do Azure AD retorna e envia uma resposta por HTTPS com o código de autorização para o `redirect_uri` indicado.

1. O navegador da web move a mensagem de resposta com a resposta de SAML para o indicado `redirect_uri`.

1. O servidor local aceita a conexão de entrada e as solicitações de plug-in e recupera o código de autorização e envia uma solicitação POST para o endpoint `oauth2/token` do Azure AD.

1. O endpoint `oauth2/token` do Azure AD retorna uma resposta com um token de acesso para o `redirect_uri` indicado.

1. O plug-in recupera a resposta SAML e a passa para o Amazon Redshift.

Consulte as seguintes seções:
+ Active Directory Federation Services (AD FS)

  Para obter mais informações, consulte [Configurar a autenticação única de JDBC ou ODBC](setup-azure-ad-identity-provider.md).
+ PingOne (Ping) 

  O ping é compatível somente com o adaptador IdP predeterminado do PingOne usando a autenticação de formulários. 

  Para obter mais informações, consulte [Configurar a autenticação única de JDBC ou ODBC](setup-azure-ad-identity-provider.md).
+ Okta 

  O Okta é compatível apenas com o aplicativo fornecido pelo Okta usado com o Console de gerenciamento da AWS. 

  Para obter mais informações, consulte [Configurar a autenticação única de JDBC ou ODBC](setup-azure-ad-identity-provider.md).
+ Microsoft Azure Active Directory

  Para obter mais informações, consulte [Configurar a autenticação única de JDBC ou ODBC](setup-azure-ad-identity-provider.md).

### Opções de plug-in
<a name="configuring_plugin_options"></a>

Para usar um plugin de provedor de credenciais baseado em SAML, especifique as seguintes opções em um perfil nomeado ou usando opções JDBC ou ODBC. Se `plugin_name` não for especificado, as outras opções serão ignoradas.


|  Opção  | Descrição | 
| --- | --- | 
| plugin\_name | Para JDBC, o nome de classe que implementa um provedor de credenciais. Especifique um dos seguintes:[See the AWS documentation website for more details](http://docs.aws.amazon.com/pt_br/redshift/latest/mgmt/options-for-providing-iam-credentials.html)<br />Para o ODBC, especifique um dos seguintes:[See the AWS documentation website for more details](http://docs.aws.amazon.com/pt_br/redshift/latest/mgmt/options-for-providing-iam-credentials.html) | 
| idp\_host  | O nome do host corporativo do provedor de identidade. Este nome não deve conter barras (‘/’). Para um provedor de identidade Okta, o valor de idp\_host deve terminar com .okta.com. | 
| `idp_port`  | A porta usada pelo provedor de identidade. O padrão é 443. Essa porta é ignorada para o Okta. | 
| `preferred_role`  | O nome do recurso da Amazon (ARN) da função nos elementos AttributeValue do atributo Role na declaração de SAML. Trabalhe com o administrador do IdP para localizar o valor apropriado da função preferencial. Para obter mais informações, consulte [Etapa 2: configurar declarações de SAML para o IdP](generating-iam-credentials-steps.md#configuring-saml-assertions). | 
| `user`  | Um nome de usuário corporativo, incluindo domínio quando aplicável. Por exemplo, para o Active Directory, o nome de domínio precisa estar no formato domínio\\nome de usuário. | 
| password   | A senha do usuário corporativo. É recomendável não usar esta opção. Em vez disso, use o cliente SQL para fornecer a senha. | 
| `app_id`  | O ID de um aplicativo do Okta. Usado somente com o Okta. O valor de app\_id vem depois de amazon\_aws no link de incorporação do aplicativo do Okta. Para obter esse valor, consulte o administrador do IdP. Este é um exemplo de um link de incorporação de aplicativo: https://example.okta.com/home/amazon\_aws/0oa2hylwrpM8UGehd1t7/272  | 
| `idp_tenant` | Um locatário usado para o Azure AD. Usado apenas com o Azure. | 
| `client_id`  | Uma ID de cliente para a aplicação empresarial Amazon Redshift no Azure AD. Usado apenas com o Azure. | 