Desarrollo de archivos de plantilla de directiva DLP en Exchange 2013

Se aplica a: Exchange Server 2013

En esta introducción se explican los componentes de una definición de esquema XML para los archivos de plantilla de directiva de prevención de pérdida de datos (DLP). Es útil comprender la arquitectura DLP general y el proceso de desarrollo de reglas antes de empezar. Para obtener más información, vea Prevención de pérdida de datos y Definir sus propios tipos de información y plantillas de DLP.

Para facilitar el uso y la administración de las soluciones de prevención de pérdida de datos, Microsoft Exchange Server 2013 incluye un modelo conceptual conocido como directivas DLP y plantillas de directiva. Las plantillas de directiva DLP proporcionan un diseño preliminar para la directiva DLP que se pretende crear. Para que resulten útiles, las plantillas de directiva DLP deben encapsular todas las directivas y objetos de datos necesarios para cumplir un objetivo de directiva específico, como una regulación o una necesidad empresarial. La plantilla no es específica del entorno. Se trata simplemente de una definición o modelo de una directiva que se puede proporcionar como parte de la configuración del producto o proporcionada por editores y asociados de software independientes. Por otro lado, las directivas DLP son creaciones de instancias en tiempo de ejecución de las plantillas que son específicas de un entorno de implementación. Un marco de directivas de mensajería existente puede incorporar directivas DLP mediante el uso de reglas de transporte. Las reglas de transporte ofrecen una gran flexibilidad para adaptar y expresar la variedad de soluciones de DLP.

Estructura y orígenes de plantillas de directiva

Por lo general, las plantillas de directiva DLP están influenciadas por varios orígenes, como las directivas de procesamiento basadas en servidor, las directivas de equipo cliente u otras construcciones de directiva, según se muestra en la siguiente imagen:

Factores que influyen en las plantillas de directiva.

Las operaciones de administración sencillas están disponibles para las plantillas de directiva DLP a través del Shell de administración de Exchange y las interfaces basadas en Internet, como el Centro de administración de Exchange, que incluyen las funcionalidades de importación, exportación, eliminación y consulta. Las directivas DLP se crean mediante una referencia a una plantilla de directiva DLP como parte del proceso de creación. Estas plantillas de directiva DLP referenciadas pueden ser referencias a otras instaladas en el sistema, que se almacenan en los Servicios de dominio de Active Directory o que se proporcionan como una entrada directamente desde las plantillas suministradas externamente.

Las plantillas de directiva DLP se representan como documentos XML. Se utiliza un solo esquema XML para las directivas proporcionadas en Exchange o de manera externa. La estructura conceptual del documento XML se representa en la siguiente tabla, que muestra los elementos más importantes. El conjunto de definiciones de componentes de directiva le ayuda a lograr un objetivo de directiva específico, como una regulación o una necesidad empresarial.

Elemento estructural Significado o ejemplo
Publisher Microsoft o socio
Version 15.0.1.0
Nombre de la directiva PCI-DSS
Description La directiva DLP de PCI-DSS ayuda a detectar la presencia de información sujeta a PCI Data Security Standard (PCI DSS), incluida información como números de tarjeta de crédito o tarjeta de débito. El uso de esta directiva no garantiza el cumplimiento de ninguna normativa. Después de finalizar la prueba, realice los cambios de configuración necesarios en Exchange, de modo que la transmisión de información cumpla con las directivas de su organización. Algunos ejemplos son la configuración de TLS con socios comerciales conocidos o la adición de acciones de reglas de transporte más restrictivas, como la adición de protección de derechos en los mensajes que contienen este tipo de datos.
Metadatos Etiquetas para describir las regulaciones locales, el país o región, las palabras clave y mucho más.
Conjunto de construcciones de la directiva Definiciones de reglas de transporte, como las condiciones y las acciones.
Definiciones de comportamiento del cliente de correo electrónico que controlan la experiencia del cliente a través de notificaciones interactivas.
Referencias de configuración que opcionalmente se deben coordinar con la configuración específica del entorno del cliente.
Conjunto de clasificaciones de datos Especifica las afinidades o entidades de clasificación.
Las entidades tienen recuento y confianza, las afinidades sólo tienen confianza.
Incluye su propio conjunto de propiedades y esquema de clasificación.

Definición del formato de una plantilla de directiva

Las plantillas de directiva DLP se expresan como documentos XML que se adhieren al siguiente esquema. Tenga en cuenta que el XML no distingue entre mayúsculas y minúsculas. Por ejemplo, dlpPolicyTemplates funcionará, pero DlpPolicyTemplates no funcionará.

