OpenID Connect

Vous pouvez configurer Tableau Server de manière à ce qu’il prenne en charge OpenID (OIDC) pour l’authentification unique (SSO). OIDC est un protocole d’authentification standard qui permet aux utilisateurs de s’authentifier auprès d’un fournisseur d’identité (IdP) tel que Google ou Salesforce. Après s’être correctement authentifiés auprès de leur IdP, ils sont automatiquement authentifiés auprès de Tableau Server.

La configuration d’OIDC implique plusieurs étapes. Les rubriques de cette section fournissent des informations générales sur l’utilisation de Tableau Server avec OIDC et proposent une procédure pour configurer l’IdP et Tableau Server.

Remarque : sauf indication contraire, les informations sur l’authentification OIDC s’appliquent à la fois à l’authentification OIDC configurée dans TSM lors de l’installation de Tableau Server ou à l’authentification OIDC configurée avec des pools d’identités(Le lien s’ouvre dans une nouvelle fenêtre).

Présentation de l’authentification

Cette section décrit le processus d’authentification OpenID Connect (OIDC) avec Tableau Server.

1. Un utilisateur tente de se connecter à Tableau Server depuis un ordinateur client.

2. Tableau Server redirige la demande d’authentification vers la passerelle de l’IdP.

3. L’utilisateur est invité à s’authentifier et l’authentification auprès de l’IdP réussit. L’IdP répond par une URL de redirection vers Tableau Server. Un code d’autorisation pour l’utilisateur est fourni avec l’URL de redirection.

4. Le client est redirigé vers Tableau Server et présente le code d’autorisation.

5. Tableau Server présente le code d’autorisation du client à l’IdP ainsi que ses propres identifiants client. Tableau Server est également client de l’IdP. Cette étape a pour but de prévenir les attaques d’usurpation d’identité ou les attaques de l’homme du milieu.

6. L’IdP renvoie un jeton d’accès et un jeton d’ID à Tableau Server.

  • Validation du jeton Web JSON (JWT) : par défaut, Tableau Server procède à la validation du jeton JWT de l’IdP. Lors de la découverte, Tableau Server récupère les clés publiques spécifiées par jwks_uri dans le document de découverte de la configuration de l’IdP. Tableau Server valide la date d’expiration du jeton d’ID puis vérifie la signature Web JSON (JWS), l’émetteur (IdP) et l’ID du client. Pour en savoir plus sur le processus JWT, consultez la documentation OpenID, 10(Le lien s’ouvre dans une nouvelle fenêtre). Signatures et cryptage(Le lien s’ouvre dans une nouvelle fenêtre), et norme proposée par l’IETF, Jeton Web JSON(Le lien s’ouvre dans une nouvelle fenêtre). Nous vous recommandons de laisser la validation JWT activée, à moins que votre IdP ne la prenne pas en charge.

  • L’ID de jeton est un ensemble de paires de clés d’attributs pour l’utilisateur. Les paires de clés sont appelées revendications. Voici un exemple de revendication IdP pour un utilisateur :

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

7. Tableau Server identifie l’utilisateur à partir des revendications de l’IdP et termine la demande d’authentification à partir de l’étape 1. Tableau Server recherche l’enregistrement du compte de l’utilisateur stocké dans le référentiel en faisant correspondre le « sub » (identifiant du sujet) pour identifier le compte utilisateur correct. Si aucun compte utilisateur n’est stocké avec la valeur de réclamation « sub », Tableau Server recherche un nom d’utilisateur dans le référentiel qui correspond à la réclamation « email » de l’IdP. Lorsqu’une correspondance de nom d’utilisateur réussit, Tableau Server stocke la revendication « sub » correspondante dans l’enregistrement de l’utilisateur dans le référentiel.Tableau Server peut être configuré pour utiliser différentes revendications pour ce processus. Voir Configuration requise pour utiliser OpenID Connect.

8. Tableau Server autorise l’utilisateur.

Comment Tableau Server fonctionne avec OpenID Connect

OpenID Connect (OIDC) est un protocole flexible qui prend en charge de nombreuses options pour les informations échangées entre un fournisseur de services (ici, Tableau Server) et un IdP. La liste suivante fournit des détails sur l’implémentation d’OIDC par Tableau Server. Ces détails peuvent vous aider à comprendre quels types d’informations Tableau Server envoie et attend, et comment configurer un IdP.

  • Tableau Server prend uniquement en charge le flux de code d’autorisation OpenID, comme décrit dans les spécifications finales d’OpenID Connect(Le lien s’ouvre dans une nouvelle fenêtre) de la documentation d’OpenID Connect.

  • Tableau Server s’appuie sur l’utilisation de la découverte ou d’une URL de fournisseur pour récupérer les métadonnées du fournisseur OpenID.Vous pouvez sinon héberger un document de découverte statique sur Tableau Server. Pour plus d’informations, consultez Configurer Tableau Server pour OpenID Connect.

  • Tableau Server prend en charge l’authentification client client_secret_basic et client_secret_post .

  • Tableau Server attend une valeur kid dans l’en-tête JOSE de l’attribut id_token. Cette valeur est mise en correspondance avec l’une des clés trouvées dans le document JWK Set, dont l’URI est spécifiée par la valeur jwks_uri dans le document de découverte d’OpenID. Une valeur kid doit être présente même si le document JWK Set ne comporte qu’une seule clé.

  • Tableau Server inclut la prise en charge d’OpenID pour le paramètre x5c de JWK ou pour l’utilisation des certificats X.509.

  • Par défaut, Tableau Server ignore les paramètres de proxy et envoie toutes les demandes OpenID directement à l’IdP.

    Si, du fait de sa configuration, Tableau Server doit utiliser un proxy de transfert pour se connecter à Internet, vous devez apporter des modifications supplémentaires comme décrit dans Configurer Tableau Server pour OpenID Connect.

Merci de vos commentaires !Avis correctement envoyé. Merci