Renforcer la sécurité avec VPC Service Controls

Google Cloud Search est compatible avec VPC Service Controls pour améliorer 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 contraindre les données et de limiter les risques d'exfiltration des données.

Prérequis

Avant de commencer, installez l'interface de ligne de commande gcloud.

Activer VPC Service Controls

Pour activer VPC Service Controls, procédez comme suit:

  1. Obtenez les ID et les numéros des projets Google Cloud Platform que vous souhaitez utiliser. Pour obtenir les ID et les numéros des projets, consultez la section Identifier des projets.

  2. Utilisez gcloud afin de créer une règle d'accès pour votre organisation Google Cloud Platform:

    1. Obtenez l'ID de votre organisation.
    2. Créez une règle d'accès.
    3. Obtenez le nom de votre règle d'accès.
  3. Créez un périmètre de service avec Cloud Search en tant que service restreint 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 étant précédé de la chaîne projects/. Utilisez les numéros de projet obtenus à l'étape 1. Par exemple, si vous avez deux projets, 12345 et 67890, votre paramètre est --resource=projects/12345, project/67890 .Cette option ne prend en charge que les numéros de projet, pas les noms ni les ID.
    • RESTRICTED-SERVICES est une liste d'un ou de plusieurs services séparés par une virgule. Utilisez cloudsearch.googleapis.com.
    • POLICY_NAME correspond au nom (au format numérique) de la stratégie d'accès de votre organisation obtenue à l'étape 2c.

    Pour en savoir plus sur la création d'un périmètre de service, consultez la page Créer un périmètre de service.

  4. (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:

    1. Pour créer un niveau d'accès, consultez la page Créer un niveau d'accès de base. Pour obtenir un exemple de création d'une condition de niveau d'accès n'autorisant l'accès qu'à partir d'une plage d'adresses IP spécifique, telle que celles d'un réseau d'entreprise, consultez la section Limiter l'accès sur un réseau d'entreprise.
    2. 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.
  5. Utilisez l'API REST Cloud Search Customer Service pour mettre à jour les paramètres client avec votre projet protégé par le périmètre VPC Service Controls:

  1. Procurez-vous un jeton d'accès OAuth 2.0 auprès du serveur d'autorisation Google. Pour en savoir plus sur l'obtention du jeton, reportez-vous à l'étape 2 de la section Utiliser OAuth 2.0 pour accéder aux API Google. Lors de l'obtention du 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 ou https://www.googleapis.com/auth/cloud_search.

  2. Exécutez la commande curl suivante pour définir le projet dans les paramètres de VPC Service Controls sous "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 correspond au jeton d'accès OAuth 2.0 obtenu à l'étape 5a.
  • PROJECT_ID correspond à l'ID du projet obtenu à l'étape 1.

    En cas de succès, 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 autres requêtes adressées à l'API Google Cloud Search qui ne suivent pas les niveaux d'accès reçoivent une erreur PERMISSION_DENIED “Request is prohibited by organization’s policy”.