Abgleichsmethoden und -techniken für Regelpakete in Exchange 2013
Gilt für: Exchange Server 2013
In diesem Thema werden Verfahren beschrieben, um einen Abgleich für Muster- und Nachweiselemente innerhalb einer DLP-XML-Datei (Data Loss Prevention) durchzuführen, die Ihr benutzerdefiniertes Regelpaket für vertrauliche Informationen enthält. Nachdem Sie eine ordnungsgemäß formatierte XML-Datei erstellt haben, können Sie die Datei über die Exchange-Verwaltungskonsole oder die Exchange-Verwaltungsshell importieren, um Ihre Microsoft Exchange Server 2013-DLP-Lösung zu erstellen. Sie sollten bereits mit der Erstellung einer DLP-XML-Datei begonnen haben, um die hier beschriebenen Methoden für den Abgleich zu verwenden. Weitere Informationen zum Definieren eigener DLP-Vorlagen und XML-Dateien finden Sie unter Definition eigener DLP-Vorlagen und Informationstypen.
Das Element "Match"
Das Match
-Element wird innerhalb der Pattern
- und Evidence
-Elemente verwendet, um die zugrunde liegenden Schlüsselwort (keyword), regex oder funktion darzustellen, die abgeglichen werden soll. Die Definition der Übereinstimmung selbst wird außerhalb des Rule
Elements gespeichert und über das idRef
erforderliche Attribut referenziert. Eine Musterdefinition kann mehrere Match
Elemente enthalten, die direkt in das Pattern
Element eingeschlossen oder mithilfe des Any
Elements kombiniert werden können, um die übereinstimmende Semantik zu definieren.
<?xml version="1.0" encoding="utf-8"?>
<Rules packageId="...">
...
<Entity id="...">
<Pattern confidenceLevel="85">
<IdMatch idRef="FormattedSSN" />
<Match idRef="USDate" />
<Match idRef="USAddress" />
</Pattern>
</Entity>
...
<Keyword id="FormattedSSN "> ... </Keyword>
<Regex id=" USDate "> ... </Regex>
<Regex id="USAddress"> ... </Regex>
...
</Rules>
Definieren eines schlüsselwortbasierten Abgleichs
Eine gängige Regelanforderung ist ein Abgleich, der auf bekannten Ausdrücken in Form von Schlüsselwortzeichenfolgen basiert. Dies wird mithilfe des Keyword
-Elements erreicht. Das Keyword-Element verfügt über ein id
Attribut, das als Verweis in den entsprechenden Entitäts- oder Affinitätsregeln verwendet wird. Ein einzelnes Element "Keyword" kann in mehreren Regeln vom Typ "Entity" und "Affinity" referenziert werden.
Der Abgleich kann entweder mit einer exakten Übereinstimmung oder mit einem auf Wörtern basierenden Algorithmus durchgeführt werden. Bei der genauen Übereinstimmung wird ein Algorithmus verwendet, bei dem die Groß-/Kleinschreibung beachtet wird, der nach dem Text in der angegebenen Sprache sucht. Word Übereinstimmung wendet einen Abgleichsalgorithmus basierend auf Wortgrenzen an. Die begriffe, die abgeglichen werden sollen, können inline in die Schlüsselwortdefinition eingeschlossen werden, indem das Unterelement Term verwendet wird.
Tipp
Damit eine bessere Effizienz und Leistung erzielt werden, sollten Sie das konstantenbasierte Format für Übereinstimmungen über RegEx verwenden. Verwenden Sie RegEx-Übereinstimmungen nur dann, wenn konstantenbasierte Übereinstimmungen nicht ausreichen und die Flexibilität von regulären Ausdrücken erforderlich ist.
<Keyword id="Word_Example">
<Group matchStyle="word">
<Term>card verification</Term>
<Term>cvn</Term>
<Term>cid</Term>
<Term>cvc2</Term>
<Term>cvv2</Term>
<Term>pin block</Term>
<Term>security code</Term>
</Group>
</Keyword>
...
<Keyword id="String_Example">
<Group matchStyle="string">
<Term>card</Term>
<Term>pin</Term>
<Term>security</Term>
</Group>
</Keyword>
Definieren eines Abgleichs auf Basis regulärer Ausdrücke
Eine weitere gängige Methode für den Abgleich basiert auf regulären Ausdrücken. Aufgrund der Flexibilität, die ein Abgleich auf Basis regulärer Ausdrücke bietet, ist dies eine gängige Methode für den Abgleich von Daten wie Führerscheinnummern oder Adressen. Zur Definition der RegEx-Muster wird eine gängige Syntax für reguläre Ausdrücke verwendet. In der folgenden Tabelle sind Beispiele für einige der gängigsten Token aufgeführt, die für reguläre Ausdrücke verfügbar sind.
Tipp
Damit eine bessere Effizienz und Leistung erzielt werden, sollten Sie das konstantenbasierte Format für Übereinstimmungen über RegEx verwenden. Verwenden Sie RegEx-Übereinstimmungen nur dann, wenn konstantenbasierte Übereinstimmungen nicht ausreichen und die Flexibilität von regulären Ausdrücken erforderlich ist.
Symbol | Bedeutung |
---|---|
c | Übereinstimmung mit dem Literalzeichen c einmal, es sei denn, es handelt sich um eines der Sonderzeichen. |
^ | Entsprechung am Anfang einer Zeile. |
. | Entsprechung für alle Zeichen, bei denen es sich nicht um eine neue Zeile handelt. |
$ | Entsprechung am Ende einer Zeile. |
| | Logisches OR zwischen Ausdrücken. |
() | Gruppieren von Unterausdrücken. |
[] | Definieren einer Zeichenklasse. |
* | Entsprechung für den vorstehenden Ausdruck (nullmal oder mehrere Male). |
+ | Mindestens einmalige Entsprechung für den vorstehenden Ausdruck. |
? | Entsprechung für den vorstehenden Ausdruck (null- oder einmal). |
{n} | Entsprechung für den vorstehenden Ausdruck (n-mal). |
{n,} | Entsprechung für den vorstehenden Ausdruck (mindestens n-mal). |
{n, m} | Entsprechung für den vorstehenden Ausdruck (mindestens n-mal und maximal m-mal). |
\d | Entsprechung für eine Ziffer. |
\D | Übereinstimmung mit einem Zeichen, das keine Ziffer ist. |
\w | Entsprechung für einen Buchstaben, einschließlich Unterstrich. |
\W | Übereinstimmung mit einem Zeichen, das kein Alphazeichen ist. |
\s | Entsprechung für ein Leerraumzeichen (\t, \n, \r oder \f). |
\S | Entsprechung für ein Zeichen, bei dem es sich nicht um ein Leerraumzeichen handelt. |
\t | Tabulator. |
\n | Neue Zeile. |
\r | Wagenrücklauf. |
\f | Seitenvorschub. |
\ m | Escape m, wobei m eines der oben beschriebenen Metazeichen ist: ^, ., $, |, (), [, ], *, +, ?, \, / . |
Das Regex-Element verfügt über ein id
Attribut, das als Verweis in den entsprechenden Entitäts- oder Affinitätsregeln verwendet wird. Ein einzelnes Element "Regex" kann in mehreren Regeln vom Typ "Entity" und "Affinity" referenziert werden. Der RegEx-Ausdruck wird als Wert des Elements "Regex" definiert.
<Regex id="CCRegex">
\bcc\#\s|\bcc\#\:\s
</Regex>
...
<Regex id="ItinFormatted">
(?:^|[\s\,\:])(?:9\d{2})[- ](?:[78]\d[-
]\d{4})(?:$|[\s\,]|\.\s)
</Regex>
...
<Regex id="NorthCarolinaDriversLicenseNumber">
(^|\s|\:)(\d{1,8})($|\s|\.\s)
</Regex>
Kombinieren mehrerer Elemente für den Abgleich
Eine gängige Methode, um die Zuverlässigkeit des Abgleichs zu erhöhen, ist die Definition einer Semantik aus mehreren Match-Elementen, z. B. die Festlegung, dass eine oder mehrere Entsprechungen ermittelt werden müssen. Zur Definition der Logik zwischen mehreren Übereinstimmungen kann das Element "Any" verwendet werden. Das Any-Element kann als Unterelement im Pattern-Element verwendet werden. Es enthält mindestens ein untergeordnetes Match-Element und definiert die Logik für die Übereinstimmungen zwischen diesen Elementen. Unten finden Sie XML-Codebeispiele für alle Elemente mit allen Übereinstimmungen, "Nicht"-Logik und exakter Übereinstimmungsanzahl.
Das optionale minMatches-Attribut kann verwendet werden (Standardwert = 1), um die Mindestanzahl von Match-Elementen anzugeben, für die eine Übereinstimmung ermittelt werden muss. Gleichermaßen kann das optionale maxMatches-Attribut verwendet werden (Standardwert = Anzahl von untergeordneten Match-Elementen), um die maximale Anzahl von Match-Elementen anzugeben, für die eine Übereinstimmung ermittelt werden muss. Diese Bedingungen werden mithilfe logischer Operatoren basierend auf der Verwendung der Attribute "minMatches" und "maxMatches" kombiniert, sodass die folgende Semantik möglich ist:
Entsprechung für alle untergeordneten Match-Elemente
Keine Entsprechung für untergeordnete Match-Elemente
Entsprechung für die genaue Untermenge beliebiger untergeordneter Match-Elemente
<Any minMatches="3" maxMatches="3">
<Match idRef="USDate" />
<Match idRef="USAddress" />
<Match idRef="Name" />
</Any>
<Any maxMatches="0">
<Match idRef="USDate" />
<Match idRef="USAddress" />
<Match idRef="Name" />
</Any>
<Any minMatches="1" maxMatches="1">
<Match idRef="USDate" />
<Match idRef="USAddress" />
<Match idRef="Name" />
</Any>
Höhere Zuverlässigkeitsstufe durch mehr Nachweise
Für Entity-basierte Regeln kann die Zuverlässigkeitsstufe außerdem erhöht werden, indem mehrere Pattern-Elemente definiert werden, für die je eine steigende Anzahl von Nachweisen festgelegt wird. Zu diesem Zweck werden die Attribute "minMatches" und "maxMatches" für das Any-Element verwendet, um unabhängige Muster mit steigender Zuverlässigkeitsstufe basierend auf einer steigenden Anzahl von Nachweisen zu erstellen. Beispiel:
- Bei Ermittlung eines Nachweises: Zuverlässigkeitsstufe ist 65 %
- Bei Ermittlung von zwei Nachweisen: Zuverlässigkeitsstufe ist 75%
- Bei Ermittlung von drei Nachweisen: Zuverlässigkeitsstufe ist 85%
<Entity id="..." patternsProximity="300" >
<Pattern confidenceLevel="65">
<IdMatch idRef="UnformattedSSN" />
<Any maxMatches="1">
<Match idRef="USDate" />
<Match idRef="USAddress" />
<Match idRef="Name" />
</Any>
</Pattern>
<Pattern confidenceLevel="75">
<IdMatch idRef="UnformattedSSN" />
<Any minMatches="2" maxMatches="2">
<Match idRef="USDate" />
<Match idRef="USAddress" />
<Match idRef="Name" />
</Any>
</Pattern>
<Pattern confidenceLevel="85">
<IdMatch idRef="UnformattedSSN" />
<Any minMatches="3">
<Match idRef="USDate" />
<Match idRef="USAddress" />
<Match idRef="Name" />
</Any>
</Pattern>
</Entity>
Beispiel: Regel für den Abgleich von Sozialversicherungsnummern der USA (Social Security Number, SSN)
In diesem Abschnitt finden Sie eine Einführung in die Erstellung einer Regel zum Abgleich einer Sozialversicherungsnummer. Beschreiben Sie zunächst, wie Inhalte mit einer Sozialversicherungsnummer ermittelt werden. Eine Sozialversicherungsnummer wird ermittelt, wenn:
- der reguläre Ausdruck mit einer formatierten Sozialversicherungsnummer übereinstimmt (und im zulässigen Sozialversicherungsnummernbereich liegt)
- Nachweis In unmittelbarer Nähe wird eins der folgenden Elemente ermittelt:
- Schlüsselwortübereinstimmung {Social Security, Soc Sec, SSN, SSNS, SSN#, SS#, SSID}
- Text zur Darstellung einer Adresse in den USA
- Text zur Darstellung eines Datums
- Text zur Darstellung eines Namens
Übersetzen Sie die Beschreibung anschließend in eine Regelschemadarstellung:
<Entity id="a44669fe-0d48-453d-a9b1-2cc83f2cba77"
patternsProximity="300" RecommendedConfidence="85">
<Pattern confidenceLevel="85">
<IdMatch idRef="FormattedSSN" />
<Any minMatches="1">
<Match idRef="SSNKeywords" />
<Match idRef="USDate" />
<Match idRef="USAddress" />
<Match idRef="Name" />
</Any>
</Pattern>
</Entity>
Weitere Informationen
Definition eigener DLP-Vorlagen und Informationstypen
Importieren einer benutzerdefinierten DLP-Richtlinienvorlage aus einer Datei