Pour améliorer la sécurité globale, IAP refuse par défaut l'accès aux requêtes qui n'ont pas d'indication de nom de serveur (SNI) correspondante. Cela permet à IAP de limiter la redirection des URL aux domaines malveillants. La fonctionnalité "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 restreindre l'accès aux ressources protégées par IAP à des domaines spécifiques en configurant la fonctionnalité de domaines autorisés.
Vous pouvez également configurer des domaines autorisés IAP dans les cas suivants:
- Votre navigateur ou un proxy intermédiaire force le regroupement de connexions : dans ce scénario, vous recevez une réponse HTTP 429 et un 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 un 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*.abc.com.
. Les noms de domaine ne peuvent pas contenir de caractère générique directement sur un suffixe public ou sur un domaine de premier niveau. Exemple :*.com
,*.co.in
.
Pour en savoir plus, consultez la section IapSettings.
Pour configurer des domaines autorisés IAP, procédez comme suit:
gcloud
Vous pouvez spécifier des domaines autorisés au niveau des ressources et des services au niveau de l'organisation, du projet et du dossier. Voici quelques exemples de commandes pour spécifier des domaines autorisés.
Pour en savoir plus, consultez la page 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
Pour définir les domaines autorisés dans une organisation, exécutez la commande suivante:
gcloud iap settings set SETTING_FILE --organization=ORGANIZATION
Pour définir les domaines autorisés pour les ressources d'un dossier, exécutez la commande suivante:
gcloud iap settings set SETTING_FILE --folder=FOLDER
Pour définir des domaines autorisés pour toutes les ressources de type Web d'un projet, exécutez la commande suivante:
gcloud iap settings set SETTING_FILE --project=PROJECT --resource-type=iap_web
Pour définir des domaines autorisés pour tous les services App Engine d'un projet, exécutez la commande suivante:
gcloud iap settings set SETTING_FILE --project=PROJECT --resource-type=app-engine --service=SERVICE
Où SETTING_FILE
correspond à :
{
"access_settings": {
"allowed_domains_settings": {
"enable": true,
"domains": [
"*.abc.com",
"*.xyz.co.in"
]
}
}
}
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
oufolder
. - SERVICE : le nom du service. Cette propriété est facultative lorsque
resource-type
est défini surcompute
ouapp-engine
. - VERSION: nom de la version. Cela n'est pas applicable pour
compute
et est facultatif lorsqueresource-type
estapp-engine
.
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.
Créez un fichier JSON avec des paramètres de domaine autorisés avec un masque de champ. Exemple de code JSON
SETTING_FILE
:{ "iap_settings":{ "value":{ "access_settings":{ "allowed_domains_settings":{ "enable":{ "value":"True" }, "domains":{ "value":[ "*.abc.com", "*.xyz.co.in" ] } } } } }, "update_mask":{ "value":"iap_settings.access_settings.allowed_domains_settings" } }
Exécutez la commande suivante pour utiliser l'API
UpdateIAPSettings
afin d'ajouter les paramètres des domaines autorisés.curl -i -H "Content-Type:application/json"
-H "Authentication: Bearer $(gcloud auth print-access-token)" IAP_URL
-d SETTINGS_FILE.JSON
Pour définir les paramètres de domaine autorisés pour toutes les ressources d'une organisation, utilisez l'URL suivante :
https://iap.googleapis.com/v1/organization/ORGANIZATION_ID:iapsettings
Pour définir les paramètres de domaine autorisés pour toutes les ressources d'un dossier, utilisez l'URL suivante :
https://iap.googleapis.com/v1/folder/FOLDER_ID:iapsettings
Pour définir les paramètres de domaine autorisés pour toutes les ressources de type Web d'un projet, utilisez l'URL suivante :
https://iap.googleapis.com/v1/projects/PROJECT_NUMBER/iap_web:iapsettings
Pour définir les paramètres de domaine autorisés pour toutes les ressources App Engine d'un projet, utilisez l'URL suivante : https://iap.googleapis.com/v1/projects/PROJECT_NUMBER/iap_web/appengine-APP_ID:iapsettings
Pour définir les paramètres de domaine autorisés pour une version du service App Engine au sein d'un projet, utilisez l'URL suivante :
https://iap.googleapis.com/v1/projects/PROJECT_NUMBER/iap_web/appengine-APP_ID/services/APP_SERVICE_ID/versions/VERSION_ID:iapsettings
Pour définir les paramètres des domaines autorisés pour toutes les ressources Compute Engine d'un projet, utilisez l'URL suivante :
https://iap.googleapis.com/v1/projects/PROJECT_NUMBER/iap_web/compute:iapsettings
Pour définir les paramètres des domaines autorisés pour une ressource Compute Engine dans un projet, utilisez l'URL suivante :
https://iap.googleapis.com/v1/projects/PROJECT_NUMBER/iap_web/compute/services/BACKEND_SERVICE_ID:iapsettings
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.