Écriture des bibliothèques de classes sécurisées

Des erreurs de programmation dans les bibliothèques de classes peuvent exposer des vulnérabilités en matière de sécurité puisque les bibliothèques de classes accèdent souvent à des ressources protégées et à du code non managé. Si vous concevez des bibliothèques de classes, vous devez comprendre la sécurité d'accès du code et veiller à sécuriser votre bibliothèque de classes.

Le tableau suivant décrit les trois principaux éléments que vous devez prendre en compte lors de la sécurisation d'une bibliothèque de classes.

Élément de sécurité

Description

Demande de sécurité

Les demandes sont appliquées au niveau de la classe et de la méthode en tant que mécanisme exigeant que les appelants de votre code aient les autorisations que vous souhaitez qu'ils aient. Les demandes appellent un parcours de pile, dans lequel tous les appelants qui appellent directement ou indirectement votre code sont vérifiés sur la pile lorsque votre code est appelé. Les demandes sont généralement utilisées dans les bibliothèques de classes pour protéger les ressources.

Substitution de sécurité

Les substitutions sont appliquées sur la portée de la classe et de la méthode comme un moyen d'annuler certaines décisions de sécurité prises par le runtime. Elles sont appelées lorsque les appelants utilisent votre code. Elles sont utilisées pour arrêter les parcours de pile et limiter l'accès des appelants à qui certaines autorisations ont déjà été octroyées.

RemarqueRemarque
Les modifications de sécurité au sein du .NET Framework 4 ont rendu certaines substitutions obsolètes.Pour plus d'informations sur ces modifications, consultez Modifications de sécurité dans le .NET Framework.
Mise en gardeAttention
Les substitutions peuvent être dangereuses et doivent être utilisées avec précaution.

Optimisation de la sécurité

La transparence, introduite dans le .NET Framework 4, offre de nouvelles façons d'optimiser la sécurité d'accès du code. Pour plus d'informations, consultez Code transparent de sécurité (security-transparent).

Voir aussi

Concepts

Demandes de sécurité

Substitution des vérifications de sécurité

Sécurité déclarative utilisée avec la portée de la classe et du membre

Optimisations de la sécurité

Autres ressources

Sécurité d'accès du code