Compartir a través de


Cómo: Agregar grupos de código mediante Caspol.exe

Actualización: noviembre 2007

Comandos para agregar un grupo de ejemplo

Cuando utilice la herramienta de la directiva de seguridad de acceso a código (Caspol.exe) para agregar un grupo de código a una jerarquía de grupos de código, debe definir tanto una condición de pertenencia como un conjunto de permisos para el nuevo grupo de código. Asimismo, debe definir la etiqueta o el nombre del grupo de código primario al que agregará el nuevo grupo. Opcionalmente, también puede establecer otros indicadores en el grupo de código. Para obtener información acerca de estos indicadores, vea Herramienta de la directiva de seguridad de acceso a código (Caspol.exe).

Para agregar un grupo de código a una jerarquía de grupos de código

  • Escriba el comando siguiente en el símbolo del sistema:

    caspol [-enterprise|-machine|-user] -addgroup {etiquetaPrimaria|nombrePrimario} nombre_conj_permisos pertenencia [-exclusive {on|off}][-levelfinal {on|off}] [-name nombre] [-description descripción]

    Especifique el nivel de directiva delante de la opción –addgroup. Si omite el nivel de directiva, la herramienta Caspol.exe agrega el grupo de código al nivel de directiva predeterminado. Para los administradores de equipos, el nivel predeterminado es el de directiva de equipo, para los demás es el nivel de directiva de usuario. En este comando:

    • El argumento parentLabel es la etiqueta del grupo de código principal al que pertenece el nuevo grupo de código. También puede utilizar el nombre del grupo de código primario (parentName) en lugar de la etiqueta (parentLabel). Para obtener esta información, enumere los grupos de código como se describe en Cómo: Ver grupos de código mediante Caspol.exe.

    • El argumento nombre_conjuntos_permisos es el nombre del conjunto de permisos que se asocia al nuevo grupo de código. Para poder asociar un conjunto de permisos con nombre a un grupo de código, debe estar incluido en el nivel de directiva al que va a agregar el nuevo grupo de código. Por ejemplo, si desea asociar un conjunto de permisos denominado MyPset con un nuevo grupo de código en la directiva de usuario, primero debe agregar el conjunto de permisos MyPset a la directiva de usuario. La única circunstancia en que no es necesario agregar previamente un conjunto de permisos es cuando se utilizan los conjuntos estándar de permisos proporcionados por .NET Framework. Para saber cómo agregar un conjunto de permisos a un nivel de directiva, vea Cómo: Agregar conjuntos de permisos mediante Caspol.exe.

    • El argumento pertenencia es la condición de pertenencia para el nuevo grupo de código. Para obtener la lista de valores correspondientes al argumento pertenencia, vea Herramienta de la directiva de seguridad de acceso a código (Caspol.exe).

Nota:

No puede utilizar la opción –addgroup para agregar un grupo de código en varios niveles a la vez. Cada incorporación debe realizarse por separado porque las distintas etiquetas de los grupos de código y la disponibilidad de ciertos conjuntos de permisos pueden causar confusión.

Comandos para agregar un grupo de ejemplo

En los procedimientos siguientes se describe cómo realizar algunas de las tareas más comunes de incorporación de grupos de código.

Para agregar un grupo de código orientado a código de la intranet

  • Use la opción -zone, y especifique Intranet como valor de pertenencia.

    Con el comando siguiente se asocia el conjunto de permisos Everything con código de la intranet. El grupo de código también recibe el nombre de Intranet_CG. Puede utilizar este nombre para referirse al grupo de código recién creado, en lugar de usar sus etiquetas numéricas.

    caspol –addgroup 1.1. –zone Intranet Everything –name "Intranet_CG"
    

Para agregar un grupo de código orientado a código de sitios de confianza de Internet Explorer

  • Use la opción -zone, y especifique Trusted como valor de pertenencia.

    Con el comando siguiente se asocia el conjunto de permisos LocalIntranet con código de la zona de confianza y se inserta el nuevo grupo de código como secundario con respecto a la raíz de la jerarquía de grupos de código.

    caspol -addgroup All_Code -zone Trusted LocalIntranet
    

