Partager via


Détermination des autorisations accordées

Pour les domaines d'application, le jeu d'autorisations accordées est simplement le jeu d'autorisations permises.

Pour les assemblys, le Common Language Runtime prend en considération d'autres facteurs lors du chargement de l'assembly pour déterminer le jeu d'autorisations accordées. Un assembly peut contenir des demandes de sécurité déclaratives spécifiant les autorisations que le code requiert ou souhaite avoir. Le tableau suivant décrit les jeux d'autorisations que le code peut demander.

Jeu d'autorisations Description

Requis

Spécifie le jeu d'autorisations minimum dont le code a besoin pour s'exécuter.

Facultatif

Identifie les autorisations que le code souhaite avoir en plus du jeu minimum. Cela entraîne le refus implicite de toutes les autorisations qui ne sont pas identifiées dans le jeu minimal ou le jeu optionnel.

Refusé

Spécifie les autorisations qui ne doivent jamais être accordées au code.

Si les trois demandes d'autorisations sont absentes, l'assembly reçoit simplement l'autorisation permise par la stratégie. Cependant, si au moins une des trois demandes d'autorisations est présente, le runtime prend en considération les autorisations demandées en appliquant le processus suivant :

  1. Le runtime calcule les autorisations permises pour l'assembly et s'assure que celui-ci est autorisé à exécuter. Si l'autorisation de s'exécuter n'est pas présente, le runtime lève une PolicyException et le code n'est pas autorisé à s'exécuter.

  2. Le runtime détermine si le jeu des autorisations requises est un sous-ensemble du jeu d'autorisations permises. Sinon, le runtime lève une PolicyException et le code n'est pas autorisé à s'exécuter.

  3. Le runtime recoupe les autorisations facultatives demandées avec le jeu d'autorisations permises. Si des autorisations optionnelles ne sont pas demandées, le PermissionSet optionnel est supposé être FullTrust.

  4. Le runtime unit le résultat de l'étape 3 aux autorisations minimales demandées.

  5. Finalement, le runtime soustrait le résultat de l'étape 4 de toutes les autorisations éventuellement refusées.

Voir aussi

Référence

PolicyException

Autres ressources

Gestion de la stratégie de sécurité