Cómo crear una plantilla de Word con macros integradas que cumpla con applocker
🔍 WiseChecker

Cómo crear una plantilla de Word con macros integradas que cumpla con applocker

Necesita una plantilla de Word que contenga macros, pero su organización utiliza AppLocker para bloquear código VBA no confiable. AppLocker restringe qué archivos pueden ejecutar macros según reglas de publicador, reglas de ruta o reglas de hash. Cuando una plantilla no está firmada o no está almacenada en una ubicación permitida, Word deshabilita las macros de forma silenciosa o bloquea el archivo por completo. Este artículo explica cómo crear una plantilla .dotm con macros integradas que AppLocker permita, utilizando firma de código y la ruta de archivo correcta.

Puntos clave: Creación de una plantilla de macro de Word compatible con AppLocker

  • Firme el proyecto de VBA con un certificado de firma de código de una CA de confianza: La regla de publicador de AppLocker permite que las macros firmadas por un publicador de confianza se ejecuten sin restricciones.
  • Guarde la plantilla .dotm en una ruta permitida por la regla de ruta de AppLocker: Por ejemplo, C:\Program Files\Microsoft Office\Templates\ o una carpeta personalizada aprobada por TI.
  • Utilice el Centro de confianza para establecer la seguridad de macros en “Deshabilitar todas las macros excepto las firmadas digitalmente”: Esto garantiza que solo se ejecuten las macros de su plantilla firmada, mientras que todas las macros no firmadas se bloqueen.

ADVERTISEMENT

Por qué AppLocker bloquea las macros en plantillas de Word

AppLocker es una característica de seguridad de Windows que controla qué aplicaciones y scripts pueden ejecutarse en un dispositivo. Para los archivos de Office, AppLocker evalúa el código de macro de VBA dentro de archivos .docm, .dotm y .xlsm. Utiliza tres tipos de reglas: reglas de publicador que comprueban la firma digital del proyecto de macro, reglas de ruta que permiten o deniegan la ejecución según la ubicación de la carpeta del archivo, y reglas de hash que coinciden con el valor hash del archivo.

Cuando un usuario abre una plantilla .dotm que contiene macros, Word comprueba la configuración de seguridad de macros en el Centro de confianza. Si AppLocker está aplicado, Word también consulta la directiva de AppLocker. Si el proyecto de macro no está firmado por un publicador de confianza o el archivo no está en una ruta permitida, AppLocker impide que las macros se ejecuten. El usuario puede ver una advertencia de seguridad que dice “Se han deshabilitado las macros” o el archivo puede bloquearse por completo con un mensaje de error que indica que el archivo no es de confianza.

La causa raíz es que la plantilla carece de una firma digital válida en su proyecto de VBA, está almacenada en una ubicación no cubierta por una regla de ruta de AppLocker, o ambas cosas. Para cumplir con AppLocker, debe abordar tanto el requisito de firma como el de ruta.

Pasos para crear una plantilla de Word con macros integradas que AppLocker permita

Siga estos pasos para crear una plantilla .dotm, agregar macros, firmar el proyecto de VBA y guardarla en una ubicación compatible con AppLocker.

Paso 1: Crear una nueva plantilla de Word y habilitar macros

  1. Abra Word y cree un nuevo documento en blanco
    Inicie Word. Haga clic en Archivo > Nuevo > Documento en blanco. Esto le proporciona un archivo nuevo para diseñar su plantilla.
  2. Guarde el archivo como una plantilla habilitada para macros
    Haga clic en Archivo > Guardar como. En la lista desplegable Guardar como tipo, seleccione Plantilla de Word habilitada para macros (dotm). Por ahora, elija una carpeta temporal como el Escritorio. Asigne un nombre al archivo y haga clic en Guardar.
  3. Abra el Editor de Visual Basic para Aplicaciones
    Presione Alt+F11 para abrir el editor de VBA. En el panel Explorador de proyectos, localice su proyecto de plantilla. Se llamará algo como TemplateProject.
  4. Inserte un módulo y escriba su macro
    En el editor de VBA, haga clic en Insertar > Módulo. Aparece un nuevo módulo de código. Pegue o escriba el código de macro de VBA en el módulo. Por ejemplo, una macro simple que inserta la fecha actual:
Sub InsertDate()
    Selection.InsertDateTime DateTimeFormat:="MMMM d, yyyy", _
        InsertAsField:=False
End Sub

