Caspol.exe (Herramienta de la directiva de seguridad de acceso del código)

La herramienta Directiva de seguridad de acceso del código (Caspol.exe) permite a los usuarios y administradores modificar las directivas de seguridad correspondientes a los niveles de equipo, usuario y empresa.

Nota importanteImportante

En .NET Framework versión 4 y las versiones posteriores, Caspol.exe no afecta a la directiva CAS, a menos que el elemento <legacyCasPolicy> esté establecido en true.Para obtener más información, vea Cambios de seguridad en .NET Framework 4.

NotaNota

Los equipos de 64 bits incluyen las versiones de 64 y 32 bits de la directiva de seguridad.Para asegurarse de que los cambios de directiva son aplicables tanto para aplicaciones de 32 como de 64 bits, ejecute la versión de 32 bits de Caspol.exe mediante el Símbolo del sistema de Visual Studio y la versión de 64 bits mediante el Símbolo del sistema de x64 Win64 para Visual Studio.

Esta herramienta se instala automáticamente con Visual Studio y con el SDK de Windows. Para ejecutar la herramienta, se recomienda usar el símbolo del sistema de Visual Studio o del SDK de Windows (shell de CMD). Estas utilidades permiten ejecutar la herramienta fácilmente, sin navegar a la carpeta de instalación. Para obtener más información, vea Símbolos del sistema del SDK de Windows y Visual Studio.

  • Si tiene instalado Visual Studio en el equipo: en la barra de tareas, haga clic en Start, All Programs, Visual Studio y Visual Studio Tools y, a continuación, haga clic en Visual Studio Command Prompt.

    O bien

    Si tiene el SDK de Windows instalado en el equipo: en la barra de tareas, haga clic en Start, All Programs, haga clic en la carpeta del SDK de Windows y, a continuación, haga clic en Command Prompt (o CMD Shell).

  • En el símbolo del sistema, escriba:

caspol [options]

Parámetros

Opción

Descripción

-addfulltrust assembly_file

o

-af assembly_file

Agrega un ensamblado que implementa un objeto de seguridad personalizado (como un permiso personalizado o una condición de pertenencia personalizada) a la lista de ensamblados de plena confianza para un nivel de directiva específico. El argumento assembly_file especifica el ensamblado que se va a agregar. Este archivo debe estar firmado con un nombre seguro. Puede firmar un ensamblado con un nombre seguro mediante la Herramienta de nombre seguro (Sn.exe).

Cada vez que se agrega a la directiva un conjunto de permisos que contiene un permiso personalizado, se debe agregar el ensamblado que implementa el permiso personalizado a la lista de plena confianza para dicho nivel de directiva. Los ensamblados que implementan objetos de seguridad personalizados (como grupos de código personalizados o condiciones de pertenencia personalizadas) que se utilizan en una directiva de seguridad (como la directiva de equipo) siempre deben agregarse a la lista de ensamblados de plena confianza.

Nota de precauciónPrecaución
Si el ensamblado que implementa el objeto de seguridad personalizado hace referencia a otros ensamblados, debe agregar primero los ensamblados a los que se hace referencia a la lista de ensamblados de plena confianza.Los objetos de seguridad personalizados creados con Visual Basic, C++ y JScript hacen referencia a Microsoft.VisualBasic.dll, Microsoft.VisualC.dll o Microsoft.JScript.dll, respectivamente.Estos ensamblados no se encuentran en la lista de ensamblados de plena confianza de forma predeterminada.Debe agregar el ensamblado adecuado a la lista de plena confianza antes de agregar un objeto de seguridad personalizado.Si se produce un error al realizar esta operación, el sistema de seguridad se interrumpirá y los ensamblados no se cargarán.En caso de que se produzca esta situación, la opción -all -reset de la herramienta Caspol.exe no reparará la seguridad.Para reparar la seguridad, debe editar manualmente los archivos de seguridad a fin de quitar el objeto de seguridad personalizado.

-addgroup {parent_label | parent_name} mship pset_name [flags]

o

-ag {parent_label | parent_name} mship pset_name [flags]

