Cette documentation est archivée et n’est pas conservée.

Déploiement et sécurité ClickOnce

Applications qui sont déployées à l'aide de la technologie ClickOnce exécutées dans un "bac à sable (sandbox)", avec un jeu limité d'autorisations basé sur une zone de sécurité. Le tableau suivant répertorie les autorisations par défaut en fonction de l'emplacement de déploiement:

Emplacement de déploiement Zone de sécurité

Exécution à partir du Web

Zone Internet

Installation à partir du Web

Zone Internet

Installation à partir du partage de fichier réseau

Zone Intranet

Installation à partir du CD-ROM

Confiance totale

RemarqueRemarque

Les autorisations par défaut prennent comme base l'emplacement à partir duquel la version originale de l'application a été déployée ; les mises à jour de l'application hériteront de ces autorisations. Si une installation est configurée pour vérifier les mises à jour à partir d'un emplacement Web ou réseau et qu'une version plus récente est disponible, il est possible que l'installation d'origine reçoive des autorisations pour la zone Internet ou Intranet plutôt que des autorisations de type Confiance totale.

Sécurité et autorisations

En tant que développeur, vous devez garantir que votre application s'exécutera avec les autorisations appropriées.

RemarqueRemarque

Visual Studio permet de déboguer votre application dans la zone de sécurité cible et fournit une aide pour le développement des applications sécurisées.

Il existe des cas où une application ClickOnce peut requérir des autorisations élevées. Par exemple, une application qui doit interagir avec une feuille de calcul Excel exige des autorisations d'un niveau supérieur à celles qui sont définies pour les zones Internet ou Intranet. Si une application requiert un niveau d'autorisations élevé, l'utilisateur sera invité pendant installation à accorder l'autorisation. Si l'utilisateur accepte, l'application sera installée ; dans le cas contraire, l'installation sera interrompue.

RemarqueRemarque

Pour empêcher des utilisateurs d'être invités, un administrateur système peut spécifier une stratégie de déploiement de ClickOnce qui définit un éditeur de l'application spécifique comme une source fiable. Sur les ordinateurs sur lesquels cette stratégie est déployée, les autorisations seront automatiquement accordées et l'invite ne sera pas présentée à l'utilisateur.

Les autorisations relatives à une application sont déterminées par les paramètres de l'élément <trustInfo>, élément du manifeste d'application. Visual Studio génère automatiquement cette information sur la base des paramètres de la page des propriétés de sécurité du projet. Seules les autorisations spécifiques qu'il demande sont accordées à une application ClickOnce. Par exemple, à l'emplacement où l'accès au fichier requiert des autorisations de type Confiance totale, si l'application demande l'autorisation d'accès de fichier, seule l'autorisation d'accès de fichier, non les autorisations de type Confiance totale, lui sera accordée. Lorsque vous développez votre application ClickOnce, veillez à demander uniquement les autorisations spécifiques dont l'application a besoin.

De plus, le manifeste de déploiement doit être signé à l'aide de l'outil de signature Authenticode. Les informations sur l'éditeur qui prennent comme base l'outil de signature Authenticode seront affichées à l'utilisateur dans la boîte de dialogue d'autorisations pendant l'installation, afin de signaler à l'utilisateur que l'application provient d'une source fiable. Le Kit de développement SDK .NET Framework inclut un outil de signature de fichiers (Signcode.exe) qui permet de signer le manifeste. Pour plus d'informations, consultez Outil File Signing Tool (Signcode.exe).

Authentification basée sur les formulaires ClickOnce et ASP.NET

Si vous souhaitez contrôler les déploiements auxquels chaque utilisateur peut accéder, vous ne devez pas autoriser un accès anonyme aux applications ClickOnce déployées sur un serveur Web. Vous devriez plutôt autoriser les utilisateurs à accéder aux déploiements que vous avez installés selon l'identité d'un utilisateur (utilisation de l'authentification Windows NT).

Si vous déployez dans un environnement sans authentification Windows NT, une solution possible pourrait consister à utiliser l'authentification basée sur les formulaires d'ASP.NET pour authentifier l'utilisateur. Toutefois, ClickOnce utilise des cookies persistants ; ceux-ci présentent un problème de sécurité parce qu'ils résident dans le cache Internet Explorer et peuvent être hachés.

Par conséquent, si vous déployez des applications hors connexion (déploiements de ClickOnce dans lesquels vous activez L'application est également disponible hors connexion (accessible depuis le menu Démarrer) sur la page Publier), tout scénario d'authentification en plus de l'authentification Windows NT n'est pas pris en charge. Une solution acceptable serait de permettre à tout utilisateur d'installer l'application, mais si l'application client authentifie l'utilisateur au moyen de services Web à l'activation.

Voir aussi

Afficher: