Noções sobre a Sintaxe da Regra de Política

 

Aplica-se a: Office 365 Enterprise, Live@edu, Forefront Online Protection for Exchange

Última modificação do tópico: 2012-05-02

Quando cria regras de política no Forefront Online Protection for Exchange (FOPE), tem duas opções para a sintaxe da regra. Primeiro, pode utilizar valores separados por vírgulas (CSV) misturados com a sintaxe de carateres universais de cadeia. Esta opção é listada como Básica no editor de Regras de Política do Centro de Administração do FOPE. Segundo, pode utilizar um subconjunto de carateres especificados na sintaxe de Expressão Regular. Esta opção é listada como RegEx no editor de Regras de Política do Centro de Administração do FOPE, para regras mais complexas.

Se não estiver familiarizado com a sintaxe RegEx, pode seleccionar a opção Básica, que lhe permitirá criar expressões simples para a filtragem de conteúdo e ajudá-lo-á a escrever um formato de expressões de correspondência correcto avaliando as expressões de correspondência com base no contexto no qual estão definidas. Por exemplo, só serão aceites endereços IP correctos no campo do endereço IP. Se as regras que pretende criar necessitarem de uma maior complexidade, tal como padrões de números e padrões de palavras correspondentes, pode utilizar um subconjunto de caracteres da sintaxe RegEx seleccionando a opção RegEx. Com esta opção, não estão disponíveis validações baseadas no contexto; só são aplicáveis validações específicas da sintaxe.

Quando selecciona Básica no editor de Regras de Política, pode listar expressões utilizando uma sintaxe de CSV que separa as expressões de correspondência com vírgulas. Além disso, pode melhorar as expressões de correspondência com metacaracteres universais de cadeia simples. A mesma sintaxe é aplicável aos ficheiros de dicionário carregados através de Filtros.

 

Metacarácter Descrição Exemplo

,

A vírgula é o metacarácter de opção, também conhecido como alternância ou separador, e corresponde à expressão listada antes ou depois da vírgula.

abc, def, xyz corresponde a abc, def ou xyz

*

O asterisco é o metacarácter universal e representa zero ou mais caracteres.

NoteNota:
Este carácter é equivalente a (.*) na sintaxe RegEx.

ab* corresponde a aba, abaa, abaaa, ab12345667, etc.

?

O ponto de interrogação representa qualquer carácter único.

NoteNota:
Este carácter é equivalente a (.) na sintaxe RegEx.

ab? corresponde a aba ou abb ou abc ou ab1 ou ab2, etc.

\

A barra invertida é o operador de escape. Para efectuar a correspondência dos literais (,) (*) (?) ou (\) e para suprimir o respectivo significado especial na sintaxe básica, é necessário colocar o operador de escape à frente dos operadores da sintaxe básica.

NoteNota:
Este carácter é equivalente a (\) na sintaxe RegEx.

\*a\\bc\? corresponde a *a\bc?

/0 a /32

A barra indica a notação de encaminhamento CIDR (Classless Inter-Domain Routing). Esta pode ser expressa adicionando uma barra (/) seguida de um número de 0 a 32 depois do último octeto de um endereço IP.

NoteNota:
A notação de encaminhamento CIDR só é aplicável a expressões de endereço IP e não pode ser utilizada noutros contextos.

99.99.98.0/23 corresponde aos intervalos de IPs de 99.99.98.0 a 99.99.99.255

NoteNota:
O número total de carateres inseridos em qualquer campo ou dicionário da Regra de Política não pode exceder 9.000. O limite de tamanho do ficheiro de dicionário é de 2 MB.

Quando selecciona RegEx no editor de Regras de Política, pode especificar expressões mais complexas que correspondem a padrões de texto, números ou caracteres especiais. Por exemplo, pode efectuar a correspondência de muitas variações diferentes de uma palavra como viagra, vi@gra, vlagra, utilizando um subconjunto de caracteres RegEx. Deste modo, pode minimizar o número de regras necessárias e criar expressões de correspondência poderosas como, por exemplo, para analisar números de cartão de crédito, números de segurança social, endereços de correio eletrónico e cadeias semelhantes de palavras ou números sensíveis.

A opção RegEx no editor de Regras de Política é um subconjunto da sintaxe de Expressões Regulares Básica e Expandida POSIX, expressa na tabela seguinte.

 

Tipo de carácter Carácter Descrição Exemplo

Meta

^

O metacarácter de acento circunflexo corresponde à posição inicial na cadeia.

NoteNota:
Utilizado em combinação com o carácter de cifrão, o acento circunflexo tem a mesma funcionalidade que a opção de correspondência exacta.

^abc corresponde a abc1234, mas não corresponde a 1234abc

Meta

$

O metacarácter de cifrão corresponde à posição final da cadeia ou à posição imediatamente antes de uma nova linha de fim de cadeia.

NoteNota:
Em combinação com o carácter de acento circunflexo, o cifrão tem a mesma funcionalidade que a opção de correspondência exacta.

abc$ corresponde a 1234abc, mas não corresponde a abc1234

Meta

*

O asterisco corresponde ao elemento anterior zero ou mais vezes.

ImportantImportante:
Este carácter deve ser utilizado com cuidado; as expressões de correspondência que utilizam este carácter poderão corresponder a mais cadeias do que o pretendido.