Agrega un grupo de código nuevo a la jerarquía de grupos de código. Se puede especificar el argumento parent_label o el argumento parent_name. El argumento parent_label especifica la etiqueta (por ejemplo, 1. o 1.1.) del grupo de código que es el elemento primario del grupo de código que se agrega. El argumento parent_name especifica el nombre del grupo de código que es el elemento primario del grupo de código que se está agregando. Dado que los argumentos parent_label y parent_name se pueden utilizar indistintamente, Caspol.exe debe poder distinguir entre ellos. Por tanto, el argumento parent_name no puede empezar con un número. Además, este argumento solo puede contener caracteres de A a Z, de 0 a 9 y de subrayado.

El argumento mship especifica la condición de pertenencia para el grupo de código nuevo. Para obtener más información, vea la tabla de los argumentos de mship más adelante en esta sección.

El argumento pset_name es el nombre del conjunto de permisos que se asociará al grupo de código nuevo. También se pueden establecer uno o más argumentos flags para el grupo nuevo. Para obtener más información, vea la tabla de los argumentos flags más adelante en esta sección.

-addpset {psfile | psfile pset_name}

o

-ap {named_psfile | psfile pset_name}

Agrega un nuevo conjunto de permisos con nombre a la directiva. El conjunto de permisos se debe crear en XML y almacenar en un archivo .xml. Si el archivo XML contiene el nombre del conjunto de permisos, sólo se especifica dicho archivo (archivo_xml). Si el archivo XML no contiene el nombre del conjunto de permisos, se debe especificar tanto el nombre del archivo XML (psfile). como el nombre del conjunto de permisos (pset_name).

Observe que todos los permisos utilizados en un conjunto de permisos se deben definir en ensamblados contenidos en la caché global de ensamblados.

-a[ll]

Indica que todas las opciones que siguen a ésta se aplican a las directivas de equipo, usuario y empresa. La opción -all siempre hace referencia a la directiva del usuario actual que inició la sesión. Vea la opción -customall para hacer referencia a la directiva de un usuario distinto del usuario actual.

-chggroup {label |name} {mship | pset_name |

flags}

o

-cg {label |name} {mship | pset_name |

flags}

Cambia en un grupo de código la condición de pertenencia, el conjunto de permisos o la configuración de los marcadores exclusive, levelfinal, name o description. Puede especificar etiqueta o nombre. El argumento label especifica la etiqueta (por ejemplo, 1. ó 1.1.) del grupo de código. El argumento name especifica el nombre del grupo de código que se va a cambiar. Dado que los argumentos label y name se pueden utilizar indistintamente, Caspol.exe debe poder distinguir entre ellos. Por tanto, el argumento name no puede empezar con un número. Además, este argumento solo puede contener caracteres de A a Z, de 0 a 9 y de subrayado.

El argumento pset_name especifica el nombre del conjunto de permisos que se asocia al grupo de código. Vea las tablas que figuran más adelante en esta sección para obtener información sobre los argumentos mship y flags.

-chgpset psfile pset_name

o

-cp psfile pset_name

Cambia un conjunto de permisos con nombre. El argumento psfile proporciona la definición nueva para el conjunto de permisos; es un archivo serializado de conjunto de permisos en formato XML. El argumento pset_name especifica el nombre del conjunto de permisos que se desea cambiar.

-customall rutaAcceso

o

-ca rutaAcceso

Indica que todas las opciones que siguen a ésta se aplican a las directivas de equipo, de empresa y de usuario personalizado especificado. Se debe especificar la ubicación del archivo de configuración de seguridad de usuario personalizado con el argumento path.

-cu[stomuser] path

Permite la administración de una directiva de usuario personalizado que no pertenece al usuario en cuyo nombre se está ejecutando actualmente la herramienta Caspol.exe. Se debe especificar la ubicación del archivo de configuración de seguridad de usuario personalizado con el argumento path.

-enterprise

o

-en

Indica que todas las opciones que siguen a ésta se aplican a la directiva con nivel de empresa. Los usuarios que no son administradores de empresa no tienen los permisos suficientes para modificar la directiva de empresa, aunque pueden verla. En escenarios distintos del de empresa, la opción predeterminada es que esta directiva no interfiera con las directivas de equipo y de usuario.

-e[xecution] {on | off}

Activa o desactiva el mecanismo que comprueba que el permiso se ejecuta antes de iniciarse la ejecución del código.

