Caspol.exe (outil Stratégie de sécurité d'accès du code)
L'outil Stratégie de sécurité d'accès du code (CAS) (Caspol.exe) permet aux utilisateurs et aux administrateurs de modifier la stratégie de sécurité au niveau de l'ordinateur, de l'utilisateur et de l'entreprise.
Important |
---|
Dans le .NET Framework version 4 et les versions ultérieures, Caspol.exe n'affecte pas la stratégie CAS, sauf si l'élément <legacyCasPolicy> a la valeur true.Pour plus d'informations, consultez Modifications de sécurité dans le .NET Framework 4. |
Remarque |
---|
Les ordinateurs 64 bits comprennent des versions 64 bits et 32 bits de stratégie de sécurité.Pour garantir que vos modifications de stratégie s'appliquent aux applications 32 bits et 64 bits, exécutez la version 32 bits de Caspol.exe à l'aide de l'invite de commandes de Visual Studio, et exécutez la version 64 bits à l'aide de l'invite de commandes Visual Studio x64 Win64 |
Cet outil est installé automatiquement avec Visual Studio et avec le Kit de développement logiciel Windows. Pour exécuter l'outil, nous vous recommandons d'utiliser l'invite de commandes Visual Studio ou l'invite de commandes du Kit de développement logiciel (l'interpréteur de commandes CMD). Ces utilitaires vous permettent d'exécuter l'outil facilement, sans naviguer jusqu'au dossier d'installation. Pour plus d'informations, consultez Invites de commandes Visual Studio e t Kit de développement logiciel (SDK) Windows.
Si Visual Studio est installé sur votre ordinateur : dans la barre des tâches, cliquez sur le bouton Start, All Programs, Visual Studio, sur Visual Studio Tools, puis sur Visual Studio Command Prompt.
ou
Si vous avez le Kit de développement logiciel Windows installé sur votre ordinateur : Dans la barre des tâches, cliquez sur Start, All Programs, le dossier correspondant au Kit de développement logiciel, puis sur Command Prompt (ou CMD Shell).
À l'invite de commandes, tapez ce qui suit :
caspol [options]
Paramètres
Option |
Description |
---|---|
-addfulltrust assembly_file ou -af assembly_file |
Ajoute un assembly qui implémente un objet de sécurité personnalisé (autorisation personnalisée ou condition d'appartenance personnalisée) à la liste des assemblys de confiance totale pour un niveau de stratégie précis. L'argument assembly_file spécifie l'assembly à ajouter. Ce fichier doit être signé avec un nom fort. Vous pouvez signer un assembly avec un nom fort à l'aide de l'outil Strong Name Tool (Sn.exe). Lorsqu'un jeu d'autorisations contenant une autorisation personnalisée est ajouté à la stratégie, l'assembly implémentant cette autorisation personnalisée doit être ajouté à la liste des assemblys de confiance totale pour le niveau de stratégie considéré. Les assemblys qui implémentent des objets de sécurité personnalisés (groupes de codes ou conditions d'appartenance personnalisés) et utilisés dans une stratégie de sécurité (stratégie de l'ordinateur notamment) doivent toujours être ajoutés à la liste des assemblys de confiance totale.
Attention
Si l'assembly implémentant l'objet de sécurité personnalisé fait référence à d'autres assemblys, vous devez d'abord ajouter les assemblys référencés à la liste des assemblys de confiance totale.Les objets de sécurité personnalisés créés à l'aide de Visual Basic, C++ et JScript référencent Microsoft.VisualBasic.dll, Microsoft.VisualC.dll ou Microsoft.JScript.dll, respectivement.Ces assemblys ne sont pas par défaut dans la liste des assemblys de confiance totale.Vous devez ajouter l'assembly approprié à la liste de confiance totale avant d'ajouter un objet de sécurité personnalisé.Dans le cas contraire, vous risquez de perturber le système de sécurité et de provoquer l'échec du chargement de tous les assemblys.Dans ce cas, l'option -all -reset de l'exécutable Caspol.exe ne corrigera pas la sécurité.Pour corriger la sécurité, vous devez manuellement modifier les fichiers de sécurité pour supprimer l'objet de sécurité personnalisé.
|
-addgroup {parent_label | parent_name} mship pset_name [flags] ou -ag {parent_label | parent_name} mship pset_name [flags] |
Ajoute un nouveau groupe de codes à la hiérarchie des groupes de codes. Vous pouvez spécifier l'argument parent_label ou parent_name. L'argument parent_label spécifie l'étiquette (telle que 1. ou 1.1.) du groupe de codes qui est le parent du groupe de codes ajouté. L'argument parent_name indique le nom du groupe de codes parent du groupe ajouté. Dans la mesure où parent_label et parent_name peuvent être utilisés indifféremment, Caspol.exe doit être capable de faire la distinction entre ces deux arguments. C'est pourquoi parent_name ne peut pas commencer par un chiffre. Par ailleurs, parent_name ne peut contenir que les lettres A à Z, les chiffres 0 à 9 et le caractère de soulignement. L'argument mship spécifie la condition d'appartenance au nouveau groupe de codes. Pour plus d'informations, consultez le tableau des arguments mship, plus loin dans cette section. L'argument pset_name est le nom du jeu d'autorisations qui sera associé au nouveau groupe de codes. Vous pouvez également définir un ou plusieurs indicateurs pour le nouveau groupe. Pour plus d'informations, consultez le tableau des arguments flags, plus loin dans cette section. |
- addpset {psfile | psfile pset_name} ou - ap {named_psfile | psfile pset_name} |
Ajoute un nouveau jeu d'autorisations nommé à la stratégie. Ce jeu d'autorisations doit être créé dans XML et stocké dans un fichier .xml. Si le fichier XML contient le nom du jeu d'autorisations, seul ce fichier (psfile) est spécifié. Si le fichier XML ne contient pas le nom du jeu d'autorisations, vous devez spécifier à la fois le nom du fichier XML (psfile) et le nom du jeu d'autorisations (pset_name). Notez que toutes les autorisations utilisées dans un jeu d'autorisations doivent être définies dans les assemblys contenus dans le Global Assembly Cache. |
-a[ll] |
Indique que toutes les options qui suivent celle-ci s'appliquent aux stratégies de l'ordinateur, de l'utilisateur et de l'entreprise. L'option -all fait toujours référence à la stratégie de l'utilisateur actuellement en session. Pour faire référence à la stratégie d'un autre utilisateur que l'utilisateur en cours, utilisez l'option -customall. |
-chggroup {label |name} {mship | pset_name | flags} ou -cg {label |name} {mship | pset_name | flags} |
Modifie la condition d'appartenance ou le jeu d'autorisations d'un groupe de codes ou change la configuration des indicateurs exclusive, levelfinal, name et description. Vous pouvez spécifier soit l'argument label soit l'argument name. L'argument label spécifie l'étiquette (telle que 1. ou 1.1.) du groupe de code. L'argument name indique le nom du groupe de codes à modifier. Dans la mesure où label et name peuvent être utilisés indifféremment, Caspol.exe doit être capable de faire la distinction entre ces deux arguments. C'est pourquoi name ne peut pas commencer par un chiffre. Par ailleurs, name ne peut contenir que les lettres A à Z, les chiffres 0 à 9 et le caractère de soulignement. L'argument pset_name spécifie le nom du jeu d'autorisations à associer au groupe de codes. Consultez les tableaux fournis plus loin dans cette section pour obtenir des informations sur les arguments mship et flags. |
-chgpset psfile pset_name ou -cp psfile pset_name |
Change le jeu d'autorisations nommé. L'argument psfile fournit la nouvelle définition du jeu d'autorisations ; il s'agit d'un fichier de jeu d'autorisations sérialisé au format XML. L'argument pset_name spécifie le nom du jeu d'autorisations que vous souhaitez remplacer. |
-customall path ou -ca chemin d'accès |
Indique que toutes les options qui suivent celle-ci s'appliquent aux stratégies de l'ordinateur, de l'entreprise et de l'utilisateur personnalisé spécifié. Vous devez spécifier l'emplacement du fichier de configuration de sécurité associé à l'utilisateur personnalisé dans l'argument path. |
-cu[stomuser] path |
Permet d'administrer une stratégie d'utilisateur personnalisée qui n'appartient pas à l'utilisateur pour lequel Caspol.exe s'exécute. Vous devez spécifier l'emplacement du fichier de configuration de sécurité associé à l'utilisateur personnalisé dans l'argument path. |
-enterprise ou -en |
Indique que toutes les options qui suivent celle-ci s'appliquent à la stratégie de niveau entreprise. Les utilisateurs qui ne sont pas des administrateurs de l'entreprise ne bénéficient pas d'autorisations suffisantes pour modifier la stratégie de l'entreprise, même s'ils peuvent l'afficher. Dans les scénarios qui ne se situent pas au niveau de l'entreprise, cette stratégie n'a, par défaut, aucune incidence sur les stratégies de niveau ordinateur et utilisateur. |
-e[xecution] {on | désactivé} |
Active ou désactive le mécanisme qui vérifie l'autorisation à mettre en œuvre avant que le code ne commence à s'exécuter.
Remarque
Ce commutateur est supprimé du .NET Framework 4 et des versions ultérieures.Pour plus d'informations, consultez Modifications de sécurité dans le .NET Framework 4.
|
-f[orce] |
Supprime le test d'autodestruction de l'outil et modifie la stratégie selon les instructions de l'utilisateur. Normalement, Caspol.exe vérifie si les changements de stratégie sont susceptibles de nuire à son exécution correcte. Le cas échéant, Caspol.exe n'enregistre pas la modification et imprime un message d'erreur. Pour obliger Caspol.exe à modifier la stratégie même si cela l'empêche de s'exécuter, utilisez l'option –force. |
-h[elp] |
Affiche la syntaxe de commande et les options de Caspol.exe. |
-l[ist] |
Affiche la hiérarchie des groupes de codes et les jeux d'autorisations définis pour l'ordinateur, l'utilisateur ou l'entreprise spécifiés ou pour tous les niveaux de stratégie. Caspol.exe affiche d'abord l'étiquette du groupe de codes, puis son nom s'il n'est pas nul. |
-listdescription ou -ld |
Affiche les descriptions de tous les groupes de codes définis pour le niveau de stratégie spécifié. |
-listfulltrust ou -lf |
Affiche le contenu de la liste des assemblys de confiance totale pour le niveau de stratégie spécifié. |
-listgroups ou -lg |
Affiche les groupes de codes du niveau de stratégie spécifié ou de tous les niveaux de stratégie. Caspol.exe affiche d'abord l'étiquette du groupe de codes, puis son nom s'il n'est pas nul. |
-listpset ou -lp |
Affiche les jeux d'autorisations associés au niveau de stratégie spécifié ou à tous les niveaux de stratégie. |
-m[achine] |
Indique que toutes les options qui suivent celle-ci s'appliquent à la stratégie de niveau ordinateur. Les utilisateurs qui ne sont pas des administrateurs ne bénéficient pas d'autorisations suffisantes pour modifier la stratégie de l'ordinateur, même s'ils peuvent l'afficher. Pour les administrateurs, -machine est l'option par défaut. |
-polchgprompt {on | désactivé} ou -pp {on | désactivé} |
Active ou désactive l'invite de commande qui s'affiche lorsque Caspol.exe est exécuté avec une option susceptible d'entraîner des changements de stratégie. |
-quiet ou -q |
Désactive temporairement l'invite normalement affichée pour une option entraînant des changements de stratégie. Le paramètre de l'invite de modification globale ne change pas. Utilisez l'option pour une seule commande à la fois afin d'éviter de désactiver l'invite pour toutes les commandes Caspol.exe. |
-r[ecover] |
Restaure une stratégie à partir d'un fichier de sauvegarde. Dès qu'une stratégie est modifiée, Caspol.exe stocke l'ancienne stratégie dans un fichier de sauvegarde. |
-remfulltrust assembly_file ou -rf assembly_file |
Supprime un assembly de la liste des assemblys de confiance totale associée à un niveau de stratégie donné. Cette opération s'impose lorsqu'un jeu d'autorisations contenant une autorisation personnalisée n'est plus utilisé par la stratégie. Toutefois, vous ne devez supprimer un assembly qui implémente une autorisation personnalisée de la liste des assemblys de confiance totale que si cet assembly n'implémente aucune autre autorisation personnalisée en cours d'utilisation. Lorsque vous supprimez un assembly de la liste, vous devez également supprimer les assemblys dont il dépend. |
-remgroup {label |name} ou -rg {label | name} |
Supprime le groupe de codes spécifié par son étiquette ou son nom. Si le groupe de codes spécifié comprend des groupes de codes enfants, Caspol.exe supprime également ces groupes enfants. |
-rempset pset_name ou -rp pset_name |
Supprime de la stratégie le jeu d'autorisations spécifié. L'argument pset_name indique le jeu d'autorisations à supprimer. Caspol.exe ne supprime le jeu d'autorisations que s'il n'est pas associé à un groupe de codes. Il n'est pas possible de supprimer les jeux d'autorisations par défaut (intégrés) ; pour plus d'informations, consultez Jeux d'autorisations nommés. |
-reset ou -rs |
Retourne l'état par défaut de la stratégie et l'enregistre sur le disque. Cette option est utile lorsqu'une stratégie modifiée semble irréparable et que vous souhaitez recommencer avec les paramètres d'installation par défaut. Il peut également être commode de procéder à une réinitialisation pour utiliser la stratégie par défaut comme point de départ et apporter ensuite des modifications à des fichiers de configuration de sécurité spécifiques. Pour plus d'informations, consultez Modification manuelle des fichiers de configuration de sécurité. |
-resetlockdown ou -rsld |
Retourne la version plus restrictive de l'état par défaut de la stratégie et l'enregistre sur le disque ; crée une sauvegarde de la stratégie antérieure de l'ordinateur et l'enregistre sur un fichier security.config.bac. La stratégie verrouillée est similaire à la stratégie par défaut, mais elle n'accorde aucune autorisation pour coder à partir des zones Local Intranet, Trusted Sites et Internet et les groupes de codes correspondants n'ont pas de groupes de codes enfants. |
-resolvegroup assembly_file ou -rsg assembly_file |
Affiche les groupes de codes auxquels appartient un assembly particulier (assembly_file). Par défaut, cette option affiche l'ordinateur, l'utilisateur et les niveaux de stratégie de sécurité auxquels appartient l'assembly. Pour visualiser un seul niveau de stratégie, utilisez cette option avec l'option -machine, -user ou -enterprise. |
-resolveperm assembly_file ou -rsp assembly_file |
Affiche toutes les autorisations que le niveau de stratégie de sécurité spécifié (ou par défaut) accorderait à l'assembly si ce dernier avait la possibilité de s'exécuter. L'argument assembly_file spécifie l'assembly. Si vous spécifiez l'option -all, Caspol.exe calcule les autorisations de l'assembly sur la base de la stratégie de l'utilisateur, de l'ordinateur et de l'entreprise ; sinon, les règles de comportement par défaut s'appliquent. |
-s[ecurity] {on | désactivé} |
Active ou désactive la sécurité d'accès du code. L'option -s off ne désactive pas la sécurité basée sur les rôles.
Remarque
Ce commutateur est supprimé du .NET Framework 4 et des versions ultérieures.Pour plus d'informations, consultez Modifications de sécurité dans le .NET Framework 4.
Attention
Lorsque la sécurité d'accès du code est désactivée, toutes les demandes d'accès au code aboutissent.La désactivation de la sécurité expose le système aux attaques de code nuisible tel que les virus et les vers.La désactivation de la sécurité permet d'améliorer les performances, mais ne doit être utilisée que lorsque d'autres mesures de sécurité ont été prises pour permettre de s'assurer que la sécurité globale du système ne sera pas compromise.Ces autres mesures de sécurité consistent notamment à déconnecter les réseaux publics, à sécuriser physiquement les ordinateurs, etc.
|
-u[ser] |
Indique que toutes les options qui suivent celle-ci s'appliquent à la stratégie de niveau utilisateur associée à l'utilisateur pour le compte duquel Caspol.exe est exécuté. Pour les utilisateurs qui ne sont pas des administrateurs, -user est l'option par défaut. |
-? |
Affiche la syntaxe de commande et les options de Caspol.exe. |
L'argument mship qui spécifie la condition d'appartenance pour un groupe de codes particulier peut être utilisé avec les options -addgroup et -chggroup. Chaque argument mship est implémenté en tant que classe .NET Framework. Pour spécifier mship, vous avez le choix entre les solutions suivantes.
Argument |
Description |
---|---|
-allcode |
Spécifie l'ensemble du code. Pour plus d'informations sur cette condition d'appartenance, consultez AllMembershipCondition, classe. |
-appdir |
Spécifie le répertoire de l'application. Si vous spécifiez –appdir comme condition d'appartenance, la preuve URL du code est comparée à la preuve fournie par le répertoire d'application. Si les deux preuves sont identiques, la condition d'appartenance est satisfaite. Pour plus d'informations sur cette condition d'appartenance, consultez ApplicationDirectoryMembershipCondition, classe. |
-custom xmlfile |
Ajoute une condition d'appartenance personnalisée. L'argument obligatoire xmlfile spécifie le fichier .xml qui contient la sérialisation SML de la condition d'appartenance personnalisée. |
-hashAlg de hachage{-hashValuehexa | -file assembly_file } |
Spécifie un code qui contient la valeur de hachage de l'assembly donné. Pour utiliser une valeur de hachage comme condition d'appartenance à un groupe de codes, vous devez spécifier la valeur de hachage ou le fichier de l'assembly. Pour plus d'informations sur cette condition d'appartenance, consultez HashMembershipCondition, classe. |
-pub { -cert cert_file_name || -file signed_file_name | -hex hex_string } |
Spécifie un code qui présente l'éditeur de logiciel indiqué par un fichier de certificat, une signature sur un fichier ou la représentation hexadécimale d'un certificat X509. Pour plus d'informations sur cette condition d'appartenance, consultez PublisherMembershipCondition, classe. |
-site website |
Spécifie un code qui présente le site d'origine donné. Par exemple : -site www.proseware.com Pour plus d'informations sur cette condition d'appartenance, consultez SiteMembershipCondition, classe. |
-strong -file file_name {name | -noname} {version | -noversion} |
Spécifie un code qui présente un nom fort désigné par son nom de fichier, le nom de l'assembly (chaîne) et la version de l'assembly au format major.minor.build.revision. Par exemple : -strong -file myAssembly.exe myAssembly 1.2.3.4 Pour plus d'informations sur cette condition d'appartenance, consultez StrongNameMembershipCondition, classe . |
-url URL |
Spécifie un code qui provient de l'URL donnée. L'URL doit contenir un protocole, tel que http:// ou ftp://. En outre, un caractère générique (*) peut être utilisé pour spécifier plusieurs assemblys pour une même URL.
Remarque
Parce qu'une URL peut être identifiée à l'aide de plusieurs noms, l'utilisation d'une URL comme condition d'appartenance n'est pas un moyen sûr d'établir l'identité du code.Lorsque cela est possible, utilisez une condition d'appartenance à nom fort, une condition d'appartenance d'un éditeur ou la condition d'appartenance de hachage.
Pour plus d'informations sur cette condition d'appartenance, consultez UrlMembershipCondition, classe. |
-zone zonename |
Spécifie un code qui présente la zone d'origine donnée. L'argument zonename peut avoir l'une des valeurs suivantes : MyComputer, Intranet, Trusted, Internet ou Untrusted. Pour plus d'informations sur cette condition d'appartenance, reportez-vous à la classe ZoneMembershipCondition. |
L'argument flags qui peut être utilisé avec les options –addgroup et –chggroup est spécifié comme suit.
Argument |
Description |
---|---|
-description "description" |
Si utilisé avec l'option –addgroup, spécifie la description d' un groupe de codes à ajouter. Si utilisé avec l'option –chggroup, spécifie la description d' un groupe de codes à modifier. L'argument description doit être entouré de guillemets doubles. |
-exclusive {on|désactivé} |
Lorsque cet argument a la valeur on, seul le jeu d'autorisations associé au groupe de codes que vous ajoutez ou modifiez est pris en compte dans le cas où un code satisfait à la condition d'appartenance du groupe de codes. Lorsque la valeur de cette option est off, Caspol.exe tient compte des jeux d'autorisations de tous les groupes de codes correspondants dans le niveau de stratégie considéré. |
- levelfinal {on|désactivé} |
Lorsque cette option a pour valeur on, aucun des niveaux de stratégie inférieurs au niveau du groupe de codes ajouté ou modifié n'est pris en compte. Cette option est généralement utilisée au niveau de la stratégie de l'ordinateur. Par exemple, si vous définissez cet indicateur pour un groupe de codes au niveau de l'ordinateur et qu'il existe un code satisfaisant à la condition d'appartenance de ce groupe de codes, Caspol.exe ne calcule pas (et n'applique pas) la stratégie de niveau utilisateur pour ce code. |
-name "name" |
Si utilisé avec l'option –addgroup, spécifie le nom de script d' un groupe de codes à ajouter. Si utilisé avec l'option –chggroup, spécifie le nom de script d' un groupe de codes à modifier. L'argument name doit être entouré de guillemets doubles. Par ailleurs, l'argument name ne doit pas commencer par un chiffre et ne peut contenir que les lettres A à Z, les chiffres 0 à 9 et le caractère de soulignement. Il est possible de faire référence aux groupes de codes par cet argument name au lieu d'utiliser leur étiquette numérique. L'argument name est également précieux dans les scripts. |
Notes
La stratégie de sécurité se définit sur trois niveaux : ordinateur, utilisateur et entreprise. Le jeu d'autorisations dont bénéficie un assembly est déterminé par l'intersection entre les jeux d'autorisations accordés par ces trois niveaux de stratégie. Chaque niveau de stratégie est représenté par une structure hiérarchique de groupes de codes. Chaque groupe de codes possède une condition d'appartenance qui détermine quel code est membre de ce groupe. Un jeu d'autorisations nommé est également associé à chaque groupe de codes. Ce jeu d'autorisations spécifie les autorisations que peut accorder le runtime au code qui satisfait à la condition d'appartenance. Une hiérarchie de groupes de codes et les jeux d'autorisations nommés associés définissent et gèrent chaque niveau de la stratégie de sécurité. Vous pouvez utiliser les options –user, -customuser, –machine et -enterprise pour définir le niveau de stratégie de sécurité.
Pour plus d'informations sur les stratégies de sécurité et sur la manière dont le runtime détermine les autorisations à accorder au code, consultez Gestion de la stratégie de sécurité.
Références aux groupes de codes et aux jeux d'autorisations
Pour faciliter les renvois aux groupes de codes d'une hiérarchie, l'option -list affiche une liste des groupes de codes avec des retraits et les étiquettes numériques correspondantes (1, 1.1, 1.1.1, etc.). Les autres opérations effectuées depuis la ligne de commande qui ciblent les groupes de codes utilisent également les étiquettes numériques pour faire référence à des groupes de codes particuliers.
Les jeux d'autorisations nommés sont identifiés par leur nom. L'option –list affiche la liste des groupes de codes suivie d'une liste des jeux d'autorisations nommés disponibles dans la stratégie considérée. Pour obtenir la liste et la description des jeux d'autorisations intégrés que fournit le runtime, consultez Jeux d'autorisations nommés.
Comportement de Caspol.exe
Toutes les options sauf - s[écurité] {sur | off} utilisez la version .NET Framework avec laquelle Caspol.exe a été installé. Si vous exécutez la version de Caspol.exe installée avec la version X du runtime, les modifications s'appliquent uniquement à cette version. Les autres installations côte à côte du runtime, si elles existent, ne sont pas affectées. Si vous exécutez Caspol.exe à partir de la ligne de commande sans être dans un répertoire d'une version spécifique du runtime, l'outil est exécuté à partir du premier répertoire de version du runtime du chemin (généralement la version la plus récente du runtime installée).
-s[ecurity] {on | L'option off} est une opération à l'échelle de l'ordinateur. La désactivation de la sécurité d'accès du code met fin aux contrôles de sécurité pour tout le code managé et tous les utilisateurs sur l'ordinateur. Si des versions côte à côte de .NET Framework sont installées, cette commande désactive la sécurité pour chaque version installée sur l'ordinateur. Bien que l'option -list indique que la sécurité est désactivée, rien d'autre ne l'indique clairement aux autres utilisateurs.
Lorsqu'un utilisateur dépourvu de droits d'administration exécute Caspol.exe, toutes les options concernent la stratégie de niveau utilisateur, sauf si l'option –machine est spécifiée. Lorsqu'un administrateur exécute Caspol.exe, toutes les options concernent la stratégie de niveau ordinateur, sauf si l'option –user est spécifiée.
Pour fonctionner, Caspol.exe doit bénéficier d'une autorisation équivalente à Everything. Cet outil est muni d'un mécanisme de protection qui interdit toute modification de stratégie susceptible d'empêcher l'octroi des autorisations indispensables à l'exécution de Caspol.exe. Si vous essayez d'effectuer de telles modifications, Caspol.exe vous envoie une notification indiquant que la modification de stratégie demandée détruit l'objet et qu'elle est par conséquent refusée. Vous pouvez désactiver ce mécanisme de protection à l'aide de l'option –force.
Modification manuelle des fichiers de configuration de sécurité
Il existe trois fichiers de configuration de sécurité qui correspondent aux trois niveaux de sécurité pris en charge par Caspol.exe : ordinateur, utilisateur et entreprise. Ces fichiers sont créés uniquement sur le disque lorsque la stratégie de l'ordinateur, de l'utilisateur ou de l'entreprise est modifiée à l'aide de Caspol.exe. Vous pouvez utiliser l'option –reset de Caspol.exe pour enregistrer la stratégie de sécurité par défaut sur le disque, si nécessaire.
Dans la plupart des cas, il n'est pas recommandé de modifier manuellement les fichiers de configuration de sécurité. Il existe cependant des situations où ces modifications sont indispensables, par exemple lorsqu'un administrateur veut modifier la configuration de sécurité d'un utilisateur particulier.
Exemples
-addfulltrust
Supposez qu'un jeu d'autorisations contenant une autorisation personnalisée a été ajouté à la stratégie de l'ordinateur. Cette autorisation personnalisée est implémentée dans MyPerm.exe, et MyPerm.exe fait référence aux classes de MyOther.exe. Les deux assemblys doivent être ajoutés à la liste des assemblys de confiance totale. La commande suivante ajoute l'assembly MyPerm.exe à la liste des assemblys de confiance totale pour la stratégie de l'ordinateur.
caspol -machine -addfulltrust MyPerm.exe
La commande suivante ajoute l'assembly MyOther.exe à la liste des assemblys de confiance totale pour la stratégie de l'ordinateur.
caspol -machine -addfulltrust MyOther.exe
-addgroup
La commande suivante ajoute un groupe de codes enfant à la racine de la hiérarchie des groupes de codes de la stratégie de l'ordinateur. Le nouveau groupe de codes est membre de la zone Internet et il est associé au jeu d'autorisations Execution.
caspol -machine -addgroup 1. -zone Internet Execution
La commande suivante ajoute un groupe de codes enfant qui donne des autorisations Intranet local au partage \\netserver\netshare.
caspol -machine -addgroup 1. -url \\netserver\netshare\* LocalIntranet
-addpset
La commande suivante ajoute le jeu d'autorisations Mypset à la stratégie de l'utilisateur.
caspol -user -addpset Mypset.xml Mypset
-chggroup
La commande suivante modifie le jeu d'autorisations du groupe de codes étiqueté 1.2 dans la stratégie d'utilisateur. au jeu d'autorisations Exécution.
caspol -user -chggroup 1.2. Execution
La commande suivante modifie la condition d'appartenance du groupe de codes étiqueté 1.2.1 dans la stratégie par défaut. et modifie le paramètre de l'indicateur exclusif. La condition d'appartenance est définie comme un code qui provient de la zone Internet avec l'indicateur exclusive activé.
caspol -chggroup 1.2.1. -zone Internet -exclusive on
-chgpset
La commande suivante substitue au jeu d'autorisations Mypset le jeu d'autorisations contenu dans newpset.xml. Notez que la version actuelle ne prend pas en charge la modification des jeux d'autorisations utilisés par la hiérarchie des groupes de codes.
caspol -chgpset Mypset newpset.xml
-force
La commande suivante provoque l'association du groupe de codes racine de la stratégie de l'utilisateur (étiqueté 1) au jeu d'autorisations nommé Nothing. Cela empêche l'exécution de Caspol.exe.
caspol -force -user -chggroup 1 Nothing
-recover
La commande suivante récupère la stratégie d'ordinateur enregistrée le plus récemment.
caspol -machine -recover
-remgroup
La commande suivante supprime le groupe de codes étiqueté 1.1. Si ce groupe de codes comprend des groupes de codes enfants, ces derniers sont également supprimés.
caspol -remgroup 1.1.
-rempset
La commande suivante supprime le jeu d'autorisations Execution de la stratégie d'utilisateur.
caspol -user -rempset Execution
La commande suivante supprime Mypset du niveau de stratégie de l'utilisateur.
caspol -rempset MyPset
-resolvegroup
La commande suivante affiche tous les groupes de codes de la stratégie d'ordinateur à laquelle appartient myassembly .
caspol -machine -resolvegroup myassembly
La commande suivante affiche tous les groupes de codes de la stratégie d'ordinateur, d'entreprise et d'utilisateur personnalisé à laquelle appartient myassembly.
caspol -customall "c:\config_test\security.config" -resolvegroup myassembly
-resolveperm
La commande suivante calcule les autorisations de testassembly en fonction des niveaux de stratégie d'ordinateur et d'utilisateur.
caspol -all -resolveperm testassembly
Voir aussi
Référence
Invites de commandes Visual Studio e t Kit de développement logiciel (SDK) Windows
Autres ressources
Gestion de la stratégie de sécurité
Historique des modifications
Date |
Historique |
Motif |
---|---|---|
Avril 2011 |
Informations supplémentaires sur l'utilisation des invites de commandes de Visual Studio et du Kit de développement logiciel (SDK) Windows. |
Améliorations apportées aux informations. |
Août 2010 |
A ajouté des informations sur la version 64 bits de Caspol.exe. |
Améliorations apportées aux informations. |
Août 2010 |
A corrigé la syntaxe dans le dernier exemple. |
Commentaires client. |