Para agregar un grupo de código orientado a una compañía de software concreta

  • Use la opción –pub, y especifique un archivo de certificado, un archivo firmado o la representación hexadecimal de un certificado X.509.

    Los archivos de la compañía de software deben estar firmados adecuadamente para que esta condición de pertenencia funcione. La condición de pertenencia se puede construir a partir de un archivo de certificado real o de un archivo .exe firmado.

    Imagine que el archivo de certificado para FourthCoffee (FourthCoffee.cer) está disponible. Con el comando siguiente se agrega un grupo de código a la directiva de equipo para el código de la compañía FourthCoffee y se asocia el conjunto de permisos Nothing al nuevo grupo. El grupo de código se agrega como secundario con respecto a la raíz.

    caspol –machine –addgroup 1 –pub –cert FourthCoffee.cer Nothing
    

Para agregar un grupo de código orientado a código de un sitio Web concreto

  • Use la opción –site, y especifique la dirección URL del sitio Web.

    Nota:

    Debido a la posibilidad de simulación de nombres DNS, el uso de un sitio Web como condición de pertenencia no es una forma eficaz 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.

    Con el comando siguiente se asocia el conjunto de permisos Intranet con código de www.microsoft.com.

    caspol –addgroup 1 –site www.microsoft.com Intranet
    

Para agregar un grupo de código orientado a una dirección URL concreta

  • Use la opción –url, y especifique la dirección URL del sitio.

    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.

    Nota:

    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.

    caspol –user –addgroup 1 –url https://www.contoso.com/bin/* FullTrust
    caspol –user –addgroup 1 –url https://www.contoso.com/bin/MyAssembly.dll FullTrust
    

Para agregar un grupo de código que reemplace a otros permisos en un nivel de directiva

  • Especifique el indicador –exclusive para el nuevo grupo de código.

    Con el comando siguiente se agrega un grupo de código al grupo Intranet_cg. El nuevo grupo de código concede el conjunto de permisos Everything si la zona es de confianza, para lo que reemplaza cualquier otro permiso que otros grupos de código pudieran conceder.

    caspol –addgroup "Intranet_cg" –zone Trusted Everything –exclusive on
    

Para agregar un grupo de código con una condición de pertenencia personalizada

  • Use la opción –custom, y especifique un archivo XML que contenga la serialización XML de la condición de pertenencia personalizada.

    La herramienta Caspol.exe admite el uso de condiciones de pertenencia personalizadas en las directivas, gracias a lo cual el sistema de directivas se puede extender notablemente.

    Con el comando siguiente se agrega un nuevo grupo de código a la raíz de la directiva de usuario. Este nuevo grupo de código contiene una condición de pertenencia personalizada incluida en el archivo NewMembershipCondition.xml y otorga total confianza a los ensamblados que coinciden con esta condición de pertenencia.

    caspol –user –addgroup All_Code –custom NewMembershipCondition.xml FullTrust
    

Para agregar un grupo de código con un nombre y una descripción

  1. Use la opción –name, y especifique un nombre para el grupo de código. Los nombres que incluyan espacios deben ir entre comillas dobles (" ").

  2. Use la opción –description, y especifique una descripción para el grupo de código.

Posteriormente, podrá utilizar el nombre para referirse al grupo de código. El nombre proporciona una compatibilidad mejor que las etiquetas numéricas con los cambios de directiva mediante secuencias de comandos.

La directiva predeterminada se distribuye con nombres predeterminados. Si un administrador no los cambia explícitamente, los nombres predeterminados les facilitan el uso de la herramienta Caspol.exe para obtener acceso a grupos de código concretos de distintas directivas y equipos.

Con el comando siguiente se agrega un grupo de código al grupo All_Code de la directiva de equipo. El nuevo grupo de código busca un nombre seguro FourthCoffee (como el incluido en Signed.exe) y otorga FullTrust a todo el código que no esté firmado. El grupo de código se denomina FouthCoffeeStrongName y recibe una descripción adecuada.

caspol –machine –addgroup All_Code –strong –file signed.exe FullTrust –name FouthCoffeeStrongName –description "Code group granting trust to code signed by FourthCoffee"
Nota:

Si el mismo nombre aparece en más de un grupo de código, Caspol.exe utiliza el primero con ese nombre que pueda encontrar. Busca en todos los grupos de código secundarios de un grupo de código antes de buscar en los grupos relacionados.

Vea también

Conceptos

Modelo de directiva de seguridad

Referencia

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

Otros recursos

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

Configurar grupos de código mediante Caspol.exe