OpenID Connect

É possível configurar o Tableau Server para oferecer suporte ao OpenID Connect para Single Sign-on (Logon único, SSO). O OpenID Connect é um protocolo de autenticação padrão que permite aos usuários fazer logon em um provedor de identidade (IdP) como o Google. Após fazerem logon com sucesso no IdP, eles entram automaticamente no Tableau Server.

A configuração do OpenID Connect envolve várias etapas. Os tópicos nesta seção fornecem informações gerais sobre a utilização do Tableau Server com o OpenID Connect e uma sequência para a configuração do IdP e do Tableau Server.

Visão geral da autenticação

Esta seção descreve o processo de autenticação do OpenID Connect com o Tableau Server.

Etapa 1: um usuário tenta entrar no Tableau Server em um computador cliente.

Etapa 2: o Tableau Server redireciona a solicitação de autenticação ao gateway IdP.

Etapa 3: o usuário é solicitado a fornecer credenciais e faz a autenticação com o IdP com sucesso. O IdP responde com uma URL de redirecionamento de volta ao Tableau Server. A URL de redirecionamento inclui um código de autorização para o usuário.

Etapa 4: o cliente é redirecionado para o Tableau Server e apresenta o código de autorização.

Etapa 5: o Tableau Server apresenta o código de autorização do cliente ao IdP, juntamente com suas próprias credenciais de cliente. O Tableau Server também é cliente do IdP. Esta etapa destina-se a evitar ataques de spoofing ou “man-in-the-middle”.

Etapa 6: o IdP retorna um token de acesso e um token de ID para o Tableau Server.

  • Validação do JSON Web Token (JWT): por padrão, o Tableau Server executa uma validação do IdP JWT. Durante a descoberta, o Tableau Server recupera as chaves públicas especificadas pelo jwks_uri no documento de descoberta da configuração do IdP. O Tableau Server valida o token de ID da expiração e, em seguida, verifica o JWS (JSON Web Signature), o emissor (IdP) e a ID do cliente. Você pode saber mais sobre o processo do JWT na documentação do OpenID, 10. Assinaturas e criptografia e o padrão proposto pela IETF, o JSON Web Token. Recomenda-se deixar a validação do JWT habilitada, a menos que o Idp não ofereça suporte.

  • O token da ID é um conjunto de pares de chaves de atributo para o usuário. Os pares de chaves são chamados de reivindicações. Veja um exemplo de reivindicação de IdP para um usuário:

    "sub"                     : "7gYhRR3HiRRCaRcgvY50ubrtjGQBMJW4rXbpPFpg2cptHP62m2sqowM7G1LwjN5"
    "email"                   : "alice@tableau.com",
    "email_verified"          : true,
    "name"                    : "Alice Adams",
    "given_name"              : "Alice",
    "family_name"             : "Adams",
    "phone_number"            : "+359 (99) 100200305",
    "profile"                 : "https://tableau.com/users/alice"			

Etapa 7: o Tableau Server identifica o usuário nas reivindicações de IdP e conclui a solicitação de autenticação da Etapa 1. O Tableau Server procura o registro de conta do usuário armazenado no repositório correspondente ao "sub" (identificador de assunto) para identificar a conta de usuário correta. Se nenhuma conta de usuário for armazenada com o valor de reivindicação “sub”, o Tableau Server procurará um nome de usuário no repositório que corresponda à reivindicação "email" do IdP. Quando uma correspondência de nome de usuário é bem-sucedida, o Tableau Server grava a reivindicação “sub” correspondente no registro de usuários do repositório. É possível configurar o Tableau Server para usar reivindicações diferentes para este processo. Consulte Requisitos para usar o OpenID Connect.

Etapa 8: o Tableau Server autoriza o usuário.

Como o Tableau Server funciona com o OpenID Connect

O OpenID Connect é um protocolo flexível, compatível com muitas opções de informações, que são trocadas entre um provedor de serviços (nesse caso, o Tableau Server) e um IdP. A lista a seguir fornece detalhes sobre a implementação do OpenID no Tableau Server. Estes detalhes podem ajudar a entender quais tipos de informação o Tableau Server envia e espera, e como configurar um IdP.

  • Tableau Server é compatível somente com o OpenID Authorization Code Flow como descrito na Especificação final do OpenID Connect.

  • O Tableau Server depende do uso de descoberta ou de uma URL do provedor para recuperar os metadados do provedor do OpenID. Como alternativa, você pode hospedar um documento de descoberta estática no Tableau Server. Para obter mais informações, consulte Configurar o Tableau Server para o OpenID Connect.

  • O Tableau Server é compatível apenas com o método de Autenticação do cliente client_secret_jwt definido na especificação do OpenID Connect. Além disso, o Tableau Server é compatível apenas com a Criptografia assimétrica de RSA para lidar com JWT. No entanto, é possível desativar a validação JWT. Consulte tsm authentication openid <commands>.

  • O Tableau Server espera um valor kid no Cabeçalho JOSE do atributo id_token. Este valor é combinado com uma das chaves encontradas no documento JWK Set, cujo URI é especificado pelo valor jwks_uri, no documento de descoberta do OpenID. Um valor kid deve estar presente, mesmo se houver apenas uma chave no documento JWK Set.

  • O Tableau Server oferece suporte ao OpenID para o parâmetro x5c do JWK ou para o uso de certificados X.509.

Agradecemos seu feedback! Ocorreu um erro ao enviar o feedback. Tente novamente ou envie-nos uma mensagem.