Cette page explique comment utiliser des groupes d'identités 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.
VPC Service Controls utilise des règles d'entrée et de sortie pour autoriser l'accès vers et depuis les ressources et les clients protégés par les périmètres de service. Pour affiner davantage l'accès, vous pouvez spécifier des groupes d'identité dans vos règles d'entrée et de sortie.
Un groupe d'identités est 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é dans les règles d'entrée ou de sortie, vous pouvez utiliser les groupes d'identité compatibles suivants dans l'attribut identities
:
- Groupe Google
Identités tierces telles que les utilisateurs de pools de personnel et les identités de charge de travail.
VPC Service Controls n'est pas compatible avec la fédération d'identité de charge de travail pour GKE.
Pour savoir comment appliquer des règles d'entrée et de sortie, consultez Configurer des règles d'entrée et de sortie.
Avant de commencer
- Assurez-vous de lire les règles d'entrée et de sortie.
Configurer des groupes d'identité dans les règles d'entrée
Console
Lorsque vous mettez à jour une 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 Trusted Cloud , vous pouvez configurer la règle d'entrée pour qu'elle utilise des groupes d'identité.
Lorsque vous créez ou modifiez un périmètre dans la console Trusted Cloud , sélectionnez Règle d'entrée.
Dans la section De de votre règle d'entrée, sélectionnez Sélectionner des identités et des groupes dans la liste Identités.
Cliquez sur Ajouter des identités.
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.
Cliquez sur Ajouter des identités.
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 utiliser des groupes d'identité à 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 modifié une règle d'entrée existante pour configurer des groupes d'identité, 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 Mettre à jour les règles d'entrée et de sortie pour un périmètre de service.
Configurer des groupes d'identité dans les règles de sortie
Console
Lorsque vous mettez à jour une 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 Trusted Cloud , vous pouvez configurer la règle de sortie pour qu'elle utilise des groupes d'identité.
Lorsque vous créez ou modifiez un périmètre dans la console Trusted Cloud , sélectionnez Règle de sortie.
Dans la section De de votre règle de sortie, sélectionnez Sélectionner des identités et des groupes dans la liste Identités.
Cliquez sur Ajouter des identités.
Dans le volet Ajouter des identités, spécifiez un groupe Google ou une identité tierce pouvant accéder aux ressources spécifiées en dehors du périmètre. Pour spécifier un groupe d'identités, utilisez le format indiqué dans Groupes d'identités compatibles.
Cliquez sur Ajouter des identités.
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 utiliser des groupes d'identité à 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 en dehors 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 de sortie, consultez la documentation de référence sur les règles de sortie.
Après avoir modifié une règle de sortie existante pour configurer des groupes d'identité, 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 Mettre à jour les règles d'entrée et de sortie pour un périmètre de service.
Groupes d'identités compatibles
VPC Service Controls est compatible avec les groupes d'identité suivants à partir des identifiants principaux de l'API IAM v1
:
Type de compte principal | Identifiant |
---|---|
Groupe | group:GROUP_EMAIL_ADDRESS |
Identité unique d'un pool d'identités de personnel | principal://iam.googleapis.com/locations/global/workforcePools/POOL_ID/subject/SUBJECT_ATTRIBUTE_VALUE |
Toutes les identités de personnel d'un groupe | principalSet://iam.googleapis.com/locations/global/workforcePools/POOL_ID/group/GROUP_ID |
Toutes les identités de personnel 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 de personnel | principalSet://iam.googleapis.com/locations/global/workforcePools/POOL_ID/* |
Identité unique 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 principaux pour les stratégies d'autorisation.
Limites
- Avant d'utiliser des groupes d'identités, familiarisez-vous avec les fonctionnalités non compatibles dans les règles d'entrée et de sortie.
- Lorsque vous utilisez des groupes d'identité dans une règle de sortie, vous ne pouvez pas définir le champ
resources
de l'attributegressTo
sur"*"
. - Pour en savoir plus sur les limites des règles d'entrée et de sortie, consultez Quotas et limites.