Usando expressões regulares
Use expressões regulares (regex) para definir um padrão de URL que represente mais de um URL de seu aplicativo empresarial e ao qual você possa aplicar a mesma política de autenticação e a mesma política de autorização.
Crie uma lista de todos os URLs do seu aplicativo e, em seguida, defina padrões de URL que mapeiem URLs semelhantes, nos quais você deseja definir políticas comuns de autenticação e autorização.
O mecanismo de autorização do App Gateway suporta todos os tokens disponíveis para criar expressões regulares, como Classes de Caractere, Âncoras, Caracteres de Escape, Grupo e Referências, Aparência, Quantificadores e Alternância, bem como Substituição.
Operador | Descrição | Exemplo |
---|---|---|
Operador Match-any-character (. ) |
O caractere de ponto representa esse operador. | a.b corresponde a qualquer string de três caracteres que comece com a e termine com b |
Operador Match-zero-or-more (* ) |
Esse operador repete a menor expressão regular anterior possível quantas vezes forem necessárias (incluindo zero) para corresponder ao padrão | a* corresponde a qualquer string formada por zero ou mais a . Em outro exemplo, fo* tem um o repetido, não um fo repetido. Portanto, fo* corresponde a f , fo , foo , e assim por diante. |
Operador Corresponder a um ou mais (+ ) |
Esse operador é semelhante ao operador de correspondência com zero ou mais, exceto que pelo menos uma vez ele repete a expressão regular anterior. | ca+r corresponde a car e caaaar , mas não a cr |
Operador Corresponder a zero ou um (? ) |
Esse operador é semelhante ao operador de correspondência com zero ou uma, exceto pelo fato de repetir a expressão regular anterior uma vez ou nenhuma. | ca?r corresponde a car e cr , mas nada mais. |
Negar (^ ) |
Negar uma expressão. | ^a corresponde a qualquer caractere, exceto a |
Operadores de Agrupamento ((...) ) |
Regex trata expressões entre parênteses da mesma forma que a matemática e as linguagens de programação tratam uma expressão entre parênteses como unidade. As expressões são processadas antes da expressão fora do parêntese. | f(a|b)a corresponde a faa e fba , o que significa que a operação a|b é processada antes do restante. |
Operador de Alternância (| ) |
As alternativas correspondem a uma das opções de expressões regulares: se você colocar um ou mais caracteres representando o operador de alternância entre duas expressões regulares quaisquer a e b , o resultado corresponderá à união das strings que a e b correspondem. |
Como outro exemplo, |
Operadores de Lista ([ ... ] e [^ ... ] ) |
Uma lista correspondente corresponde a um único caractere representado por um dos itens da lista. Um item é um caractere, uma expressão de classe de caractere ou uma expressão de intervalo. As listas não correspondentes são semelhantes às listas correspondentes, exceto pelo fato de corresponderem a um único caractere não representado por um dos itens da lista. |
Como exemplo não correspondente, |
Operador de Intervalo (- ) |
Representa os caracteres que estão entre dois elementos na sequência de colagem atual. | [a-f] representa todos os caracteres de a a f inclusive. |
Dígito (\d ) |
Corresponde a qualquer caractere de dígito (0 a 9). | O mesmo que [0-9] |
Sem dígito (\D ) |
Corresponde a qualquer caractere que não seja um caractere de dígito (0 a 9). | O mesmo que [^0-9] |
Escape (\ ) |
Torna o próximo caractere na expressão o próprio caractere, mas não um operador. | \. significa ponto, não o operador Corresponder a qualquer caractere. |
Uso de Expressão Regular
Por exemplo, se você quiser permitir que somente usuários autenticados acessem qualquer página do aplicativo que comece com my
e esteja no caminho /mybank
, poderá usar a expressão regular /mybank/my.*
O ponto (.) e o asterisco (*) juntos representam qualquer sequência de zero ou mais caracteres consecutivos após o prefixo my
.
Neste exemplo, os URLs /mybank/myCredits
e /mybank/myDebits
correspondem ao padrão /mybank/my.*
, mas /mybank/about
não.