NotaNota
Este modificador ya no existe en .NET Framework 4 ni en las versiones posteriores.Para obtener más información, vea Cambios de seguridad en .NET Framework 4.

-f[orce]

Suprime la prueba de autodestrucción de la herramienta y cambia la directiva de acuerdo con lo especificado por el usuario. Normalmente, Caspol.exe comprueba si los cambios efectuados a una directiva impiden su ejecución correcta; en caso afirmativo, esta herramienta no guarda el cambio de la directiva e imprime un mensaje de error. Para obligar a que Caspol.exe cambie la directiva aunque esto impida su ejecución, se debe utilizar la opción –force.

-h[elp]

Muestra la sintaxis de comandos y opciones para Caspol.exe.

-l[ist]

Enumera la jerarquía de grupos de código y los conjuntos de permisos para el nivel de directiva de equipo, usuario y empresa especificado, o para todos los niveles de directiva. Caspol.exe muestra primero la etiqueta de grupo de código, seguida del nombre, si el valor no es nulo.

-listdescription

o

-ld

Enumera todas las descripciones de grupos de código para el nivel de directiva especificado.

-listfulltrust

o

-lf

Enumera el contenido de la lista de ensamblados de plena confianza para el nivel de directiva especificado.

-listgroups

o

-lg

Muestra los grupos de código para el nivel de directiva especificado o para todos los niveles de directiva. Caspol.exe muestra primero la etiqueta de grupo de código, seguida del nombre, si el valor no es nulo.

-listpset o -lp

Muestra los conjuntos de permisos para el nivel de directiva especificado o para todos los niveles de directiva.

-m[achine]

Indica que todas las opciones que siguen a ésta se aplican a la directiva con nivel de equipo. Los usuarios que no son administradores no tienen los permisos suficientes para modificar la directiva de equipo, aunque pueden verla. Para los administradores, -machine es la opción predeterminada.

-polchgprompt {on | off}

o

-pp {on | off}

Habilita o deshabilita la indicación que se muestra cada vez que Caspol.exe se ejecuta utilizando una opción que originaría cambios en la directiva.

-quiet

o

-q

Deshabilita temporalmente el símbolo del sistema que se muestra normalmente para una opción que ocasiona cambios de directiva. No cambia la configuración global del símbolo del sistema. Use la opción únicamente en un solo comando para evitar que el símbolo del sistema se deshabilite para todos los comandos de Caspol.exe.

-r[ecover]

Recupera la directiva de un archivo de copia de seguridad. Cada vez que se efectúa un cambio en una directiva, Caspol.exe almacena la directiva antigua en un archivo de copia de seguridad.

-addfulltrust assembly_file

o

-rf assembly_file

Quita un ensamblado de la lista de plena confianza para un nivel de directiva. Esta operación se debe realizar si un conjunto de permisos que contiene un permiso personalizado deja de ser utilizado por la directiva. No obstante, se debe quitar de la lista de plena confianza un ensamblado que implementa un permiso personalizado sólo si el ensamblado no implementa ningún otro permiso personalizado que se esté utilizando todavía. Cuando se quita un ensamblado de la lista, también se deben quitar los ensamblados de los que depende.

-remgroup {label |name}

o

-rg {label | name}

Quita el grupo de código especificado por su etiqueta o su nombre. Si el grupo de código especificado tiene grupos de código secundarios, Caspol.exe quita también todos los grupos de código secundarios.

-rempset pset_name

o

-rp pset_name

Quita de la directiva el conjunto de permisos especificado. El argumento nombre_conjunto_permisos indica el conjunto de permisos que se quita. Caspol.exe quita el conjunto de permisos sólo si no está asociado a un grupo de código. Los conjuntos de permisos predeterminados (integrados) no se pueden quitar; para obtener detalles, vea Conjuntos de permisos con nombre.

-reset

o

-rs

Devuelve la directiva a su estado predeterminado y la conserva en disco. Esta opción es útil si se sospecha que una directiva modificada supera los límites de reparación y se desea empezar de nuevo con los valores predeterminados de instalación. La acción de restablecer también puede ser conveniente si se desea utilizar la directiva predeterminada como punto de partida para las modificaciones en archivos de configuración de seguridad específicos. Para obtener más información, vea Editar manualmente los archivos de configuración de seguridad.