<?xml version="1.0" encoding="UTF-8"?>
<dlpPolicyTemplates>
  <dlpPolicyTemplate id="F7C29AEC-A52D-4502-9670-141424A83FAB" mode="Audit" state="Enabled" version="15.0.2.0">
    <contentVersion>4</contentVersion>
    <publisherName>Microsoft</publisherName>
    <name>
      <localizedString lang="en">PCI-DSS</localizedString>
    </name>
    <description>
      <localizedString lang="en">Detects the presence of information subject to Payment Card Industry Data Security Standard (PCI-DSS) compliance requirements.</localizedString>
    </description>
    <keywords></keywords>
    <ruleParameters></ruleParameters>
    <ruleParameters/>
    <policyCommands>
      <!-- The contents below are applied/executed as rules directly in PS - -->
      <commandBlock>
        <![CDATA[ new-transportRule "PCI-DSS: Monitor Payment Card Information Sent To Outside" -DlpPolicy "%%DlpPolicyName%%" -SentToScope NotInOrganization -SetAuditSeverity High -MessageContainsDataClassifications @{Name="Credit Card Number"; MinCount="1" } -Comments "Monitors payment card information sent to outside the organization as part of the PCI-DSS DLP Policy."]]>
      </commandBlock>
      <commandBlock>
        <![CDATA[ new-transportRule "PCI-DSS: Monitor Payment Card Information Sent To Within" -DlpPolicy "%%DlpPolicyName%%" -Comments "Monitors payment card information sent inside the organization as part of the PCI-DSS DLP Policy." -SentToScope InOrganization -SetAuditSeverity Low -MessageContainsDataClassifications @{Name="Credit Card Number"; MinCount="1" } ]]>
      </commandBlock>
    </policyCommands>
    <policyCommandsResources></policyCommandsResources>
  </dlpPolicyTemplate>
</dlpPolicyTemplates>

Si incluye un parámetro para cualquier elemento en el archivo XML que contenga un espacio, deberá entrecomillar el parámetro con comillas dobles o no funcionará correctamente. En el ejemplo siguiente, el parámetro que sigue -SentToScope es aceptable y no incluye comillas dobles porque es una cadena continua de caracteres sin espacio. Sin embargo, el parámetro proporcionado para Comments no aparecerá en el Centro de administración de Exchange porque no hay comillas dobles e incluye espacios.

<CommandBlock><![CDATA[ new-transportRule "PCI-DSS: Monitor Payment Card Information Sent To Within" -DlpPolicy "PCI-DSS" -Comments Monitors payment card information sent inside the organization -SentToScope InOrganization -SetAuditSeverity Low -MessageContainsDataClassifications @{Name="Credit Card Number"; MinCount="1" } ]]> </CommandBlock>

Elemento localizedString

El formato de plantilla ofrece la capacidad de localizar cadenas en la plantilla, que se pueden presentar al usuario final, por ejemplo, como parte de la selección de qué plantillas de directiva DLP están instaladas. El elemento localizedString se puede usar para proporcionar varias definiciones para los campos Nombre y Descripción.

Nodo ruleParameters

Se trata de un conjunto opcional de parámetros que se deben proporcionar durante la fase de creación de instancias de plantilla al crear una directiva DLP para asignarla a objetos específicos de la implementación. Por ejemplo, un grupo de distribución real que está disponible en la implementación.

Elemento dlpPolicyTemplate

Este es el elemento raíz de la plantilla de directiva DLP y es necesario en todas las plantillas. En la tabla siguiente se muestran los atributos disponibles:

Nombre del atributo ¿Necesario? Description
Versión Número de versión usado en este documento de plantilla de directiva DLP.
State No Configuración opcional predeterminada para el estado de la directiva.
Mode No Configuración opcional predeterminada para el modo de la directiva.
Id No GUID para identificar de manera exclusiva esta definición de plantilla de directiva DLP con el siguiente formato: "A29C69BF-4F98-47F1-9A99-5771DFD2C27F".

Los elementos secundarios incluyen la siguiente secuencia de elementos.

Elemento secundario (mínimo, máximo) Description
PublisherName (1, 1) Metadatos para el publicador de la plantilla
Name (1, 1) Nombre localizable de esta plantilla.
Description (1, 1) Descripción localizable de esta plantilla.
Keywords (1, 1) Lista de palabras clave que se aplica a esta plantilla. Una plantilla puede tener una lista vacía de palabras clave.
RuleParameters (0, 1) Lista de parámetros de plantilla que se utilizan en la definición de la directiva.
PolicyCommands (0, 1) Lista de definiciones de reglas de transporte de esta directiva. Este elemento es opcional.

