WriteOnly (Visual Basic)

Spécifie qu’une propriété peut être écrite, mais pas lue.

Notes

Règles

Contexte de déclaration. Vous pouvez utiliser WriteOnly seulement au niveau du module. Cela signifie que le contexte de déclaration d’une propriété WriteOnly doit être une classe, une structure ou un module, et ne peut pas être un fichier source, un espace de noms ou une procédure.

Vous pouvez déclarer une propriété en tant que WriteOnly, mais pas une variable.

Quand utiliser WriteOnly

Parfois, vous souhaitez que le code consommateur soit en mesure de définir une valeur, mais pas de découvrir ce qu’il s’agit. Par exemple, les données sensibles, telles qu’un numéro d’inscription sociale ou un mot de passe, doivent être protégées contre l’accès par tout composant qui ne les a pas définies. Dans ce cas, vous pouvez utiliser une propriété WriteOnly pour définir la valeur.

Important

Lorsque vous définissez et utilisez une propriété WriteOnly, tenez compte des mesures de protection supplémentaires suivantes :

  • Remplacement. Si la propriété est membre d’une classe, autorisez-la à utiliser par défaut NotOverridable et ne la déclarez pas comme Overridable ou MustOverride. Cela empêche une classe dérivée d’effectuer un accès non souhaité via un remplacement.

  • Niveau d’accès. Si vous conservez les données sensibles de la propriété dans une ou plusieurs variables, déclarez-les comme privées afin qu’aucun autre code ne puisse y accéder.

  • Chiffrement. Stockez toutes les données sensibles sous forme chiffrée plutôt que dans du texte brut. Si du code malveillant accède de quelque manière que ce soit à cette zone de mémoire, il est plus difficile d’utiliser les données. Le chiffrement est également utile s’il est nécessaire de sérialiser les données sensibles.

  • Réinitialiser. Lorsque la classe, la structure ou le module définissant la propriété est en cours d’arrêt, réinitialisez les données sensibles aux valeurs par défaut ou à d’autres valeurs sans signification. Cela offre une protection supplémentaire lorsque cette zone de mémoire est libérée pour un accès général.

  • Persistance. Ne conservez pas de données sensibles, par exemple sur le disque, si vous pouvez les éviter. En outre, n’écrivez pas de données sensibles dans le Presse-papiers.

Le modificateur WriteOnly peut être utilisé dans ce contexte :

Property Statement

Voir aussi