-resetlockdown

o

-rsld

Devuelve la directiva a una versión más restrictiva del estado predeterminado y la guarda en el disco; crea una copia de seguridad de la directiva de equipo anterior y la guarda en un archivo denominado security.config.bac. La directiva de bloqueo es parecida a la predeterminada, salvo que la directiva no otorga permisos al código de las zonas Local Intranet, Trusted Sites, y Internet y los grupos de códigos correspondientes no tiene grupos de códigos secundarios.

-resolvegroup assembly_file

o

-rsg assembly_file

Muestra los grupos de código a los que pertenece un ensamblado específico (nombre_de_ensamblado). De manera predeterminada, esta opción muestra los niveles de directiva del equipo, usuario y empresa a los que pertenece el ensamblado. Para ver sólo un nivel de directiva, utilice esta opción con la opción -machine, -user o -enterprise.

-resolveperm assembly_file

o

-rsp assembly_file

Muestra todos los permisos que el nivel especificado (o predeterminado) de directiva de seguridad concedería al ensamblado si este obtuviera permiso de ejecución. El argumento nombre_de_ensamblado especifica el ensamblado. Si se especifica la opción -all, Caspol.exe calcula los permisos para el ensamblado basándose en la directiva de usuario, equipo y empresa; en su defecto, se aplican las reglas de comportamiento predeterminado.

-s[ecurity] {on | off}

Activa o desactiva la seguridad de acceso a código. Si se especifica la opción -s off, la seguridad basada en funciones no se deshabilita.

NotaNota
Este modificador ya no existe en .NET Framework 4 ni en las versiones posteriores.Para obtener más información, vea Cambios de seguridad en .NET Framework 4.
Nota de precauciónPrecaución
Cuando la seguridad de acceso a código está deshabilitada, todas las peticiones de acceso al código se realizan correctamente.El hecho de deshabilitar la seguridad de acceso a código hace que el sistema sea vulnerable a ataques por parte de código malintencionado, como virus y gusanos.Desactivar la seguridad es una operación que permite ganar algo de rendimiento adicional, pero sólo debe realizarse si se han tomado otras medidas de seguridad para ayudar a asegurar que la seguridad del sistema en conjunto no se ponga en peligro.Desconectarse de las redes públicas, proteger los equipos físicamente, etc. constituyen otros ejemplos de precauciones de seguridad.

-u[ser]

Indica que todas las opciones que siguen a ésta se aplican a la directiva con nivel de usuario para el usuario en cuyo nombre se ejecuta Caspol.exe. Para usuarios no administradores, -user es la opción predeterminada.

-?

Muestra la sintaxis de comandos y opciones para Caspol.exe.

El argumento pertenencia, que especifica la condición de pertenencia para un grupo de código, se puede utilizar con las opciones -addgroup y -chggroup. Cada argumento pertenencia se implementa como una clase de .NET Framework. Para especificar el argumento pertenencia, se debe utilizar uno de los siguientes elementos.

Argumento

Descripción

-allcode

Especifica todo el código. Para obtener más información acerca de esta condición de pertenencia, vea AllMembershipCondition (Clase).

-appdir

Especifica el directorio de la aplicación. Si se especifica –appdir como condición de pertenencia, la evidencia de dirección URL de código se compara con la evidencia de directorio de aplicación de dicho código. Si ambos valores de evidencia coinciden, se satisface esta condición de pertenencia. Para obtener más información acerca de esta condición de pertenencia, vea ApplicationDirectoryMembershipCondition (Clase).

-custom archivo_xml

Agrega una condición de pertenencia personalizada. El argumento archivo_xml obligatorio especifica el archivo .xml que contiene serialización en formato XML de la condición de pertenencia personalizada.

-hash hashAlg {-hex hashValue | -file assembly_file }

Especifica código que tiene el hash de ensamblado dado. Para utilizar un hash como condición de pertenencia de grupo de código, se debe especificar el valor de hash o el archivo de ensamblado. Para obtener más información acerca de esta condición de pertenencia, vea HashMembershipCondition (Clase).

