Google Cloud Search est compatible avec VPC Service Controls pour renforcer la sécurité de vos données. VPC Service Controls vous permet de définir un périmètre de service autour des ressources Google Cloud Platform afin de contenir les données et de limiter les risques d'exfiltration de données.
Prérequis
Avant de commencer, installez l'interface de ligne de commande gcloud.
Activer VPC Service Controls
Pour activer VPC Service Controls:
Obtenez les ID et numéros de projet du projet Google Cloud Platform que vous souhaitez utiliser. Pour obtenir les ID et numéros de projet, consultez la section Identifier des projets.
Utilisez gcloud pour créer une stratégie d'accès pour votre organisation Google Cloud Platform:
Créez un périmètre de service avec Cloud Search en tant que service limité en exécutant la commande gcloud suivante:
gcloud access-context-manager perimeters create NAME \ --title=TITLE \ --resources=PROJECTS \ --restricted-services=RESTRICTED-SERVICES \ --policy=POLICY_NAME
Où :
NAME
est le nom du périmètre.TITLE
est le titre lisible du périmètre.PROJECTS
est une liste d'un ou de plusieurs numéros de projet, séparés par une virgule, chacun précédé de la chaîneprojects/
. Utilisez les numéros de projet obtenus à l'étape 1. Par exemple, si vous avez deux projets, les projets12345
et67890
, votre paramètre sera--resource=projects/12345, project/67890
.Ce flag n'accepte que les numéros de projet, et non les noms ni les ID.RESTRICTED-SERVICES
est une liste d'un ou de plusieurs services séparés par une virgule. Utilisezcloudsearch.googleapis.com
.POLICY_NAME
est le nom (au format numérique) de la règle d'accès de votre organisation obtenu à l'étape 2c.
Pour en savoir plus sur la création d'un périmètre de service, consultez la section Créer un périmètre de service.
(Facultatif) Si vous souhaitez appliquer des restrictions basées sur l'adresse IP ou la région, créez des niveaux d'accès et ajoutez-les au périmètre de service créé à l'étape 3:
- Pour créer un niveau d'accès, consultez la section Créer un niveau d'accès de base. Pour savoir comment créer une condition de niveau d'accès n'autorisant l'accès qu'à partir d'une plage d'adresses IP spécifique, comme celles d'un réseau d'entreprise, consultez la section Limiter l'accès sur un réseau d'entreprise.
- Une fois que vous avez créé un niveau d'accès, ajoutez-le au périmètre de service. Pour obtenir des instructions sur l'ajout d'un niveau d'accès à un périmètre de service, consultez la section Ajouter un niveau d'accès à un périmètre existant. La propagation et la prise en compte de cette modification peuvent prendre jusqu'à 30 minutes.
Utilisez l'API REST du service client Cloud Search pour mettre à jour les paramètres client avec votre projet protégé par périmètre VPC Service Controls:
Obtenez un jeton d'accès OAuth 2.0 auprès du serveur d'autorisation Google. Pour savoir comment obtenir le jeton, consultez l'étape 2 de la section Utiliser OAuth 2.0 pour accéder aux API Google. Lorsque vous obtenez le jeton d'accès, utilisez l'un des champs d'application OAuth suivants :
https://www.googleapis.com/auth/cloud_search.settings.indexing
,https://www.googleapis.com/auth/cloud_search.settings
ouhttps://www.googleapis.com/auth/cloud_search
.Exécutez la commande curl suivante pour définir le projet dans les paramètres VPC Service Controls sous "Customer settings" (Paramètres client) dans Google Cloud Search:
curl --request PATCH \ 'https://cloudsearch.googleapis.com/v1/settings/customer' \ --header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ "vpc_settings": { "project": "projects/PROJECT_ID" } }' \ --compressed
Où :
YOUR_ACCESS_TOKEN
est le jeton d'accès OAuth 2.0 obtenu à l'étape 5a.PROJECT_ID
est l'ID du projet obtenu à l'étape 1.Si l'opération réussit, vous devriez recevoir une réponse
200 OK
accompagnée des paramètres client mis à jour.
Une fois les étapes ci-dessus terminées, les restrictions VPC Service Controls, telles que définies dans le périmètre de service, sont appliquées à toutes les API Google Cloud Search, aux recherches sur cloudsearch.google.com
, ainsi qu'à l'affichage et à la modification de la configuration ou des rapports à l'aide de la console d'administration. Les requêtes ultérieures à l'API Google Cloud Search qui ne respectent pas les niveaux d'accès reçoivent une erreur PERMISSION_DENIED “Request is prohibited by organization’s policy”
.