Renforcer la sécurité avec VPC Service Controls

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 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 numéros de projet 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. Créez une règle d'accès pour votre organisation Google Cloud Platform à l'aide de gcloud:

    1. Obtenir l'ID de votre organisation
    2. Créez une stratégie d'accès.
    3. Récupérez 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 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 étant précédé de la chaîne projects/. Utilisez les numéros de projet obtenus à l'étape 1. Par exemple, si vous aviez deux projets, le projet 12345 et le 67890, votre paramètre serait --resource=projects/12345, project/67890. Cette option n'accepte que les numéros de projet. Elle n'accepte pas les noms ni les ID.
    • RESTRICTED-SERVICES est une liste de services séparés par des virgules. 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 plus d'informations sur la création d'un périmètre de service, consultez la section 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, reportez-vous à la section Créer un niveau d'accès de base. Pour obtenir un exemple de création d'une condition de niveau d'accès qui n'autorise l'accès qu'à partir d'une plage spécifique d'adresses IP, telles que celles d'un réseau d'entreprise, consultez la section Limiter l'accès à une entreprise réseau.
    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. Un délai maximal de 30 minutes peut être nécessaire pour que cette modification soit appliquée et appliquée.
  5. Utilisez l'API REST du service client Cloud Search pour mettre à jour les paramètres client avec votre projet VPC Service Controls protégé par périmètre:

  1. Obtenez un jeton d'accès OAuth 2.0 auprès du serveur d'autorisation de Google. Pour plus d'informations sur l'obtention du jeton, reportez-vous à l'étape 2 de la page Utiliser OAuth 2.0 pour accéder aux API Google. Pour obtenir 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 correspond au jeton d'accès OAuth 2.0 obtenu à l'étape 5a.
  • PROJECT_ID correspond à l'ID de projet obtenu à l'étape 1.

    Si l'opération réussit, vous devriez recevoir une réponse 200 OK accompagnée des nouveaux paramètres client.

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, effectuent des recherches sur cloudsearch.google.com, puis affichent et modifient les paramètres. des rapports ou la configuration à l'aide de la console d'administration. Les requêtes ultérieures à l'API REST de Cloud Search qui ne suivent pas les niveaux d'accès reçoivent une erreur PERMISSION_DENIED “Request is prohibited by organization’s policy”.