Bonnes pratiques pour l’utilisation des extraits de codeBest practices for using code snippets

Le code d’un extrait de code montre uniquement le moyen le plus simple de faire quelque chose.The code in a code snippet shows only the most basic way to do something. Dans la plupart des cas, le code doit être modifié pour s’adapter à l’application,For most applications, the code must be modified to suit the application.

Gestion des exceptionsHandling exceptions

Habituellement, l’extrait de code Try...Catch empêche les interceptions et réinitialise toutes les exceptions.Typically, code snippet Try...Catch blocks catch and rethrow all exceptions. ce qui peut ne pas être le bon choix pour votre projet.That may not be the right choice for your project. Pour chaque exception, il existe plusieurs façons de répondre.For each exception, there are several ways to respond. Vous trouverez des exemples sur les pages Guide pratique pour gérer une exception à l’aide de try/catch (C#) et Instruction Try... Catch... Finally (Visual Basic).For examples, see How to: Handle an exception using try/catch (C#) and Try...Catch...Finally statement (Visual Basic).

Emplacements des fichiersFile locations

Lorsque vous adaptez des emplacements de fichiers à votre application, vous devez réfléchir à ce qui suit :When you adapt file locations to your application, you should think about the following:

  • Trouver un emplacement accessible.Finding an accessible location. Les utilisateurs n’ayant pas forcément accès au dossier Program Files de l’ordinateur, il est possible que le stockage de fichiers avec les fichiers d’application ne fonctionne pas.Users may not have access to the Program Files folder of the computer, so storing files with the application files may not work.

  • Trouver un emplacement sécurisé.Finding a secure location. Le stockage des fichiers dans le dossier racine (C:\) n’est pas sécurisé.Storing files in the root folder (C:\) is not secure. Pour les données d’application, nous vous recommandons le dossier Application Data.For application data, we recommend the Application Data folder. Pour les données utilisateur, l’application peut créer un fichier pour chaque utilisateur dans le dossier Documents.For individual user data, the application can create a file for each user in the Documents folder.

  • Utiliser un nom de fichier valide.Using a valid file name. Vous pouvez utiliser les contrôles OpenFileDialog et SaveFileDialog pour réduire la probabilité d’avoir des noms de fichiers non valides.You can use the OpenFileDialog and SaveFileDialog controls to reduce the likelihood of invalid file names. N’oubliez pas qu’entre le moment où l’utilisateur sélectionne un fichier et celui où votre code manipule ce fichier, ce dernier peut avoir été supprimé.Be aware that between the time the user selects a file and the time your code manipulates the file, the file may be deleted. En outre, l’utilisateur peut ne pas avoir les autorisations pour écrire dans le fichier.In addition, the user may not have permissions to write to the file.

SécuritéSecurity

Le niveau de sécurisation d’un extrait de code dépend de l’endroit où il est utilisé dans le code source et de la façon dont il est modifié une fois qu’il se trouve dans le code.How secure a snippet is depends on where it is used in the source code and how it is modified once it is in the code. La liste suivante contient quelques-uns des points qui doivent être pris en compte.The following list contains a few of the areas that must be considered.

  • Accès aux fichiers et aux bases de donnéesFile and database access

  • Sécurité d'accès du codeCode access security

  • Protection des ressources (journaux des événements, Registre)Protecting resources (such as event logs, registry)

  • Stockage de secretsStoring secrets

  • Vérification des entréesVerifying inputs

  • Transmission des données aux outils de scriptPassing data to scripting technologies

Pour plus d’informations, consultez la page Sécuriser des applications.For more information, see Securing applications.

Extraits de code téléchargésDownloaded code snippets

Les extraits de code IntelliSense installés par Visual Studio ne constituent pas en eux-mêmes un risque de sécurité.IntelliSense code snippets installed by Visual Studio are not in themselves a security hazard. Toutefois, ils peuvent entraîner des risques de sécurité dans votre application.However, they can create security risks in your application. Les extraits de code téléchargés sur Internet doivent être traités comme tout autre contenu téléchargé, c’est-à-dire avec une extrême prudence.Snippets downloaded from the Internet should be treated like any other downloaded content - with extreme caution.

  • Téléchargez des extraits de code uniquement à partir de sites de confiance et utilisez des logiciels antivirus à jour.Download snippets only from sites you trust, and use up-to-date virus software.

  • Ouvrez tous les fichiers d’extrait de code téléchargés dans le Bloc-notes ou dans l’éditeur XML de Visual Studio, et examinez-les attentivement avant de les installer.Open all downloaded snippet files in Notepad or the XML editor of Visual Studio and review them carefully before installing them. Recherchez les problèmes potentiels suivants :Look for the following issues:

    • L’extrait de code est susceptible d’endommager votre système si vous l’exécutez.The snippet code could damage your system if you execute it. Lisez le code source attentivement avant de l’exécuter.Read the source code carefully before running it.

    • Le bloc concernant l’URL de l’aide du fichier d’extrait de code peut contenir des URL qui exécutent un fichier de script malveillant ou qui dirigent vers un site web malveillant.The Help URL block of the snippet file can contain URLs that execute a malicious script file or display an offensive Web site.

    • L’extrait de code peut contenir des références qui sont ajoutées de manière silencieuse à votre projet et peuvent être chargées à tout endroit de votre système.The snippet may contain references that are added silently to your project and may be loaded from anywhere on your system. Ces références peuvent avoir été téléchargées sur votre ordinateur à partir de l’endroit où vous avez téléchargé l’extrait de code.These references may have been downloaded to your computer from where you downloaded the snippet. L’extrait de code peut ensuite appeler une méthode dans la référence qui exécute du code malveillant.The snippet may then make a call to a method in the reference that executes malicious code. Pour vous protéger de ce type d’attaque, examinez attentivement les blocs Imports et References du fichier d’extrait de code.To protect yourself against such an attack, review the Imports and References blocks of the snippet file.

Voir aussiSee also

Extraits de code IntelliSense Visual BasicVisual Basic IntelliSense code snippets
Sécuriser des applicationsSecuring applications
Extraits de codeCode snippets