ab*x corresponde a abx, abbx, abbbx, abbbbx, etc.

Meta

+

O metacarácter de sinal de adição corresponde ao elemento anterior uma ou mais vezes.

Este carácter deve ser utilizado com cuidado; as expressões de correspondência que utilizam este carácter poderão corresponder a mais cadeias do que o pretendido.

ab+x corresponde a abbx, abbbx, abbbbx, abbbbbx, etc.

Meta

.

O metacarácter de ponto corresponde a qualquer carácter único, excepto de nova linha.

ab.x corresponde a ab1x, ab2x, ab3x, ab4x, etc.

Meta

?

O ponto de interrogação corresponde ao elemento anterior zero ou uma vez.

ab? corresponde a a ou ab

Meta

|

A barra vertical é um carácter de opção, ou alternância, que corresponde à expressão antes ou depois do operador; começa na primeira cadeia (esquerda) e pára quando é encontrada uma correspondência.

abc|def|xyz corresponde a abc, def, xyz ou abc12345, mas não corresponde a a123c ou axm

Meta

\

A barra invertida faz com que os metacaracteres RegEx sejam tratados como caracteres literais no contexto da regra.

x\*1\.5\+9\\x=y corresponde a x*1.5+9\x=y

Classe

\w

A barra invertida com um w minúsculo corresponde a qualquer carácter da palavra, incluindo os caracteres alfanuméricos com "_".

\w123 corresponde a a123, bbb123 ou c_c123xxx, mas não corresponde a @123

Classe

\d

A barra invertida com um d minúsculo corresponde a qualquer dígito decimal.

\dabc corresponde a 123abc, 12345abcxxx ou 1abc1, mas não corresponde a abc123 ou @abc123

Classe

\s

A barra invertida com um s minúsculo corresponde a qualquer carácter de espaço em branco.

abc\sdef corresponde a abc def

ImportantImportante:
Se não estiver familiarizado com a sintaxe RegEx, recomendamos que utilize a opção Básica ou que teste as regras com a acção de regra de política Testar antes de as utilizar com acções de regras de política tais como Rejeitar, Encriptar ou Redireccionar. As Regras de Política do Administration Center só suportam um subconjunto dos caracteres RegEx.
O número total de caracteres RegEx inseridos em qualquer campo da Regra de Política não pode exceder 9.000.

Seguem-se exemplos de expressões RegEx correspondentes a diferentes partes de uma mensagem:

  • Um ponto final utilizado para efectuar a correspondência das extensões de nomes de ficheiro corresponderá a qualquer carácter único após a expressão. Por exemplo, r. corresponde a qualquer nome de ficheiro que comece com a letra r seguida de qualquer carácter único. Por exemplo, a expressão de correspondência r. corresponde a extensões como, por exemplo, r1 ou outra combinação de dois caracteres.

  • Para que a correspondência seja efectuada como literal, todos os metacaracteres RegEx têm de ser acompanhados do operador de escape. A correspondência dos metacaracteres que não sejam RegEx é efectuada como literal e não é necessário adicionar o operador de escape. Se pretender efectuar a correspondência do ponto final num nome de domínio, é necessário adicionar o carácter de escape a este ponto final listando \.. A expressão de correspondência contoso\.com corresponderá a contoso.com.

  • Para as opções de Domínio, a correspondência de domínio age com base na presença do domínio do remetente ou destinatário num cabeçalho de correio electrónico. Por exemplo, uma regra para intervir em contoso.com afectará também as mensagens do subdomínio 123.contoso.com. Se apenas pretender efectuar a correspondência do nome de domínio sem quaisquer subdomínios, pode configurar a regra utilizando o metacarácter de acento circunflexo ^contoso.com. A regra configurada desta forma corresponderá apenas às mensagens de correio electrónico enviadas ou recebidas de contoso.com e não de 123.contoso.com.

  • Se pretender procurar termos, por exemplo, no assunto, corpo ou nome de ficheiro de anexo de uma mensagem de correio electrónico, que terminem com a cadeia "dão", combine o asterisco e o ponto final para efectuar a correspondência. Por exemplo, o termo de pesquisa .*dão devolverá resultados como "multidão" ou "escuridão".

  • Um ponto final seguido de um asterisco * representa zero ou mais caracteres. Por exemplo, a expressão de correspondência contoso\..* corresponderá a "contoso.com", mas também a "contoso.microsoft.com" ou "contoso.meudominio.ca", etc. Para efectuar a correspondência apenas do Domínio de Nível Superior (TLD) de um domínio, é necessária uma expressão de correspondência mais precisa. contoso\.\w\w\w$ corresponderá a "contoso.com", "contoso.org" ou "contoso.tv1", mas não corresponderá a domínios com mais ou menos de 3 caracteres alfanuméricos a seguir ao ponto final.

As expressões regulares, abreviadas como RegEx, são uma linguagem formal padrão utilizada em muitos sistemas e linguagens de programação. As expressões regulares podem ser poderosas se forem utilizadas adequadamente. Pode encontrar mais informações, incluindo definição da sintaxe, exemplos e tutoriais, em muitos Web sites, como os seguintes:

MSDN Introdução às Expressões Regulares (em inglês)

Web site Expressões Regulares.Info (em inglês)

Web site Regular Expression Library

 
Mostrar: