Se connecter à un fournisseur d'identité

Cette page explique comment connecter Google Distributed Cloud (GDC) sous air gap au fournisseur d'identité (IdP) existant de votre organisation. Un fournisseur d'identité est un système qui gère et sécurise de manière centralisée les identités des utilisateurs, et qui fournit des services d'authentification. En vous connectant à un fournisseur d'identité existant, les utilisateurs peuvent accéder à GDC à l'aide des identifiants de leur organisation, sans avoir à créer ni à gérer de comptes distincts dans GDC. Ce processus garantit une expérience de connexion fluide et sécurisée. Étant donné qu'un fournisseur d'identité est une ressource globale, les utilisateurs peuvent accéder à GDC via le même fournisseur d'identité, quelle que soit la zone dans laquelle ils travaillent.

Cette page s'adresse aux audiences du groupe d'administrateurs de la plate-forme, telles que les administrateurs informatiques ou les ingénieurs en sécurité, qui souhaitent se connecter à un fournisseur d'identité. Pour en savoir plus, consultez Audiences pour la documentation GDC sous air gap.

Vous pouvez vous connecter à un fournisseur d'identité existant à l'aide de l'un des éléments suivants :

Avant de commencer

Avant de vous connecter à un fournisseur d'identité existant, vous devez vous assurer que la configuration initiale est terminée, demander les autorisations nécessaires et préparer votre environnement.

Configuration initiale de la connexion au fournisseur d'identité

Un membre du groupe d'opérateurs d'infrastructure de votre organisation doit configurer la connexion initiale au fournisseur d'identité pour que les utilisateurs puissent accéder aux clusters ou aux tableaux de bord GDC.

Pour ce faire, il peut ouvrir un ticket dans ServiceNow et fournir les informations requises sur le fournisseur d'identité. Pour en savoir plus, consultez Connecter le fournisseur d'identité du client à l'organisation.

Demander des rôles IAM

Pour créer, lire, mettre à jour et supprimer des configurations de fournisseur d'identité, contactez votre administrateur IAM de l'organisation afin de demander le rôle Administrateur de la fédération de fournisseurs d'identité (idp-federation-admin).

Assurez-vous que l'administrateur initial que vous spécifiez lors de la connexion du fournisseur d'identité dispose du rôle Administrateur IAM de l'organisation (organization-iam-admin).

Préparer votre environnement

Se connecter à un fournisseur d'identité existant

Pour connecter le fournisseur d'identité, vous devez disposer d'un seul ID client et d'un seul code secret de la part de votre fournisseur d'identité. Vous pouvez vous connecter à un fournisseur OIDC ou SAML existant.

Se connecter à un fournisseur OIDC existant

Pour vous connecter à un fournisseur OIDC existant, procédez comme suit :