-pub { -cert cert_file_name ||

-file signed_file_name | -hex hex_string }

Especifica código que tiene la compañía de software dada, indicado por un archivo de certificados, una firma en un archivo o la representación hexadecimal de un certificado X509. Para obtener más información acerca de esta condición de pertenencia, vea PublisherMembershipCondition (Clase).

-site website

Especifica código que tiene el sitio de origen dado. Por ejemplo:

-site www.proseware.com

Para obtener más información acerca de esta condición de pertenencia, vea SiteMembershipCondition (Clase).

-strong -file file_name {name | -sinnombre} {versión | -noversion}

Especifica código que tiene un nombre seguro específico, indicado por el nombre de archivo, el nombre de ensamblado en forma de cadena y la versión de ensamblado en formato Principal.Secundario.Compilación.Revisión. Por ejemplo:

-strong -file myAssembly.exe myAssembly 1.2.3.4.

Para obtener más información acerca de esta condición de pertenencia, vea StrongNameMembershipCondition (Clase).

-url URL

Especifica código que se origina en la dirección URL dada. La dirección URL debe incluir un protocolo, como http:// o ftp://. Además, puede utilizarse un carácter comodín (*) para especificar varios ensamblados desde una dirección URL en particular.

NotaNota
Dado que una dirección URL puede identificarse mediante el uso de varios nombres, el uso de una dirección URL como condición de pertenencia no es una forma segura de confirmar la identidad del código.Siempre que pueda, utilice una condición de pertenencia consistente en un nombre seguro, en una compañía de software o en un hash.

Para obtener más información acerca de esta condición de pertenencia, vea UrlMembershipCondition (Clase).

-zone zonename

Especifica código con la zona de origen dada. El argumento zonename puede ser uno de los valores siguientes: MyComputer, Intranet, Trusted, Internet o Untrusted. Para obtener más información acerca de esta condición de pertenencia, vea la clase ZoneMembershipCondition.

El argumento flags, que se puede utilizar con las opciones –addgroup y –chggroup, se especifica utilizando uno de los siguientes.

Argumento

Descripción

-description "descripción"

Si se usa con la opción –addgroup, especifica la descripción del grupo de código que se va a agregar. Si se usa con la opción –chggroup, especifica la descripción del grupo de código que se va a modificar. El argumento description debe ir entre comillas.

-exclusive {on|off}

Cuando esta opción se establece en on, indica que sólo se considera el conjunto de permisos asociado al grupo de código que se está agregando o modificando cuando una parte de código satisface la condición de pertenencia del grupo de código. Cuando esta opción se establece en off, Caspol.exe tiene en cuenta los conjuntos de permisos de todos los grupos de código coincidentes en el nivel de directiva.

-levelfinal {on|off}

Cuando esta opción se establece en on, indica que no se tiene en cuenta ningún nivel de directiva por debajo del nivel en que está el grupo de código agregado o modificado. Esta opción se utiliza normalmente en el nivel de directiva de equipo. Por ejemplo, si se establece este marcador para un grupo de código en el nivel de equipo y una parte de código satisface esta condición de pertenencia de grupo de código, Caspol.exe no calcula ni aplica la directiva con nivel de usuario para este código.

-name "name"

Si se usa con la opción –addgroup, especifica el nombre de scripting del grupo de código que se va a agregar. Si se usa con la opción -chggroup, especifica el nombre de scripting del grupo de código que se va a modificar. El argumento nombre debe ir entre comillas. El argumento nombre no puede empezar con un número y sólo puede contener caracteres de A a Z, de 0 a 9 y de subrayado. Se puede hacer referencia a los grupos de código utilizando el argumento nombre en lugar de su etiqueta numérica. El argumento nombre también es muy útil en materia de scripting.

Comentarios

La directiva de seguridad se expresa utilizando tres niveles: equipo, usuario y empresa. El conjunto de permisos que recibe un ensamblado está determinado por la intersección de los conjuntos de permisos permitidos por estos tres niveles de directiva. Cada nivel está representado por una estructura jerárquica de grupos de código. Cada grupo de código tiene una condición de pertenencia que determina qué código es miembro de ese grupo. Asimismo, cada grupo de código tiene asociado un conjunto de permisos con nombre. Este conjunto de permisos especifica los permisos que el motor en tiempo de ejecución permite que tenga el código que satisface la condición de pertenencia. Una jerarquía de grupos de código, junto con sus conjuntos de permisos con nombre asociados, define y conserva cada nivel de directiva de seguridad. Se pueden utilizar las opciones –user, -customuser, –machine y -enterprise para establecer el nivel de directiva de seguridad.

