Reguläre Ausdrücke verwenden
Verwenden Sie reguläre Ausdrücke, um ein URL-Muster zu definieren, das mehrere URLs der Unternehmensanwendung darstellt, für die Sie dieselbe Authentifizierungs-Policy und Autorisierungs-Policy anwenden können.
Erstellen Sie eine Liste aller URLs für die Anwendung, und definieren Sie dann URL-Muster, die ähnliche URLs zuordnen, in denen Sie gemeinsame Authentifizierungs- und Autorisierungs-Policys definieren möchten.
Die Autorisierungs-Engine des App-Gateways unterstützt alle verfügbaren Token zum Erstellen regulärer Ausdrücke, wie Zeichenklassen, Anker, Escapezeichen, Gruppe und Referenzen, Lookaround, Quantifizierer und Alternative und Substitution.
Operator | Beschreibung | Beispiel |
---|---|---|
Operator für beliebiges Zeichen (. ) |
Dieser Operator wird vom Punktzeichen dargestellt. | a.b entspricht jeder aus drei Zeichen bestehenden Zeichenfolge, die mit a beginnt und mit b endet. |
Operator für null oder mehr Zeichen (* ) |
Dieser Operator wiederholt den kleinstmöglichen vorherigen regulären Ausdruck so oft wie erforderlich (einschließlich nullmal), damit er dem Muster entspricht. | a* entspricht jeder Zeichenfolge, die aus null oder mehr a s besteht. In einem anderen Beispiel bedeutet fo* ein sich wiederholendes o , kein sich wiederholendes fo . Daher entspricht fo* f , fo , foo usw. |
Operator für ein oder mehrere Zeichen (+ ) |
Dieser Operator ähnelt dem Operator für null oder mehr Zeichen, wiederholt den vorherigen regulären Ausdruck aber mindestens einmal. | ca+r entspricht car und caaaar , jedoch nicht cr . |
Operator für Übereinstimmung mit Null oder einem (? ) |
Dieser Operator ähnelt dem Operator für null oder mehr Zeichen, wiederholt den vorherigen regulären Ausdruck aber einmal oder überhaupt nicht. | ca?r entspricht sowohl car als auch cr , aber keiner anderen Zeichenfolge. |
Negieren (^ ) |
Negieren Sie einen Ausdruck. | ^a entspricht jedem Zeichen mit Ausnahme von a . |
Gruppierungsoperatoren ((...) ) |
In regulären Ausdrücken werden Ausdrücke in Klammern als Mathematik behandelt, in Programmiersprachen dagegen als Einheit. Die Ausdrücke werden vor dem Ausdruck außerhalb der Klammer verarbeitet. | f(a|b)a entspricht faa und fba . Das bedeutet, dass der Vorgang a|b vor dem Rest verarbeitet wird. |
Alternativer Operator (| ) |
Alternativen gleichen einen von mehreren regulären Ausdrücken ab: Wenn Sie Zeichen für den Alternativoperator zwischen zwei reguläre Ausdrücke a und b setzen, entspricht das Ergebnis der Vereinigungsmenge der Zeichenfolgen, die a und b entsprechen. |
Weiteres Beispiel: |
Listenoperatoren ([ ... ] und [^ ... ] ) |
Eine übereinstimmende Liste entspricht einem einzelnen Zeichen, das durch eines der Listenelemente dargestellt wird. Ein Element ist ein Zeichen, ein Zeichenklassenausdruck oder ein Bereichsausdruck. Nicht übereinstimmende Listen ähneln übereinstimmenden Listen, mit der Ausnahme, dass sie mit einem einzelnen Zeichen übereinstimmen, das durch keines der Listenelemente dargestellt wird. |
Beispiel für nicht übereinstimmende Liste: |
Bereichsoperator (- ) |
Stellt die Zeichen dar, die zwischen zwei Elementen in der aktuellen Sortierfolge liegen. | [a-f] stellt alle Zeichen von a bis f (einschließlich) dar. |
Ziffer (\d ) |
Entspricht jeder beliebigen Ziffer (0-9). | Identisch mit [0-9] . |
Keine Ziffer (\D ) |
Entspricht einem beliebigen Zeichen, das keine Ziffer ist (0-9). | Identisch mit [^0-9] . |
Escape (\ ) |
Das nächste Zeichen im Ausdruck steht für das Zeichen selbst, aber keinen Operator. | \. ist ein Punkt und nicht der Operator für beliebige Zeichen. |
Verwendung regulärer Ausdrücke
Beispiel: Wenn Sie nur authentifizierten Benutzern Zugriff auf die Seiten der Anwendung gewähren möchten, die mit my
beginnen und sich unter dem Pfad /mybank
befinden, können Sie den regulären Ausdruck /mybank/my.*
verwenden.
Der Punkt (.) und das Sternchen (*) stehen zusammen für eine beliebige Abfolge von null oder mehr aufeinander folgenden Zeichen nach dem Präfix my
.
In diesem Beispiel entsprechen die URLs /mybank/myCredits
und /mybank/myDebits
dem Muster /mybank/my.*
, /mybank/about
jedoch nicht.