Partager via


Comment : ajouter des assemblys à la stratégie de sécurité à l'aide de Caspol.exe

Un assembly implémentant une autorisation personnalisée ou tout autre objet de sécurité personnalisé qui n'est pas inclus dans le .NET Framework, doit être ajouté à la liste des assemblys d'un niveau de confiance suffisant. Vous pouvez faire ceci à l'aide de l'outil Code Access Security Policy Tool (Caspol.exe). Il existe une liste séparée pour chaque niveau de stratégie. La liste des assemblys d'un niveau de confiance suffisant accorde à ses membres un niveau de confiance suffisant pour le niveau de stratégie concerné. Ceci est nécessaire pour empêcher le runtime de procéder à des résolutions de stratégie circulaires.

Pour ajouter un assembly implémentant un objet de sécurité personnalisé à la liste des assemblys d'un niveau de confiance suffisant

  1. Avant d'ajouter un assembly à la stratégie de sécurité, vous devez lui donner un nom fort et le placer dans le Global Assembly Cache. Pour plus d'informations sur l'utilisation d'assemblys et du Global Assembly Cache, consultez Création et utilisation d'assemblys avec nom fort.

  2. Tapez la commande suivante à l'invite de commande :

    caspol [-enterprise|-machine|-user] –addfulltrust AssemblyFile

    Spécifiez l'option du niveau de stratégie avant l'option –addfulltrust. Si vous ne spécifiez pas l'option du niveau de stratégie, Caspol.exe répertorie les jeux d'autorisations au niveau de stratégie par défaut. Pour les administrateurs d'ordinateurs, le niveau par défaut est le niveau de stratégie de l'ordinateur ; pour les autres, il s'agit du niveau de stratégie de l'utilisateur.

    La commande suivante ajoute MyCustomPermissionSet.exe à la liste des assemblys d'un niveau de confiance suffisant du niveau de stratégie de l'utilisateur.

    caspol –user –addfulltrust MyCustomPermissionSet.exe
    
  3. Si l'assembly que vous ajoutez dépend d'un autre assembly (c'est-à-dire utilise des types implémentés dans un autre assembly), vous devez aussi ajouter cet assembly à la liste.

L'ajout d'un assembly à une liste des assemblys d'un niveau de confiance suffisant ne garantit pas que le système de stratégie lui accordera un niveau de confiance suffisant dans sa globalité, mais uniquement au niveau de stratégie où il est répertorié. Par exemple, si vous ajoutez l'assembly MyCustomPermission.exe à la liste des assemblys d'un niveau de confiance suffisant du niveau de stratégie de l'utilisateur, mais que MyCustomPermission.exe reçoit uniquement les droits d'exécution de la stratégie de l'ordinateur, finalement seuls les droits d'exécution seront accordés à MyCustomPermission.exe. Il est donc important de ne pas oublier que de mettre un assembly dans la liste des assemblys d'un niveau de confiance suffisant n'aide qu'à éviter la création de résolutions de stratégie circulaires pour le niveau de stratégie où il est répertorié. Cela ne garantit pas que l'assembly implémentant l'autorisation personnalisée reçoive réellement un accord de confiance totale.

Voir aussi

Référence

Caspol.exe (outil Stratégie de sécurité d'accès du code)

Concepts

Modèle de stratégie de sécurité

Autres ressources

Configuration de la stratégie de sécurité à l'aide de l'outil Code Access Security Policy Tool (Caspol.exe)

Configuration des jeux d'autorisations à l'aide de Caspol.exe