Pour améliorer la sécurité globale, IAP refuse par défaut l'accès aux requêtes qui ne disposent pas d'une indication du nom de serveur (SNI) correspondante. IAP vérifie également la SNI du certificat de l'équilibreur de charge. Cela permet à IAP de limiter la redirection d'URL vers des domaines malveillants. La fonctionnalité des domaines autorisés IAP fournit une couche de sécurité supplémentaire pour vos ressources protégées par IAP. En tant que propriétaire de ressource ou administrateur IAP, vous pouvez limiter l'accès aux ressources protégées par IAP à des domaines spécifiques en configurant la fonctionnalité des domaines autorisés.
Vous pouvez également configurer les domaines autorisés IAP dans les scénarios suivants :
- Votre navigateur ou un proxy intermédiaire force la mise en pool des connexions : dans ce scénario, vous recevez la réponse HTTP 429 et le code d'erreur
51. Pour résoudre le problème, un administrateur IAP peut mettre à jour la liste des domaines autorisés afin d'y inclure votre nom d'hôte. - Le nom d'hôte fourni ne correspond pas au certificat SSL sur le serveur : dans ce scénario, vous recevez le code d'erreur
52. Pour résoudre le problème, un administrateur IAP peut mettre à jour la liste des domaines autorisés afin d'y inclure votre nom d'hôte.
Configurer les domaines autorisés
Vous pouvez utiliser gcloud ou l'API pour configurer les paramètres des domaines autorisés. Pour configurer les domaines autorisés, utilisez les champs suivants :
enable: booléen. Active ou désactive la fonctionnalité des domaines autorisés.Domains: chaîne. Liste des domaines autorisés. Les domaines peuvent contenir des préfixes génériques, tels que*.example.com.. Les noms de domaine ne peuvent pas contenir de caractère générique directement sur un suffixe public ou un domaine de premier niveau. Exemple :*.com,*.co.in.
Pour en savoir plus, consultez la section IapSettings.
Pour configurer les domaines autorisés IAP, procédez comme suit :
Console
- Accédez à la page IAP.
Accéder à Identity-Aware Proxy. - Sélectionnez un projet, puis la ressource sur laquelle vous souhaitez activer la fonctionnalité des domaines autorisés.
- Ouvrez les paramètres de la ressource. Sous Domaines autorisés, sélectionnez Activer les domaines autorisés.
- Spécifiez la liste des domaines autorisés, puis cliquez sur Enregistrer.
gcloud
Voici quelques exemples de commandes permettant de spécifier des domaines autorisés.
Pour en savoir plus, consultez gcloud iap settings set.
Exécutez la commande suivante :
gcloud iap settings set SETTING_FILE --folder=FOLDER --organization=ORGANIZATION --project=PROJECT --resource-type=RESOURCE_TYPE --service=SERVICE --version=VERSION
Où SETTING_FILE correspond à :
accessSettings:
allowed_domains_settings:
enable: true
domains: ["*.example.com", "*.example.net"]
Remplacez les éléments suivants :
- FOLDER : ID du dossier.
- ORGANIZATION : ID de l'organisation.
- PROJECT : ID du projet.
- RESOURCE_TYPE : type de ressource IAP. Doit être
app-engine,iap_web,compute,organization,folder,backend-services,forwarding-ruleoucloud-run. - SERVICE : nom du service. Ce paramètre est facultatif lorsque
resource-typeestcomputeouapp-engine. - VERSION : nom de la version. Ce paramètre n'est pas applicable à
computeet est facultatif lorsqueresource-typeestapp-engine.
Vous devez spécifier au moins l'un des indicateurs suivants pour définir le champ d'application des paramètres :
--organization=ORGANIZATION--folder=FOLDER--project=PROJECT
API
Pour configurer les domaines autorisés, procédez comme suit. Pour en savoir plus sur l'utilisation de l'API pour configurer les domaines autorisés, consultez IapSettings.
- Exécutez la commande suivante pour préparer un fichier
iap_settings.json. Modifiez les valeurs si nécessaire.
{
"access_settings":{
"allowed_domains_settings":{
"enable": true
"domains": [
"*.example.com",
"*.exampe.net"
]
}
}
}
- Obtenez le nom de la ressource en exécutant la commande
gcloud iap settings get. Copiez le champ "name" à partir du résultat. Vous aurez besoin du nom à l'étape suivante.
gcloud iap settings get --organization=ORGANIZATION --folder=FOLDER --project=PROJECT --resource-type=RESOURCE_TYPE --service=SERVICE --version=VERSION
- Remplacez
RESOURCE_NAMEdans la commande suivante par le nom de l'étape précédente. LesIapSettingsseront mises à jour.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d @iap_settings.json \ "https://iap.googleapis.com/v1/RESOURCE_NAME:iapSettings?updateMask=iapSettings.accessSettings.allowedDomainsSettings.enable,iapSettings.accessSettings.allowedDomainsSettings.domains"
Dépannage
Problème d'accès aux domaines autorisés
Si vous recevez le code d'erreur 53, demandez à un administrateur IAP d'ajouter votre nom d'hôte à la liste des domaines autorisés.