Plantilla de directiva DLP: Comandos de directivas

Esta parte de la plantilla de directiva contiene la lista de comandos del Shell de administración de Exchange que se usan para crear instancias de la definición de la directiva. El proceso de importación ejecuta cada uno de los comandos como parte del proceso de creación de instancias. Los comandos de directiva de muestra se proporcionan aquí.

<PolicyCommands>
    <!-- The contents below are applied/executed as rules directly in PS - -->
      <CommandBlock> <![CDATA[ new-transportRule "PCI-DSS: Monitor Payment Card Information Sent To Outside" -DlpPolicy "PCI-DSS" -SentToScope NotInOrganization -SetAuditSeverity High -MessageContainsDataClassifications @{Name="Credit Card Number"; MinCount="1" } -Comments "Monitors payment card information sent to outside the organization as part of the PCI-DSS DLP policy."]]></CommandBlock>
      <CommandBlock><![CDATA[ new-transportRule "PCI-DSS: Monitor Payment Card Information Sent To Within" -DlpPolicy "PCI-DSS" -Comments "Monitors payment card information sent inside the organization as part of the PCI-DSS DLP policy." -SentToScope InOrganization -SetAuditSeverity Low -MessageContainsDataClassifications @{Name="Credit Card Number"; MinCount="1" } ]]> </CommandBlock>
  </PolicyCommands>

Los cmdlets tienen el formato de la sintaxis estándar de cmdlets del Shell de administración de Exchange. Los comandos se ejecutan en secuencia. Es posible que cada uno de los nodos de comando contenga un bloque de script, que se componería de varios comandos. En el siguiente ejemplo se muestra cómo incrustar un paquete de reglas de clasificación dentro de una plantilla de directiva DLP y cómo instalar el paquete de reglas como parte del proceso de creación de la directiva. El paquete de reglas de clasificación se incrusta en la plantilla de directiva y, a continuación, se pasa como un parámetro al cmdlet en la plantilla:

<CommandBlock>
  <![CDATA[
$rulePack = [system.Text.Encoding]::Unicode.GetBytes('<?xml version="1.0" encoding="utf-8"?>
<rulePackage xmlns="http://schemas.microsoft.com/office/2011/mce">
  <RulePack id="c3f021a3-c265-4dc2-b3a7-41a1800bf518">
    <Version major="1" minor="0" build="0" revision="0"/>
    <Publisher id="e17451d3-9648-4117-a0b1-493a6d5c73ad"/>
    <Details defaultLangCode="en-us">
      <LocalizedDetails langcode="en-us">
        <PublisherName>Contoso</PublisherName>
        <Name>Contoso Sample Rule Pack</Name>
        <Description>This is a sample rule package</Description>
      </LocalizedDetails>
    </Details>
  </RulePack>
  <Rules>
    <Entity id="7cc35258-6b35-4415-baff-a76d1a018980" patternsProximity="300" recommendedConfidence="85" workload="Exchange">
      <Pattern confidenceLevel="85">
        <IdMatch idRef="Regex_Contoso" />
        <Any minMatches="1">
          <Match idRef="Regex_conf" />
        </Any>
      </Pattern>
    </Entity>
    <Regex id="Regex_Contoso">(?i)(\bContoso\b)</Regex>
    <Regex id="Regex_conf">(?i)(\bConfidential\b)</Regex>
    <LocalizedStrings>
      <Resource idRef="7cc35258-6b35-4415-baff-a76d1a018980">
        <Name default="true" langcode="en-us">
          Confidential Information Rule
        </Name>
        <Description default="true" langcode="en-us">
          Sample rule pack - Detects Contoso confidential information
        </Description>
      </Resource>
    </LocalizedStrings>
  </Rules>
</RulePackage>
')
New-ClassificationRuleCollection -FileData $rulePack
New-TransportRule -name "customEntity" -DlpPolicy "%%DlpPolicyName%%" -SentToScope NotInOrganization -MessageContainsDataClassifications @{Name="Confidential Information Rule"} -SetAuditSeverity High]]>
</CommandBlock>

Los elementos secundarios incluyen la siguiente secuencia ordenada de elementos.

Elemento secundario (Mínimo, máximo) Description
CommandBlock (1, n) Bloque de comandos que se ejecuta en PowerShell. Los bloques de comandos se ejecutan en secuencia.

Más información

Prevención de pérdida de datos

Definir sus propios tipos de información y plantillas de DLP

Importar una plantilla de directiva DLP personalizada desde un archivo