Configurer des groupes d'identités et des identités tierces dans les règles d'entrée et de sortie

Cette page explique comment utiliser des groupes d'identité dans les règles d'entrée et de sortie pour autoriser l'accès aux ressources protégées par des périmètres de service.

Grâce à des règles d'entrée et de sortie, VPC Service Controls autorise l'accès vers et depuis des ressources et clients protégés par des périmètres de service. Pour affiner l'accès, vous pouvez spécifier des groupes d'identités dans vos règles d'entrée et de sortie.

Un groupe d'identités constitue un moyen pratique d'appliquer des contrôles d'accès à un ensemble d'utilisateurs. Il vous permet également de gérer les identités qui ont des stratégies d'accès similaires.

Pour configurer des groupes d'identités dans les règles d'entrée ou de sortie, vous pouvez utiliser les groupes d'identité compatibles suivants dans l'attribut identities :

Pour savoir comment appliquer des règles d'entrée et de sortie, consultez la section Configurer des règles d'entrée et de sortie.

Avant de commencer

Configurer des groupes d'identité dans les règles d'entrée

Console

Lorsque vous mettez à jour la règle d'entrée d'un périmètre de service ou définissez une règle d'entrée lors de la création d'un périmètre à l'aide de la console Google Cloud , vous pouvez configurer la règle d'entrée pour qu'elle utilise des groupes d'identités.

  1. Lorsque vous créez ou modifiez un périmètre dans la console Google Cloud , sélectionnez Règle d'entrée.

  2. Dans la section From de votre règle d'entrée, sélectionnez Sélectionner des identités et des groupes dans la liste Identités.

  3. Cliquez sur Ajouter des identités.

  4. Dans le volet Ajouter des identités, spécifiez un groupe Google ou une identité tierce à laquelle vous souhaitez accorder l'accès aux ressources du périmètre. Pour spécifier un groupe d'identités, utilisez le format indiqué dans Groupes d'identités compatibles.

  5. Cliquez sur Ajouter des identités.

  6. Cliquez sur Enregistrer.

Pour en savoir plus sur les autres attributs de règle d'entrée, consultez la documentation de référence sur les règles d'entrée.

gcloud

Vous pouvez configurer une règle d'entrée pour qu'elle utilise des groupes d'identités à l'aide d'un fichier JSON ou YAML. L'exemple suivant utilise le format YAML :

- ingressFrom:
    identities:
    - PRINCIPAL_IDENTIFIER
    sources:
    - resource: RESOURCE
      *OR*
    - accessLevel: ACCESS_LEVEL
  ingressTo:
    operations:
    - serviceName: SERVICE_NAME
      methodSelectors:
      - method: METHOD_NAME
    resources:
    - projects/PROJECT_NUMBER

Remplacez les éléments suivants :

  • PRINCIPAL_IDENTIFIER : spécifiez un groupe Google ou une identité tierce à laquelle vous souhaitez accorder l'accès aux ressources du périmètre. Pour spécifier un groupe d'identités, utilisez le format indiqué dans Groupes d'identités compatibles.

Pour en savoir plus sur les autres attributs de règle d'entrée, consultez la documentation de référence sur les règles d'entrée.

Après avoir mis à jour une règle d'entrée existante pour configurer des groupes d'identités, vous devez mettre à jour les règles du périmètre de service :

gcloud access-context-manager perimeters update PERIMETER_ID --set-ingress-policies=RULE_POLICY.yaml

Remplacez les éléments suivants :

  • PERIMETER_ID : ID du périmètre de service que vous souhaitez mettre à jour.
  • RULE_POLICY : chemin d'accès au fichier de règle d'entrée modifié.

Pour en savoir plus, consultez la section Mettre à jour les règles d'entrée et de sortie d'un périmètre de service.

Configurer des groupes d'identités dans les règles de sortie

Console

Lorsque vous mettez à jour la règle de sortie d'un périmètre de service ou définissez une règle de sortie lors de la création d'un périmètre à l'aide de la console Google Cloud , vous pouvez configurer la règle de sortie pour qu'elle utilise des groupes d'identités.

  1. Lorsque vous créez ou modifiez un périmètre dans la console Google Cloud , sélectionnez Règle de sortie.

  2. Dans la section From de votre règle de sortie, sélectionnez Sélectionner des identités et des groupes dans la liste Identités.

  3. Cliquez sur Ajouter des identités.

  4. Dans le volet Ajouter des identités, spécifiez un groupe Google ou une identité tierce pouvant accéder aux ressources spécifiées extérieures au périmètre. Pour spécifier un groupe d'identités, utilisez le format indiqué dans Groupes d'identités compatibles.

  5. Cliquez sur Ajouter des identités.

  6. Cliquez sur Enregistrer.