Paso 2: Firmar el proyecto de VBA con un certificado de firma de código

  1. Obtenga un certificado de firma de código de una CA de confianza
    Compre un certificado de firma de código de una entidad de certificación pública como DigiCert, GlobalSign o Sectigo. El certificado debe ser para firma de código (no SSL). Instálelo en el equipo donde firmará la plantilla.
  2. Abra el cuadro de diálogo Firma digital en el editor de VBA
    En el editor de VBA, haga clic en Herramientas > Firma digital. Aparece el cuadro de diálogo Firma digital.
  3. Haga clic en Elegir y seleccione su certificado
    Haga clic en el botón Elegir. En el cuadro de diálogo Seleccionar certificado, elija su certificado de firma de código de la lista. Haga clic en Aceptar. El cuadro de diálogo ahora muestra el nombre del certificado en “El proyecto de VBA está firmado actualmente como”.
  4. Confirme la firma y cierre el cuadro de diálogo
    Haga clic en Aceptar para cerrar el cuadro de diálogo Firma digital. Guarde la plantilla presionando Ctrl+S.

Paso 3: Implementar la plantilla en una ruta permitida por AppLocker

  1. Identifique la ruta permitida por AppLocker para macros
    Consulte con su administrador de TI la regla de ruta exacta configurada en AppLocker. Las rutas permitidas comunes incluyen C:\Program Files\Microsoft Office\Templates\ o un recurso compartido de red como \\company\share\templates\. Si no existe una regla de ruta, es posible que deba solicitar una.
  2. Copie el archivo .dotm firmado en la ruta permitida
    Use el Explorador de archivos para copiar su archivo de plantilla firmado en la carpeta permitida. Sobrescriba cualquier archivo existente si es necesario.
  3. Establezca la ubicación de la plantilla de usuario en Word
    Abra Word. Haga clic en Archivo > Opciones > Avanzadas. Desplácese hasta la sección General y haga clic en Ubicaciones de archivos. Seleccione Plantillas de usuario y haga clic en Modificar. Vaya a la carpeta permitida y haga clic en Aceptar. Haga clic en Aceptar nuevamente para cerrar el cuadro de diálogo Opciones.
  4. Pruebe la plantilla en un equipo con AppLocker habilitado
    En un equipo de prueba que tenga AppLocker aplicado, abra Word y haga clic en Archivo > Nuevo > Personal. Su plantilla debería aparecer. Selecciónela para crear un nuevo documento. La macro debería ejecutarse sin una advertencia de seguridad. Si aparece una advertencia, verifique que el certificado sea de confianza en ese equipo y que la ruta del archivo coincida con la regla de AppLocker.

ADVERTISEMENT

Problemas comunes al crear plantillas de macros compatibles con AppLocker

Word muestra “Se han deshabilitado las macros” incluso después de firmar

Esto generalmente significa que el certificado de firma de código no es de confianza para el equipo. El certificado debe instalarse en el almacén Entidades de certificación raíz de confianza en el equipo de cada usuario. Si su organización utiliza Directiva de grupo, el administrador de TI puede implementar el certificado en todos los equipos unidos al dominio. Como alternativa, puede usar un certificado de una CA que ya sea de confianza para Windows, como DigiCert o GlobalSign.

AppLocker bloquea la plantilla por completo con un mensaje de error

Si AppLocker bloquea el archivo antes de que Word lo abra, es probable que falte la regla de ruta o que sea incorrecta. Revise el Visor de eventos en Registros de aplicaciones y servicios > Microsoft > Windows > AppLocker > EXE y DLL para ver los eventos bloqueados. El registro mostrará la ruta del archivo y el tipo de regla que lo bloqueó. Trabaje con su administrador de TI para agregar una regla de ruta que incluya la carpeta donde guardó la plantilla.

La plantilla funciona en un equipo pero no en otro

Esto casi siempre es un problema de confianza del certificado. El certificado utilizado para firmar el proyecto de VBA no está instalado en el almacén Raíz de confianza del segundo equipo. Implemente el certificado mediante Directiva de grupo o pida a los usuarios que lo instalen manualmente. También verifique que el archivo de plantilla esté en la misma ruta permitida en ambos equipos.

Métodos de implementación de plantillas de macros de Word: autofirmado vs firmado por CA vs sin firma

Elemento Certificado autofirmado Certificado firmado por CA Sin firma
Confianza predeterminada Solo en el equipo de firma Todos los equipos que confían en la CA Ninguna
Regla de publicador de AppLocker No recomendado; el certificado no está en la raíz de confianza Funciona si la CA es de confianza No funciona
Regla de ruta de AppLocker Funciona si el archivo está en la ruta permitida Funciona si el archivo está en la ruta permitida Funciona solo si el archivo está en la ruta permitida
El usuario ve una advertencia de seguridad Sí, a menos que el certificado se confíe manualmente No, si la CA ya es de confianza Sí, siempre
Esfuerzo de implementación Bajo para un solo equipo Medio; el certificado debe implementarse Bajo pero no seguro

Ahora puede crear una plantilla .dotm firmada que AppLocker permita en dispositivos administrados. A continuación, configure un objeto de Directiva de grupo para implementar el certificado y la ruta de la plantilla en todos los usuarios. Para un control avanzado, use la regla de hash de AppLocker en lugar de la regla de ruta si necesita permitir solo una versión específica del archivo de plantilla.

ADVERTISEMENT