Cette page décrit les conditions préalables à la configuration du proxy de sortie, explique comment obtenir l'ID de l'organisation, ajouter l'en-tête de restrictions sur les organisations et configurer le proxy avec la liste des URL cibles.
Les administrateursTrusted Cloud by S3NS , qui gèrent Trusted Cloud by S3NS, et les administrateurs du proxy de sortie, qui configurent ce proxy, doivent collaborer pour configurer les restrictions sur les organisations. Pour en savoir plus sur les solutions partenaires validées avec des restrictions sur les organisations, consultez Solutions partenaires validées.
Avant de commencer
Si vous êtes administrateur de proxy de sortie, avant de configurer le proxy de sortie pour ajouter l'en-tête de restrictions sur les organisations, vous devez remplir les conditions préalables suivantes :
Si les rôles d'administrateur Trusted Cloud by S3NS et d'administrateur du proxy de sortie sont différents dans votre organisation, assurez-vous que l'administrateur Trusted Cloud by S3NS échange avec l'administrateur du proxy de sortie pour configurer le proxy de sortie.
Configurez les règles de pare-feu de votre organisation ou les appareils gérés pour vous assurer que le trafic sortant de tous les utilisateurs de votre organisation transite par le proxy de sortie.
Assurez-vous que le proxy de sortie de votre organisation dispose des fonctionnalités suivantes :
- Insérez des en-têtes. Insère un en-tête HTTP personnalisé dans les requêtes sortantes transitant par le proxy de sortie.
- Inspection TLS Si le trafic vers le proxy de sortie est chiffré, le proxy de sortie doit déchiffrer les paquets, insérer l'en-tête et rechiffrer le paquet avant de l'envoyer à la cible.
Filtrer et insérer des en-têtes Facultatif. Prenez en charge un ou plusieurs des filtres suivants, puis ajoutez l'en-tête uniquement pour les requêtes qui correspondent à la condition de filtre :
- URL cibles : liste des URL cibles que le proxy de sortie peut faire correspondre.
- ID d'appareils. Liste des ID d'appareils auxquels le proxy de sortie peut correspondre. Les ID d'appareil doivent être propagés au proxy de sortie.
- User-ID Liste des ID utilisateur que le proxy de sortie peut faire correspondre. Les ID utilisateur doivent être propagés au proxy de sortie.
Obtenir l'ID de l'organisation
En tant qu'administrateur Trusted Cloud by S3NS , vous devez obtenir l'ID d'organisation Trusted Cloud by S3NSpour pouvoir l'ajouter à l'en-tête des restrictions sur les organisations.
Pour trouver l'ID de ressource de votre organisation, exécutez la commande suivante :
gcloud organizations list
Cette commande permet de répertorier toutes les ressources d'organisation dont vous faites partie, ainsi que les ID de ressources d'organisation correspondants.
Une fois l'ID de l'organisation obtenu, vous pouvez ajouter l'en-tête de restrictions sur les organisations ou contacter l'administrateur du proxy de sortie pour qu'il l'ajoute.
Ajouter l'en-tête des restrictions sur les organisations
En tant qu'administrateur de proxy de sortie, pour ajouter l'en-tête de restrictions sur les organisations aux requêtes sortantes, procédez comme suit :
- Créez l'en-tête.
- Encodez l'en-tête.
- Configurez le proxy de sortie.
Créer l'en-tête
Créez la représentation JSON de l'en-tête au format suivant :
X-Goog-Allowed-Resources: HEADER_VALUE
HEADER_VALUE
contient une liste d'ID d'organisation Trusted Cloud by S3NSautorisés, séparés par une virgule. La valeur doit ensuite être encodée au format base64 adapté au Web.
HEADER_VALUE
présente la structure JSON suivante :
{
"resources": [string,..],
"options": string
}
resources
. Liste de chaînes. Chaque chaîne de cette liste doit faire référence à un ID d'organisation Trusted Cloud by S3NS. Les ID d'organisation figurant dans cette liste sont considérés comme des organisations autorisées lors de l'évaluation.options
: chaîne contenant l'une des valeurs suivantes :"strict"
. Applique l'en-tête de restrictions sur les organisations pour tous les types de requêtes aux services Trusted Cloud by S3NS pris en charge."cloudStorageReadAllowed"
: autorise les requêtes de lecture vers Cloud Storage, mais applique l'en-tête de restrictions sur les organisations pour tous les autres types de requêtes vers les services Trusted Cloud by S3NS pris en charge. Cette option permet d'accéder aux opérations de lecture Cloud Storage suivantes :storage.objects.get
storage.objects.list
storage.objects.getIamPolicy
storage.buckets.get
storage.buckets.list
storage.buckets.getIamPolicy
Pour illustrer cette option, prenons l'exemple d'Alex, l'administrateur de l'organisation Exemple, et de Lee, un employé de cette organisation. Prenons l'exemple d'un site Web tel que altostrat.com, qui stocke du contenu statique dans des buckets Cloud Storage publics et qui est externe à l'organisation exemple. Si Alex utilise l'option strict
pour limiter l'accès de Lee à l'organisation Example Organization uniquement, Lee ne pourra pas accéder au contenu statique d'altostrat.com, qui se trouve dans des buckets Cloud Storage publics appartenant à altostrat.com. Ce comportement a un impact sur la capacité de Lee à parcourir le site Web de manière efficace. Le même comportement se produit pour tout site Web qui utilise Cloud Storage public pour stocker du contenu statique.
Pour permettre à Lee de consulter le contenu statique sur altostrat.com et limiter tous les autres accès Trusted Cloud by S3NS à l'organisation Example Organization uniquement, Alex utilise l'option cloudStorageReadAllowed
.
Voici un exemple d'en-tête de restrictions d'organisation valide :
{
"resources": ["organizations/1234", "organizations/3456"],
"options": "strict"
}
Encoder l'en-tête
Encodez les ID d'organisation au format base64 sécurisé pour le Web. L'encodage doit respecter les spécifications de la section 5 de la norme RFC 4648.
Par exemple, si la représentation JSON de la valeur de l'en-tête est stockée dans le fichier authorized_orgs.json
, exécutez la commande basenc suivante pour encoder le fichier :
$ cat authorized_orgs.json | basenc --base64url -w0
ewogInJlc291cmNlcyI6IFsib3JnYW5pemF0aW9ucy8xMjM0NTY3ODkiLCAib3JnYW5pemF0aW9ucy8xMDExMTIxMzE0Il0sCiAib3B0aW9ucyI6ICJzdHJpY3QiCn0K
Voici un exemple d'en-tête après l'encodage de l'ID de l'organisation :
// Encoded representation
X-Goog-Allowed-Resources: ewogInJlc291cmNlcyI6IFsib3JnYW5pemF0aW9ucy8xMjM0NTY3ODkiLCAib3JnYW5pemF0aW9ucy8xMDExMTIxMzE0Il0sCiAib3B0aW9ucyI6ICJzdHJpY3QiCn0K
// Plain-text representation (As HTTP disallows some characters, encode the organization ID)
// Plain-text representation is included here only for readability
X-Goog-Allowed-Resources: {"resources": ["organizations/1234", "organizations/3456"], "options": "strict"}
Configurer le proxy de sortie
Pour insérer l'en-tête dans les requêtes provenant des appareils gérés, configurez le proxy de sortie.
Assurez-vous que si un utilisateur Trusted Cloud by S3NS de votre organisation fournit explicitement un en-tête HTTP, le proxy de sortie remplace les valeurs fournies par l'utilisateur par celles fournies par l'administrateur Trusted Cloud by S3NS .
Pour éviter d'ajouter cet en-tête aux cibles en dehors de Trusted Cloud by S3NS, configurez le proxy de sortie pour qu'il ajoute l'en-tête de restrictions sur les organisations aux requêtes uniquement avec les cibles suivantes :
*.google.com
*.googleapis.com
*.gcr.io
*.pkg.dev
*.cloudfunctions.net
*.run.app
*.tunnel.cloudproxy.app
*.datafusion.googleusercontent.com
Pour en savoir plus sur les messages d'erreur qui s'affichent en cas de non-respect des restrictions sur les organisations, consultez Messages d'erreur.
Étapes suivantes
- Découvrez comment utiliser les restrictions d'organisation.