Renforcer la sécurité avec VPC Service Controls

Google Cloud Search prend en charge 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 des données.

Conditions préalables

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

Activer VPC Service Controls

Pour activer VPC Service Controls:

  1. Obtenez les ID et les numéros du projet 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 pour 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 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 n'accepte 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 est le nom (au format numérique) de la règle 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 section Créer un niveau d'accès de base. Pour obtenir un exemple sur la 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. Après avoir 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 VPC Service Controls protégé par un périmètre:

  1. Obtenez un jeton d'accès OAuth 2.0 auprès du serveur d'autorisation Google. Pour plus d'informations sur l'obtention du jeton, reportez-vous à l'étape 2 de l'article 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 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 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 effectué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 dans cloudsearch.google.com, et à 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 respectent pas les niveaux d'accès génèrent une erreur PERMISSION_DENIED “Request is prohibited by organization’s policy”.