Federação de um provedor de identidades (IdP) nativo para o Amazon Redshift - Amazon Redshift

Federação de um provedor de identidades (IdP) nativo para o Amazon Redshift

O gerenciamento de identidades e permissões para o Amazon Redshift é facilitado com a federação do provedor de identidades nativo porque ela utiliza o provedor de identidades existente para simplificar a autenticação e o gerenciamento de permissões. Para isso, ela possibilita o compartilhamento de metadados de identidade de seu provedor de identidades com o Redshift. Para a primeira iteração desse recurso, o provedor de identidades compatível é o Microsoft Azure Active Directory (Azure AD).

Para configurar o Amazon Redshift para que ele possa autenticar identidades do provedor de identidades de terceiro, inscreva o provedor de identidades no Amazon Redshift. Isso permite que o Redshift autentique usuários e funções definidos pelo provedor de identidades. Assim, você pode evitar a necessidade de executar o gerenciamento granular de identidades tanto no provedor de identidades de terceiro quanto no Amazon Redshift, porque as informações de identidade são compartilhadas.

Para obter informações sobre o uso de perfis de sessão que são transferidos de grupos de provedores de identidades (IdP), consulte PG_GET_SESSION_ROLES no Guia do desenvolvedor de banco de dados do Amazon Redshift.

Federação de um provedor de identidades (IdP) nativo

Para concluir a configuração preliminar entre o provedor de identidades e o Amazon Redshift, execute algumas etapas: primeiro, inscreva o Amazon Redshift como uma aplicação de terceiro em seu provedor de identidades, solicitando as permissões de API necessárias. Em seguida, crie usuários e grupos no provedor de identidades. Por último, inscreva o provedor de identidades no Amazon Redshift usando instruções SQL, as quais definem parâmetros de autenticação exclusivos do provedor de identidades. Como parte da inscrição do provedor de identidades no Redshift, atribua um namespace para garantir que os usuários e as funções sejam agrupados corretamente.

Quando o provedor de identidades é inscrito no Amazon Redshift, a comunicação entre o Redshift e o provedor de identidades é estabelecida. Um cliente pode então passar tokens e realizar a autenticação no Redshift como uma entidade de provedor de identidades. O Amazon Redshift usa as informações de associação de grupo de IdP a fim de fazer o mapeamento para funções do Redshift. Se o usuário ainda não existir no Redshift, ele será criado. Serão criadas funções mapeadas para grupos de provedores de identidade se elas não existirem. O administrador do Amazon Redshift concede permissão nas funções, e os usuários podem executar consultas e outras tarefas de banco de dados.

As seguintes etapas descrevem como funciona a federação do provedor de identidades nativo quando um usuário faz login:

  1. Quando um usuário faz login usando a opção de IdP nativo, por meio do cliente, o token do provedor de identidades é enviado do cliente ao driver.

  2. O usuário é autenticado. Se o usuário ainda não existir no Amazon Redshift, será criado um novo usuário. O Redshift mapeia os grupos de provedores de identidade do usuário para funções do Redshift.

  3. As permissões são atribuídas com base nas funções do Redshift do usuário. Elas são concedidas a usuários e funções por um administrador.

  4. O usuário pode consultar o Redshift.

Ferramentas de cliente de desktop

Para obter instruções sobre como usar a federação do provedor de identidades nativo para se conectar ao Amazon Redshift com o Power BI, consulte a publicação de blog Integrate Amazon Redshift native IdP federation with Microsoft Azure Active Directory (AD) and Power BI (Integração da federação do IdP nativo do Amazon Redshift com o Microsoft Azure Active Directory (AD) e Power BI). Ela descreve uma implementação detalhada da configuração de IdP nativo do Amazon Redshift com o Azure AD. Além disso, detalha as etapas para configurar a conexão do cliente para o Power BI Desktop ou o serviço Power BI. As etapas incluem registro de aplicações, configuração de permissões e configuração de credenciais.

Para saber como integrar a federação de IdP nativa do Amazon Redshift com o Azure AD, usando o Power BI Desktop e o JDBC Client-SQL Workbench/J, assista ao seguinte vídeo:

Para obter instruções sobre como usar a federação do provedor de identidades nativo para se conectar ao Amazon Redshift com um cliente SQL, especificamente DBeaver ou SQL Workbench/J, consulte a publicação de blog Integrate Amazon Redshift native IdP federation with Microsoft Azure AD using a SQL client (Integração da federação do IdP nativo do Amazon Redshift com o Microsoft Azure AD usando um cliente SQL).

Limitações

Estas limitações são aplicáveis:

  • Os drivers do Amazon Redshift são compatíveis com BrowserIdcAuthPlugin a partir das seguintes versões:

    • Driver JDBC do Amazon Redshift v2.1.0.30

    • Driver ODBC do Amazon Redshift v2.1.3

    • Driver Python do Amazon Redshift v2.1.3

  • Os drivers do Amazon Redshift são compatíveis com IdpTokenAuthPlugin a partir das seguintes versões:

    • Driver JDBC do Amazon Redshift v2.1.0.19

    • Driver ODBC do Amazon Redshift v2.0.0.9

    • Driver Python do Amazon Redshift v2.0.914

  • Não há suporte para a VPC aprimorada: a VPC aprimorada não é compatível quando você configura a propagação de identidade confiável do Redshift com o Centro de Identidade do AWS IAM. Para ter mais informações sobre a VPC aprimorada, consulte Roteamento aprimorado da VPC no Amazon Redshift.

  • Cache do Centro de Identidade do AWS IAM: o Centro de Identidade do AWS IAM armazena em cache as informações da sessão. Isso pode causar problemas de acesso imprevisíveis quando você tenta se conectar ao banco de dados do Redshift por meio do Editor de Consultas do Redshift v2. Isso ocorre porque a sessão associada do Centro de Identidade do AWS IAM no Editor de Consultas v2 permanece válida, mesmo em um caso em que o usuário do banco de dados está desconectado do Console da AWS. O cache expira após uma hora, o que normalmente soluciona qualquer problema.