Para obtener más información sobre directiva de seguridad y cómo el motor en tiempo de ejecución determina qué permisos se conceden al código, vea Administración de directivas de seguridad.

Hacer referencia a grupos de código y conjuntos de permisos

Para facilitar las referencias a grupos de código en una jerarquía, la opción -list muestra una lista de grupos de código con sangría junto con sus etiquetas numéricas (1, 1.1, 1.1.1, etc.). Las demás operaciones de línea de comandos orientadas a grupos de código también utilizan etiquetas numéricas para hacer referencia a grupos de código específicos.

La referencia a los conjuntos de permisos con nombre se hace utilizando sus nombres. La opción –list muestra la lista de grupos de código seguida de una lista de conjuntos de permisos con nombre disponibles en esa directiva. Si desea una lista y descripciones de los conjuntos de permisos integrados que proporciona el motor en tiempo de ejecución, vea Conjuntos de permisos con nombre.

Comportamiento de Caspol.exe

Todas las opciones excepto - s[ecurity] {on | off} utiliza la versión de .NET Framework con la que se instaló Caspol.exe. Si se ejecuta la herramienta Caspol.exe que se instaló con la versión X del motor en tiempo de ejecución, los cambios sólo afectan a dicha versión. Si hay otras instalaciones en paralelo del motor en tiempo de ejecución, no se ven afectadas. Si ejecuta Caspol.exe desde la línea de comandos sin estar en un directorio para una versión del motor en tiempo de ejecución específica, la herramienta se ejecuta desde el primer directorio de versión de motor en tiempo de ejecución existente en la ruta de acceso (normalmente la última versión instalada del motor en tiempo de ejecución).