Pour en savoir plus sur les autres attributs de règle de sortie, consultez la documentation de référence sur les règles de sortie.

gcloud

Vous pouvez configurer une règle de sortie pour qu'elle utilise des groupes d'identités à l'aide d'un fichier JSON ou YAML. L'exemple suivant utilise le format YAML :

- egressTo:
    operations:
    - serviceName: SERVICE_NAME
      methodSelectors:
      - method: METHOD_NAME
    resources:
    - projects/PROJECT_NUMBER
  egressFrom:
    identities:
    - PRINCIPAL_IDENTIFIER

Remplacez les éléments suivants :

  • PRINCIPAL_IDENTIFIER : spécifiez un groupe Google ou une identité tierce pouvant accéder aux ressources spécifiées extérieures au périmètre. Pour spécifier un groupe d'identités, utilisez le format indiqué dans Groupes d'identités compatibles.

Pour en savoir plus sur les autres attributs de règle de sortie, consultez la documentation de référence sur les règles de sortie.

Après avoir mis à jour une règle de sortie existante pour configurer des groupes d'identités, vous devez mettre à jour les règles du périmètre de service :

gcloud access-context-manager perimeters update PERIMETER_ID --set-egress-policies=RULE_POLICY.yaml

Remplacez les éléments suivants :

  • PERIMETER_ID : ID du périmètre de service que vous souhaitez mettre à jour.
  • RULE_POLICY : chemin d'accès au fichier de règle de sortie modifié.

Pour en savoir plus, consultez la section Mettre à jour les règles d'entrée et de sortie d'un périmètre de service.

Groupes d'identités compatibles

VPC Service Controls est compatible avec les groupes d'identités suivants à partir des identifiants de compte principal de l'API IAM v1 :

Type de compte principal Identifiant
Groupe group:GROUP_EMAIL_ADDRESS
Identité unique d'un pool d'identités d'employés. principal://iam.googleapis.com/locations/global/workforcePools/POOL_ID/subject/SUBJECT_ATTRIBUTE_VALUE
Toutes les identités d'employés d'un groupe principalSet://iam.googleapis.com/locations/global/workforcePools/POOL_ID/group/GROUP_ID
Toutes les identités d'employés porteuses d'une valeur d'attribut spécifique principalSet://iam.googleapis.com/locations/global/workforcePools/POOL_ID/attribute.ATTRIBUTE_NAME/ATTRIBUTE_VALUE
Toutes les identités d'un pool d'identités d'employés principalSet://iam.googleapis.com/locations/global/workforcePools/POOL_ID/*
Identité unique faisant partie d'un pool d'identités de charge de travail principal://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/subject/SUBJECT_ATTRIBUTE_VALUE
Groupe de pools d'identités de charge de travail principalSet://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/group/GROUP_ID
Toutes les identités d'un pool d'identités de charge de travail avec un certain attribut principalSet://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/attribute.ATTRIBUTE_NAME/ATTRIBUTE_VALUE
Toutes les identités d'un pool d'identités de charge de travail principalSet://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/*

Pour en savoir plus sur ces identités, consultez Identifiants de compte principal pour les règles d'autorisation.

Limites

  • Avant d'utiliser des groupes d'identités, renseignez-vous sur les fonctionnalités non compatibles dans les règles d'entrée et de sortie.
  • Lorsque vous utilisez des groupes d'identités dans une règle de sortie, vous ne pouvez pas définir le champ resources de l'attribut egressTo sur "*".
  • Vous ne pouvez pas utiliser d'identité de charge de travail dans les règles d'entrée et de sortie pour autoriser les opérations de l'interface Web Apache Airflow dans Cloud Composer. Toutefois, vous pouvez utiliser le type d'identité ANY_IDENTITY dans les règles d'entrée et de sortie pour autoriser l'accès à toutes les identités, y compris les identités de charge de travail. Pour en savoir plus sur le type d'identité ANY_IDENTITY, consultez la section Règles d'entrée et de sortie.
  • Pour plus d'informations sur les limites des règles d'entrée et de sortie, consultez la page Quotas et limites.

Étape suivante