Console

  1. Connectez-vous à la console GDC. L'exemple suivant montre la console après la connexion à une organisation appelée org-1: Page d'accueil de la console avec des liens d'accès rapide aux tâches courantes
  2. Dans le menu de navigation, cliquez sur Identity and Access > Identity (Identité et accès > Identité).
  3. Cliquez sur Add Identity Provider (Ajouter un fournisseur d'identité).
  4. Dans la section Configure identity provider (Configurer le fournisseur d'identité), procédez comme suit :

    1. Dans le menu déroulant Identity provider (Fournisseur d'identité), sélectionnez Open ID Connect (OIDC).
    2. Saisissez un Identity provider name (Nom du fournisseur d'identité).
    3. Dans le champ Issuer URI (URI de l'émetteur), saisissez l'URL vers laquelle les requêtes d'autorisation sont envoyées à votre fournisseur d'identité. Le serveur d'API Kubernetes utilise cette URL pour découvrir des clés publiques permettant de valider les jetons. L'URL doit utiliser le protocole HTTPS.
    4. Dans le champ Client ID (ID client), saisissez l'ID de l'application cliente qui envoie des requêtes d'authentification au fournisseur d'identité.
    5. Dans le champ Client Secret (Code secret du client), saisissez le code secret du client, qui est un code secret partagé entre votre fournisseur d'identité et Distributed Cloud.
    6. Facultatif : Dans le champ Identity provider prefix (Préfixe du fournisseur d'identité), saisissez un préfixe. Le préfixe est ajouté au début des revendications d'utilisateur et de groupe. Les préfixes permettent de distinguer les différentes configurations de fournisseur d'identité. Par exemple, si vous définissez le préfixe myidp, une revendication d'utilisateur peut être myidp-username@example.com et une revendication de groupe peut être myidp-group@example.com. Vous devez également inclure le préfixe lors de l'attribution d'autorisations de contrôle des accès basé sur les rôles (RBAC) aux groupes.

    7. Facultatif : Dans la section Encryption (Chiffrement), sélectionnez Enable encryption tokens (Activer les jetons de chiffrement).

      Pour activer les jetons de chiffrement, demandez à votre administrateur IAM de l'organisation de vous attribuer le rôle Administrateur de la fédération de fournisseurs d'identité (idp-federation-admin).

      1. Dans le champ Key ID (ID de la clé), saisissez votre ID de clé. L'ID de clé identifie la clé publique d'un jeton de chiffrement Web JSON (JWE). Votre fournisseur OIDC configure et provisionne un ID de clé.
      2. Dans le champ Decryption key (Clé de déchiffrement), saisissez la clé de déchiffrement au format PEM. La clé de déchiffrement est une clé asymétrique utilisée pour déchiffrer les jetons. Votre fournisseur OIDC configure et provisionne une clé de déchiffrement.
    8. Cliquez sur Next (Suivant).

  5. Dans la section Configure attributes (Configurer les attributs), procédez comme suit :

    1. Dans le champ Certificate authority for OIDC provider (Autorité de certification pour le fournisseur OIDC), saisissez un certificat encodé au format PEM encodé en base64 pour le fournisseur d'identité. Pour en savoir plus, consultez Privacy-Enhanced Mail sur Wikipédia.
      1. Pour créer la chaîne, encodez le certificat, y compris les en-têtes, en base64.
      2. Incluez la chaîne obtenue en tant que ligne unique. Exemple : LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tC...k1JSUN2RENDQWFT==
    2. Dans le champ Group Claim (Revendication de groupe), saisissez le nom de la revendication dans le jeton du fournisseur d'identité qui contient les informations sur le groupe de l'utilisateur.
    3. Dans le champ User Claim (Revendication d'utilisateur), saisissez la revendication permettant d'identifier chaque utilisateur. La revendication par défaut pour de nombreux fournisseurs est sub. Vous pouvez choisir d'autres revendications, telles que email ou name, en fonction du fournisseur d'identité. Les revendications autres que email sont précédées de l'URL de l'émetteur pour éviter les conflits de noms.
    4. Facultatif : Dans la section Custom attributes (Attributs personnalisés), cliquez sur Add Pair (Ajouter une paire) et saisissez des paires clé/valeur pour des revendications supplémentaires concernant un utilisateur, telles que son service ou l'URL de sa photo de profil.
    5. Si votre fournisseur d'identité nécessite des niveaux d'accès supplémentaires, dans le champ Scopes (Niveaux d'accès), saisissez les niveaux d'accès séparés par une virgule à envoyer au fournisseur d'identité.
    6. Dans la section Extra parameters (Paramètres supplémentaires), saisissez toutes les paires clé/valeur supplémentaires (séparées par une virgule) requises par votre fournisseur d'identité. Si vous autorisez un groupe, transmettez-le via resource=token-groups-claim.
    7. Cliquez sur Next (Suivant).
  6. Dans la section Specify initial admins (Spécifier les administrateurs initiaux), procédez comme suit :

    1. Indiquez si vous souhaitez ajouter des utilisateurs individuels ou des groupes en tant qu'administrateurs initiaux.
    2. Dans le champ Username or group alias (Nom d'utilisateur ou alias de groupe), saisissez l'adresse e-mail de l'utilisateur ou du groupe pour accéder à l'organisation. Si vous êtes l'administrateur, saisissez votre adresse e-mail, par exemple kiran@example.com. Le préfixe est ajouté avant le nom d'utilisateur, par exemple myidp-kiran@example.com.
    3. Cliquez sur Next (Suivant).
  7. Vérifiez vos sélections, puis cliquez sur Setup (Configurer).

Le nouveau profil de fournisseur d'identité est disponible dans la liste des profils d'identité.

API

Pour connecter votre fournisseur d'identité à votre organisation, créez la ressource personnalisée globale IdentityProviderConfig.

  1. Créez un fichier YAML de ressource personnalisée IdentityProviderConfig, tel que pa-idp-oidc.yaml :

    apiVersion: iam.global.gdc.goog/v1
    kind: IdentityProviderConfig
    metadata:
      name: pa-idp-oidc
      namespace: platform
    spec:
      oidc:
        certificateAuthorityData: "IDP_BASE64_ENCODED_CERTIFICATE"
        clientID: IDP_CLIENT_ID
        clientSecret: IDP_CLIENT_SECRET
        groupPrefix: IDP_GROUP_PREFIX
        groupsClaim: IDP_GROUP_CLAIM
        issuerURI: IDP_ISSUER_URI
        scopes: openid,email,profile
        userClaim: IDP_USER_CLAIM
        userPrefix: IDP_USER_PREFIX
    

    Remplacez les variables suivantes :

    • IDP_BASE64_ENCODED_CERTIFICATE: certificat encodé en base64 pour le fournisseur d'identité.
    • IDP_CLIENT_ID : ID client pour le fournisseur d'identité.
    • IDP_CLIENT_SECRET: code secret du client pour le fournisseur d'identité.
    • IDP_GROUP_PREFIX: préfixe des groupes dans le fournisseur d'identité.
    • IDP_GROUP_CLAIM: nom de la revendication dans le jeton du fournisseur d'identité qui regroupe les informations.
    • IDP_ISSUER_URI : URI de l'émetteur pour le fournisseur d'identité.
    • IDP_USER_CLAIM: nom de la revendication dans le jeton du fournisseur d'identité pour l'utilisateur.
    • IDP_USER_PREFIX : préfixe pour le fournisseur d'identité de l'utilisateur.
  2. Appliquez la ressource personnalisée IdentityProviderConfig au serveur d'API global :

    kubectl --kubeconfig GLOBAL_API_SERVER_KUBECONFIG apply -f pa-idp-oidc.yaml
    

    Remplacez la variable GLOBAL_API_SERVER_KUBECONFIG par le chemin d'accès au fichier kubeconfig pour le serveur d'API global.

Se connecter à un fournisseur SAML existant

Pour vous connecter à un fournisseur SAML existant, procédez comme suit :

Console

  1. Connectez-vous à la console GDC. L'exemple suivant montre la console après la connexion à une organisation appelée org-1: Page d'accueil de la console avec des liens d'accès rapide aux tâches courantes
  2. Dans le menu de navigation, cliquez sur Identity and Access > Identity (Identité et accès > Identité).
  3. Cliquez sur Add Identity Provider (Ajouter un fournisseur d'identité).
  4. Dans la section Configure identity provider (Configurer le fournisseur d'identité), procédez comme suit :

    1. Dans le menu déroulant Identity provider (Fournisseur d'identité), sélectionnez Security Assertion Markup Language (SAML).
    2. Saisissez un Identity provider name (Nom du fournisseur d'identité).
    3. Dans le champ Identity ID (ID d'identité), saisissez l'ID de l'application cliente qui envoie des requêtes d'authentification au fournisseur d'identité.
    4. Dans le champ SSO URI (URI d'authentification unique), saisissez l'URL du point de terminaison d'authentification unique du fournisseur. Exemple : https://www.idp.com/saml/sso.
    5. Dans le champ Identity provider prefix (Préfixe du fournisseur d'identité), saisissez un préfixe. Le préfixe est ajouté au début des revendications d'utilisateur et de groupe. Les préfixes permettent de distinguer les différentes configurations de fournisseur d'identité. Par exemple, si vous définissez le préfixe myidp, une revendication d'utilisateur peut s'afficher sous la forme myidp-username@example.com et une revendication de groupe sous la forme myidp-group@example.com. Vous devez également inclure le préfixe lors de l'attribution d'autorisations RBAC aux groupes.

    6. Pour renforcer la sécurité, configurez votre fournisseur SAML afin qu'il émette des assertions d'une durée de vie de 5 à 10 minutes. Ce paramètre est configurable dans les paramètres de votre fournisseur SAML.

    7. Facultatif : Dans la section SAML Assertions (Assertions SAML), sélectionnez Enable encryption SAML assertions (Activer les assertions SAML de chiffrement).

      Pour activer les assertions SAML chiffrées, demandez à votre administrateur IAM de l'organisation de vous attribuer le rôle Administrateur de la fédération de fournisseurs d'identité (idp-federation-admin).

      1. Dans le champ Encryption assertion certificate (Certificat d'assertion de chiffrement), saisissez votre certificat de chiffrement au format PEM. Vous obtenez votre certificat de chiffrement auprès de votre fournisseur SAML.
      2. Dans le champ Encryption assertion key (Clé d'assertion de chiffrement), saisissez votre clé privée. Vous recevez votre clé de déchiffrement après avoir généré le fournisseur SAML.
    8. Facultatif : Dans la section SAML Signed Requests (Requêtes SAML signées), sélectionnez Enable signed SAML requests (Activer les requêtes SAML signées).

      1. Dans le champ Signing certificate (Certificat de signature), saisissez votre certificat de signature au format de fichier PEM. Votre fournisseur SAML émet un certificat de signature.
      2. Dans le champ Signing key (Clé de signature), saisissez votre clé de signature au format de fichier PEM. Votre fournisseur SAML configure et vous fournit une clé de signature.
    9. Cliquez sur Next (Suivant).

  5. Sur la page Configure attributes (Configurer les attributs), procédez comme suit :

    1. Dans le champ IDP certificate (Certificat IdP), saisissez un certificat encodé au format PEM encodé en base64 pour le fournisseur d'identité. Pour en savoir plus, consultez Privacy-Enhanced Mail sur Wikipédia.
      1. Pour créer la chaîne, encodez le certificat, y compris les en-têtes, en base64.
      2. Incluez la chaîne obtenue dans en tant que ligne unique. Exemple : LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tC...k1JSUN2RENDQWFT==.
    2. Saisissez tous les certificats supplémentaires dans le champ Additional IDP certificate (Certificat IdP supplémentaire).
    3. Dans le champ User attribute (Attribut utilisateur), saisissez l'attribut permettant d'identifier chaque utilisateur. L'attribut par défaut pour de nombreux fournisseurs est sub. Vous pouvez choisir d'autres attributs, tels que email ou name, en fonction du fournisseur d'identité. Les attributs autres que email sont précédés de l'URL de l'émetteur pour éviter les conflits de noms.
    4. Dans le champ Group attribute (Attribut de groupe), saisissez le nom de l'attribut dans le jeton du fournisseur d'identité qui contient les informations sur le groupe de l'utilisateur.
    5. Facultatif : Dans la section Attribute mapping (Mappage des attributs), cliquez sur Add Pair (Ajouter une paire) et saisissez des paires clé/valeur pour des attributs supplémentaires concernant un utilisateur, tels que son service ou l'URL de sa photo de profil.
    6. Cliquez sur Next (Suivant).
  6. Dans la section Specify initial admins (Spécifier les administrateurs initiaux), procédez comme suit :

    1. Indiquez si vous souhaitez ajouter des utilisateurs individuels ou des groupes en tant qu'administrateurs initiaux.
    2. Dans le champ Username or group alias (Nom d'utilisateur ou alias de groupe), saisissez l'adresse e-mail de l'utilisateur ou du groupe pour accéder à l'organisation. Si vous êtes l'administrateur, saisissez votre adresse e-mail, par exemple kiran@example.com. Le préfixe est ajouté avant le nom d'utilisateur, par exemple myidp-kiran@example.com.
    3. Cliquez sur Next (Suivant).
  7. Sur la page Review (Vérifier), vérifiez toutes les valeurs de chaque configuration d'identité avant de continuer.

    Cliquez sur Back (Retour) pour revenir aux pages précédentes et apporter les corrections nécessaires.

  8. Cliquez sur Setup (Configurer).

Le nouveau profil de fournisseur d'identité est disponible dans la liste des profils d'identité.

API

Pour connecter votre fournisseur d'identité à votre organisation, créez la ressource personnalisée globale IdentityProviderConfig.

  1. Créez un fichier YAML de ressource personnalisée IdentityProviderConfig, tel que pa-idp-saml.yaml :

    apiVersion: iam.global.gdc.goog/v1
    kind: IdentityProviderConfig
    metadata:
      name: pa-idp-saml
      namespace: platform
    spec:
      saml:
        groupPrefix: IDP_GROUP_PREFIX
        groupsAttribute: IDP_GROUP_ATTRIBUTE
        idpCertificateDataList:
        - "IDP_BASE64_ENCODED_CERTIFICATE"
        idpEntityID: IDP_SAML_ENTITY_ID
        idpSingleSignOnURI: IDP_SAML_SSO_URI
        userAttribute: IDP_USER_ATTRIBUTE
        userPrefix: IDP_USER_PREFIX
    

    Remplacez les variables suivantes :

    • IDP_GROUP_PREFIX: préfixe des groupes dans le fournisseur d'identité.
    • IDP_GROUP_ATTRIBUTE: attribut des groupes dans le fournisseur d'identité.
    • IDP_BASE64_ENCODED_CERTIFICATE: certificat encodé en base64 pour le fournisseur d'identité.
    • IDP_SAML_ENTITY_ID: URL ou URI permettant d'identifier de manière unique le fournisseur d'identité.
    • IDP_SAML_SSO_URI : URI de l'émetteur pour le fournisseur d'identité.
    • IDP_USER_ATTRIBUTE: attribut de l'utilisateur du fournisseur d'identité, tel qu'une adresse e-mail.
    • IDP_USER_PREFIX: nom de la revendication dans le jeton du fournisseur d'identité pour l'utilisateur.
  2. Appliquez la ressource personnalisée IdentityProviderConfig au serveur d'API global :

    kubectl --kubeconfig GLOBAL_API_SERVER_KUBECONFIG apply -f pa-idp-saml.yaml
    

    Remplacez la variable GLOBAL_API_SERVER_KUBECONFIG par le chemin d'accès au fichier kubeconfig pour le serveur d'API global.

Supprimer un fournisseur d'identité existant

Supprimez un fournisseur d'identité existant à l'aide de la console GDC :

  1. Connectez-vous à la console GDC.
  2. Dans le sélecteur de projet, sélectionnez l'organisation dans laquelle vous souhaitez supprimer le fournisseur d'identité.
  3. Dans le menu de navigation, cliquez sur Identity and Access > Identity (Identité et accès > Identité).
  4. Cochez la case à côté du nom d'un ou de plusieurs fournisseurs d'identité.

    Un message s'affiche avec le nombre de fournisseurs d'identité que vous avez sélectionnés et un Delete bouton.

  5. Cliquez sur Delete (Supprimer).