-s[ecurity] {on | La opción off es una operación que afecta a todo el equipo. Al desactivar la seguridad de acceso a código se pone fin a las comprobaciones de seguridad de todo el código administrado y de todos los usuarios del equipo. Si se instalan en paralelo varias versiones de .NET Framework, este comando desactiva la seguridad de todas las versiones instaladas en el equipo. Aunque la opción -list muestra que la seguridad está desactivada, no hay ningún otro indicio que indique claramente este hecho a otros usuarios.

Cuando un usuario sin permisos administrativos ejecuta Caspol.exe, todas las opciones hacen referencia a la directiva con nivel de usuario, salvo que se especifique la opción –machine. Cuando un administrador ejecuta Caspol.exe, todas las opciones hacen referencia a la directiva con nivel de equipo, salvo que se especifique la opción –user.

Caspol.exe debe tener concedido el equivalente del conjunto de permisos Everything para su funcionamiento. La herramienta tiene un mecanismo de protección que impide que la directiva se modifique de modo que no se puedan conceder a Caspol.exe los permisos que necesita para la ejecución. Si se intenta efectuar algún cambio de ese tipo, Caspol.exe notifica que el cambio en cuestión solicitado bloqueará la herramienta, y se rechaza. Este mecanismo de protección se puede desactivar para un comando determinado utilizando la opción –force.

Editar manualmente los archivos de configuración de seguridad

Tres archivos de configuración de seguridad se corresponden con los tres niveles de directiva admitidos por Caspol.exe: uno para la directiva de equipo, otro para la directiva de un usuario dado, y un tercero para la directiva de empresa. Estos archivos se crean únicamente en el disco cuando se modifica la directiva de equipo, usuario o empresa mediante Caspol.exe. Se puede usar la opción –reset de Caspol.exe para guardar la directiva de seguridad predeterminada en el disco si es necesario.

En la mayoría de los casos, no es recomendable editar manualmente los archivos de configuración de seguridad. Pero puede haber escenarios en que sea necesaria la modificación de estos archivos, como cuando un administrador desea editar la configuración de seguridad para un usuario concreto.

Ejemplos

-addfulltrust

Suponga que se ha agregado a la directiva de equipo un conjunto de permisos que contiene un permiso personalizado. Este permiso personalizado se implementa en MyPerm.exe y MyPerm.exe hace referencia a clases de MyOther.exe. Ambos ensamblados de deben agregar a la lista de ensamblados plena confianza. El comando siguiente agrega el ensamblado MyPerm.exe a la lista de plena confianza de la directiva de equipo.

caspol -machine -addfulltrust MyPerm.exe

El comando siguiente agrega el ensamblado MyOther.exe a la lista de plena confianza de la directiva de equipo.

caspol -machine -addfulltrust MyOther.exe

-addgroup

El comando siguiente agrega un grupo de código secundario a la raíz de la jerarquía de grupos de código de directiva de equipo. El grupo de código nuevo es miembro de la zona Internet y está asociado al conjunto de permisos Execution.

caspol -machine -addgroup 1.  -zone Internet Execution

El siguiente comando agrega un grupo de código secundario que concede al recurso compartido \\netserver\netshare permisos de intranet local.

caspol -machine -addgroup 1. -url \\netserver\netshare\* LocalIntranet

-addpset

El comando siguiente agrega el conjunto de permisos Mypset a la directiva de usuario.

caspol -user -addpset Mypset.xml Mypset

-chggroup

El comando siguiente cambia el conjunto de permisos establecido en la directiva de usuario del grupo de código con la etiqueta 1.2. en el conjunto de permisos Ejecución.

caspol -user -chggroup 1.2. Execution

Con el comando siguiente se cambia la condición de pertenencia en la directiva predeterminada del grupo de código con la etiqueta 1.2.1. y cambia el valor de la marca exclusive. La condición de pertenencia se define de modo que sea código que se origina en la zona Internet y el marcador exclusive esté activado.

caspol -chggroup 1.2.1. -zone Internet -exclusive on

-chgpset

El comando siguiente cambia el conjunto de permisos con nombre Mypset en el conjunto de permisos contenido en newpset.xml. Observe que la versión actual no admite cambiar conjuntos de permisos que esté utilizando la jerarquía de grupos de código.

caspol -chgpset Mypset newpset.xml

-force

El comando siguiente hace que el grupo de código raíz de la directiva de usuario (con etiqueta numérica 1) se asocie al conjunto de permisos denominado Nothing. Esto impide la ejecución de Caspol.exe.

caspol -force -user -chggroup 1 Nothing

-recover

El comando siguiente recupera la última directiva de equipo guardada.

caspol -machine -recover

-remgroup

El comando siguiente quita el grupo de código con la etiqueta numérica 1.1. Si este grupo de código tiene grupos de código secundarios, estos también se eliminan.

caspol -remgroup 1.1.

-rempset

El comando siguiente quita el conjunto de permisos Execution de la directiva de usuario.

caspol -user -rempset Execution

El comando siguiente quita Mypset del nivel de directiva de usuario.

caspol -rempset MyPset

-resolvegroup

El comando siguiente muestra todos los grupos de código de la directiva de equipo a que pertenece myassembly .

caspol -machine -resolvegroup myassembly

El comando siguiente muestra todos los grupos de código de las directivas de equipo, empresa y usuario personalizado especificado a que pertenece myassembly.

caspol -customall "c:\config_test\security.config" -resolvegroup myassembly

-resolveperm

El comando siguiente calcula los permisos correspondientes a testassembly basándose en los niveles de directiva de equipo y usuario.

caspol -all -resolveperm testassembly

Vea también

Referencia

Símbolos del sistema del SDK de Windows y Visual Studio

Otros recursos

Herramientas de .NET Framework

Configurar directivas de seguridad mediante la herramienta Directiva de seguridad de acceso a código (Caspol.exe)

Administración de directivas de seguridad

Historial de cambios

Fecha

Historial

Motivo

1 de abril de 2011

Se agregó información sobre el uso de los símbolos del sistema de Visual Studio y del SDK de Windows.

Mejora de la información.

Agosto de 2010

Se agregó información sobre la versión de 64 bits de Caspol.exe.

Mejora de la información.

Agosto de 2010

Se corrigió la sintaxis en el último ejemplo.

Comentarios de los clientes.