Sécurisation des applications Web
Vous pouvez utiliser le Gestionnaire pour limiter l'accès aux applications Web ArcGIS Server. Lorsque vous activez la sécurité sur une application, seuls les utilisateurs inclus dans les rôles autorisés peuvent accéder à l'application.
Avant de définir la sécurité sur des applications, assurez-vous que vous avez configuré vos magasins d'utilisateurs et de rôles et que vous avez ajouté au moins un utilisateur et un rôle. Pour savoir comment procéder, reportez-vous à la rubrique Vue d'ensemble de la configuration des utilisateurs et des rôles.
Pour définir des règles concernant qui peut accéder à une application Web, procédez comme suit :
- Dans le Gestionnaire ArcGIS Server, cliquez sur l'onglet Applications pour afficher la liste des applications Web sur votre serveur.
- Recherchez l'application Web pour laquelle vous souhaitez définir des règles de sécurité et cliquez sur l'icône Autorisations (serrure). Une boîte de dialogue Autorisations s'affiche qui vous permet de
- activer la sécurité pour l'application. Si cette case à cocher est désactivée, les autres paramètres de la boîte de dialogue ne sont pas disponibles. Si vous désactivez cette case à cocher, aucune restriction ne sera appliquée pour l'accès à l'application.
- autoriser un rôle pour accéder à l'application. Pour ajouter un rôle, sélectionnez le rôle dans la liste des rôles disponibles à gauche. Cliquez sur Ajouter pour ajouter le rôle à la liste des rôles autorisés.
supprimer des rôles de la liste des autorisations en les sélectionnant et en cliquant sur Supprimer. Les rôles seront déplacés vers la liste des rôles disponibles.
Remarque :Si un rôle a été supprimé ou n'est pas présent dans le magasin de rôles actuel, il n'apparaît pas lorsque la boîte de dialogue Autorisations est rouverte.
- Une fois que vous avez configuré les autorisations, cliquez sur Enregistrer pour enregistrer les modifications relatives à la sécurité de l'application. Cliquez sur Annuler pour abandonner toutes les modifications des autorisations pour l'application.
- Uniquement si les utilisateurs de votre instance d'ArcGIS Server sont des utilisateurs Windows : activez au moins une méthode d'authentification sur le serveur Web IIS. Reportez-vous à la section suivante pour savoir comment procéder.
- Si les utilisateurs de votre instance d'ArcGIS Server sont dans SQL Server ou dans un fournisseur personnalisé, OU si ce sont des utilisateurs Windows et que vous avez activé l'authentification de base à l'étape précédente, exigez que l'application soit utilisée avec https (SSL). Il est essentiel de protéger la transmission des mots de passe lorsque les utilisateurs se connectent à votre application.
Activation des méthodes d'authentification pour l'application
Cette section s'applique uniquement si les utilisateurs de votre instance de serveur ArcGIS sont des utilisateurs Windows. Dans ce cas, l'identité des utilisateurs doit être vérifiée par le serveur Web IIS. Pour que les services Internet soient en mesure d'authentifier l'utilisateur, au moins une méthode d'authentification doit être activée pour l'application Web sécurisée.
Votre installation des services Internet dispose peut-être déjà d'une ou de plusieurs méthodes d'authentification activées par défaut. Vous devez vérifier qu'au moins une méthode d'authentification est activée. Si aucune méthode d'authentification n'est activée, les utilisateurs verront leur accès refusé à l'application Web.
Pour définir les méthodes d'authentification pour l'application Web dans IIS 5.1 ou 6 (Windows XP ou Serveur 2003 respectivement), procédez comme suit :
- Ouvrez le Gestionnaire des services Internet (IIS) en sélectionnant Démarrer > Paramètres > Panneau de configuration > Outils d'administration > Services Internet (IIS).
- Accédez à Sites Web sur l'ordinateur local, puis au site Web que vous avez sécurisé dans le Gestionnaire (en général, dans Site Web par défaut).
- Cliquez avec le bouton droit sur le dossier de l'application Web et cliquez sur Propriétés. La boîte de dialogue Propriétés de l'application s'affiche.
- Cliquez sur l'onglet Sécurité de répertoire. Sous Connexions anonymes et contrôle d'authentification, cliquez sur Modifier. Cela ouvre la boîte de dialogue Méthodes d'authentification.
- Cochez au moins une méthode sous Accès authentifié. Reportez-vous ci-dessous pour plus d'informations sur les méthodes d'authentification.
Pour définir les méthodes d'authentification pour l'application Web dans IIS 7 (Windows Vista, Windows 7 or Windows Server 2008), procédez comme suit :
- Ouvrez le Gestionnaire des services Internet (IIS) en sélectionnant Panneau de configuration > Outils d'administration > Gestionnaire des services Internet (IIS).
- Développez le nœud Sites jusqu'au site Web que vous avez sécurisé dans le Gestionnaire (en général, dans Site Web par défaut) et développez le site pour afficher les applications Web.
- Cliquez avec le bouton gauche sur l'application Web que vous souhaitez sécuriser pour afficher ses liens de propriétés sur le côté droit du Gestionnaire des services Internet (IIS).
- Double-cliquez sur l'élément Authentification sous le groupe IIS. Cela affiche la liste des méthodes d'authentification pour l'application.
- Dans la liste des méthodes d'authentification, cliquez avec le bouton droit sur Authentification anonyme et, dans le menu contextuel, sélectionnez Désactiver.
- Activez au moins une autre méthode d'authentification. Reportez-vous ci-dessous pour plus d'informations sur les méthodes d'authentification.
Pour plus d'informations sur les méthodes d'authentification, reportez-vous à la rubrique Choix d'une méthode d'authentification dans ces rubriques d'aide. Reportez-vous également à la documentation sur IIS et à d'autres ressources telles que les pages MSDN Authentication Methods Supported in IIS 6.0 et Authentication Feature Requirements (IIS 7).
Authentification et autorisations dans web.config
ASP.NET stocke les informations de sécurité pour une application Web dans son fichier web.config (les utilisateurs et les rôles sont stockés habituellement séparément dans les fournisseurs spécifiés dans le fichier web.config). Le Gestionnaire utilise cette approche de l'autorisation pour les applications Web (mais pas pour les services Web SIG : reportez-vous à la rubrique Sécurisation des connexions Internet aux services). Vous pouvez afficher ces informations, mais si vous les modifiez, le Gestionnaire risque de ne plus être en mesure de gérer la sécurité pour votre application.
Les règles d'autorisation pour les applications Web sont stockées dans le format d'autorisation standard pour les applications ASP.NET. Les règles sont stockées dans le fichier web.config au sein de l'élément <authorization> standard.
Si vous modifiez les règles d'autorisation dans web.config, manuellement ou à l'aide de l'outil Administration de site Web (WSAT), vous devez suivre les indications ci-dessous :
- Utilisez uniquement des règles <allow>. Le Gestionnaire n'utilise pas les règles <deny>, à l'exception de la règle Refuser pour tous les utilisateurs, en bas de la liste des règles.
- Ajoutez uniquement des rôles aux règles. Le Gestionnaire ne prend pas en charge l'ajout de comptes utilisateur individuels aux règles.
- Ajoutez uniquement un rôle à tout élément allow. Par exemple, la règle suivante ne doit pas être utilisée :
<allow users="Admins, Planning" />
A la place, créez deux règles équivalentes :<allow users="Admins" /> <allow users="Planning" />
- Ne supprimez pas et ne modifiez pas la règle <deny users="all" />. Cette règle doit être la dernière dans la liste.
- L'ordre des règles n'importe pas, car seules des règles allow sont utilisées. La seule exception à cela est que la règle Refuser pour tous les utilisateurs doit apparaître la dernière dans la liste.
Si vous ne suivez pas ces indications et que vous modifiez ultérieurement la sécurité à l'aide du Gestionnaire, les règles d'accès figurant dans le fichier web.config peuvent être lues de façon incorrecte et peuvent être remplacées. Si vous n'envisagez pas d'utiliser le Gestionnaire pour configurer la sécurité pour l'application Web, vous pouvez, bien entendu, utiliser toute configuration d'autorisation ASP.NET valide de votre choix.
Utilisation de l'outil Administration de site Web (WSAT)
La configuration de la sécurité pour les applications Web créées dans le Gestionnaire est compatible avec l'outil WSAT. L'outil WSAT est un utilitaire Microsoft qui vous permet de gérer les utilisateurs et les rôles et de configurer des règles d'accès pour les applications Web. Vous pouvez accéder à l'outil WSAT à partir de Visual Studio.
L'outil WSAT vous permet de choisir entre deux formes d'authentification : l'authentification Windows (Depuis Internet) et l'authentification basée sur des formulaires (Depuis un réseau local). Si vous modifiez le type d'authentification dans l'outil WSAT après que le Gestionnaire a créé sa configuration de sécurité, il ne sera peut-être pas possible de modifier la sécurité des applications dans le Gestionnaire. Dans ce cas, vous devez continuer à utiliser l'outil WSAT pour gérer la sécurité ou modifier le fichier web.config directement.
L'emplacement des utilisateurs et des rôles est spécifié par le type d'authentification et par la configuration du fournisseur. Vous pouvez afficher la configuration dans l'outil WSAT, mais si vous la modifiez, le Gestionnaire risque de ne pas être en mesure de gérer la sécurité.
Reportez-vous à la section précédente, "Authentification et autorisations dans web.config", pour obtenir des conseils quant à la modification des règles d'autorisation.