Un compte de service est un type de compte particulier généralement utilisé par une application ou une charge de travail de calcul, telle qu'une instance Compute Engine, plutôt que par une personne. Ce compte est identifié par son adresse e-mail, qui lui est propre.
Les applications utilisent les comptes de service pour effectuer des appels d'API autorisés en s'authentifiant soit en tant que compte de service, soit en tant qu'utilisateurs Google Workspace ou Cloud Identity via la délégation au niveau du domaine. Lorsqu'une application s'authentifie en tant que compte de service, elle a accès à toutes les ressources auxquelles le compte de service est autorisé à accéder.
Vous pouvez utiliser un compte de service pour identifier la source de trafic et configurer des règles de proxy Web sécurisé, si nécessaire.
Cette page vous explique comment :
- Créez une instance de proxy Web sécurisé avec une règle vide.
- Créez et associez des comptes de service à des ressources.
- Utilisez des comptes de service pour créer une stratégie de proxy Web sécurisé.
- Créez une instance de proxy Web sécurisé.
- Testez la connectivité à partir de vos VM.
Avant de commencer
Suivez les étapes de configuration initiale.
Demandez à un administrateur de l'organisation d'accorder l'accès à un compte de service.
Vérifiez que vous avez installé la version 406.0.0 ou ultérieure de Google Cloud CLI:
gcloud version | head -n1
Si vous avez installé une version antérieure de gcloud CLI, mettez-la à jour:
gcloud components update --version=406.0.0
Créer une instance de proxy Web sécurisé avec une règle vide
Pour créer une instance de proxy Web sécurisé, créez d'abord une règle de sécurité vide, puis un proxy Web.
Créer une règle de sécurité vide
Console
Dans la Google Cloud console, accédez à la page Sécurité du réseau.
Cliquez sur Proxy Web sécurisé.
Cliquez sur l'onglet Règles.
Cliquez sur Create a policy (Créer une règle).
Saisissez un nom pour la stratégie que vous souhaitez créer, par exemple
myswppolicy
.Saisissez une description de la stratégie, par exemple
My new swp policy
.Dans la liste Régions, sélectionnez la région dans laquelle vous souhaitez créer la règle.
Cliquez sur Créer.
Cloud Shell
Utilisez l'éditeur de texte de votre choix pour créer le fichier
POLICY_FILE
.yaml. RemplacezPOLICY_FILE
par le nom de fichier souhaité pour le fichier de stratégie.Ajoutez les éléments suivants au fichier YAML que vous avez créé:
name: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME description: POLICY_DESCRIPTION
Remplacez les éléments suivants :
PROJECT_NAME
: nom de votre projetREGION
: région à laquelle cette règle s'appliquePOLICY_NAME
: nom de la stratégie que vous créez.POLICY_DESCRIPTION
: description de la règle que vous créez
Importez la stratégie de sécurité:
gcloud network-security gateway-security-policies import POLICY_NAME \ --source=POLICY_FILE.yaml \ --location=REGION
Créer un proxy Web
Console
Dans la Google Cloud console, accédez à la page Sécurité du réseau.
Cliquez sur Proxy Web sécurisé.
Cliquez sur Configurer un proxy Web.
Saisissez un nom pour le proxy Web que vous souhaitez créer, par exemple
myswp
.Saisissez une description du proxy Web, par exemple
My new swp
.Dans la liste Régions, sélectionnez la région dans laquelle vous souhaitez créer le proxy Web.
Dans la liste Réseau, sélectionnez le réseau sur lequel vous souhaitez créer le proxy Web.
Dans la liste Sous-réseau, sélectionnez le sous-réseau dans lequel vous souhaitez créer le proxy Web.
Saisissez l'adresse IP du proxy Web.
Dans la liste Certificat, sélectionnez le certificat que vous souhaitez utiliser pour créer le proxy Web.
Dans la liste Règle, sélectionnez la règle que vous avez créée pour associer le proxy Web.
Cliquez sur Créer.
Cloud Shell
Utilisez l'éditeur de texte de votre choix pour créer le fichier
GATEWAY_FILE
.yaml. RemplacezGATEWAY_FILE
par le nom de fichier souhaité pour le fichier de proxy Web.Ajoutez les éléments suivants au fichier YAML que vous avez créé:
name: projects/PROJECT_NAME/locations/REGION/gateways/GATEWAY_NAME type: SECURE_WEB_GATEWAY ports: [GATEWAY_PORT_NUMBERS] certificateUrls: [CERTIFICATE_URLS] gatewaySecurityPolicy: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME network: projects/PROJECT_NAME/global/networks/NETWORK_NAME subnetwork: projects/PROJECT_NAME/regions/REGION/subnetworks/SUBNET_NAME addresses: [GATEWAY_IP_ADDRESS] scope: samplescope
Remplacez les éléments suivants :
GATEWAY_NAME
: nom de cette instanceGATEWAY_PORT_NUMBERS
: liste des numéros de port de cette passerelle, par exemple[80,443]
CERTIFICATE_URLS
: liste des URL de certificats SSLSUBNET_NAME
: nom du sous-réseau contenantGATEWAY_IP_ADDRESS
GATEWAY_IP_ADDRESS
: liste facultative d'adresses IP pour vos instances de proxy Web sécurisé dans les sous-réseaux de proxy créés précédemment lors des étapes de configuration initialeSi vous choisissez de ne pas lister d'adresses IP, omettez le champ pour que le proxy Web choisisse une adresse IP à votre place.
Créez une instance de proxy Web sécurisé:
gcloud network-services gateways import GATEWAY_NAME \ --source=GATEWAY_FILE.yaml \ --location=REGION
Tester la connectivité
Pour tester la connectivité, utilisez la commande curl
à partir de n'importe quelle VM de votre réseau cloud privé virtuel (VPC) :
curl -x https://GATEWAY_IP_ADDRESS:PORT_NUMBER https://www.example.com --proxy-insecure
Une erreur 403 Forbidden
est attendue.
Créer et associer des comptes de service à des ressources
Pour créer et associer des comptes de service, procédez comme suit:
Créer des règles de proxy Web sécurisé
Pour créer des règles de proxy Web sécurisé, procédez comme suit:
Utilisez l'éditeur de texte de votre choix pour créer un fichier
RULE_FILE
.yaml. RemplacezRULE_FILE
par le nom de fichier de votre choix.Pour autoriser l'accès à une URL à partir du compte de service choisi, ajoutez les éléments suivants au fichier YAML:
name: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME/rules/RULE_NAME description: RULE_DESCRIPTION enabled: true priority: RULE_PRIORITY sessionMatcher: CEL_EXPRESSION basicProfile: ALLOW
Remplacez les éléments suivants :
RULE_NAME
: nom de cette règleRULE_DESCRIPTION
: description de la règle que vous créez.RULE_PRIORITY
: priorité de cette règle. Un nombre inférieur correspond à une priorité plus élevée.CEL_EXPRESSION
: expression CEL (Common Expression Language)Pour en savoir plus, consultez la documentation de référence sur le langage du moteur de mise en correspondance CEL.
Par exemple, pour autoriser l'accès à
example.com
à partir de la ressource avec le compte de service souhaité associé, ajoutez ce qui suit au fichier YAML que vous avez créé poursessionMatcher
:sessionMatcher: "source.matchServiceAccount('SERVICE_ACCOUNT') && host() == 'example.com'"
Remplacez
SERVICE_ACCOUNT
par le compte de service que vous souhaitez autoriser. Il doit s'agir de l'adresse e-mail du compte de service.
Importez les règles que vous avez créées:
gcloud network-security gateway-security-policies rules import RULE_NAME \ --source=RULE_FILE.yaml \ --location=REGION \ --gateway-security-policy=POLICY_NAME
Tester la connectivité
Pour tester la connectivité, utilisez la commande curl
à partir de la ressource avec le SERVICE_ACCOUNT
associé:
curl -x https://IPv4_ADDRESS:443 http://example.com
--proxy-insecure
Remplacez IPv4_ADDRESS
par l'adresse IPv4 de votre instance de proxy Web sécurisé.
Étape suivante
- Utiliser une liste d'URL pour créer des règles
- Attribuer des adresses IP statiques pour le trafic de sortie