Indeling en syntaxis van voorwaarden voor Azure-roltoewijzing
Een voorwaarde is een extra controle die u desgewenst aan uw roltoewijzing kunt toevoegen voor geavanceerder toegangsbeheer. U kunt bijvoorbeeld een voorwaarde toevoegen waarvoor een object een specifieke tag moet hebben om het object te lezen. In dit artikel worden de indeling en syntaxis van voorwaarden voor roltoewijzing beschreven.
Opmaak van voorwaarde
Om beter inzicht te krijgen in de voorwaarden voor roltoewijzing, helpt het om de indeling te bekijken.
Eenvoudige voorwaarde
De meest elementaire voorwaarde bestaat uit een gerichte actie en een expressie. Een actie is een bewerking die een gebruiker op een resourcetype kan uitvoeren. Een expressie is een instructie die waar of onwaar evalueert, waarmee wordt bepaald of de actie mag worden uitgevoerd.
Hieronder ziet u de indeling van een eenvoudige voorwaarde.
(
(
!(ActionMatches{'<action>'})
)
OR
(
<attribute> <operator> <value>
)
)
De volgende voorwaarde heeft een actie van 'Een blob lezen'. De expressie controleert of de containernaam blobs-example-container is.
(
(
!(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read'})
)
OR
(
@Resource[Microsoft.Storage/storageAccounts/blobServices/containers:name]
StringEquals 'blobs-example-container'
)
)
Hoe een voorwaarde wordt geëvalueerd
Als een gebruiker probeert een actie uit te voeren in de roltoewijzing die dat niet <action>
is, !(ActionMatches)
resulteert dit in waar en resulteert de algehele voorwaarde in waar, zodat de actie kan worden uitgevoerd.
Als een gebruiker probeert uit te voeren <action>
in de roltoewijzing, !(ActionMatches)
resulteert dit in onwaar, zodat de expressie wordt geëvalueerd. Als de expressie waar oplevert, resulteert de algehele voorwaarde in waar om toe te staan <action>
dat deze kan worden uitgevoerd. <action>
Anders mag dit niet worden uitgevoerd.
In de volgende pseudocode ziet u een andere manier waarop u deze voorwaarde kunt lezen.
if a user tries to perform an action in the role assignment that does not match <action>
{
Allow action to be performed
}
else
{
if <attribute> <operator> <value> is true
{
Allow <action> to be performed
}
else
{
Do not allow <action> to be performed
}
}
Suboperations
Sommige acties hebben suboperaties. De gegevensactie bevat bijvoorbeeld Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read
de suboperation 'Lijst-blobs'. Voorwaarden met suboperations hebben de volgende indeling.
(
(
!(ActionMatches{'<action>'}
AND
SubOperationMatches{'<subOperation>'})
)
OR
(
<attribute> <operator> <value>
)
)
Meerdere acties
Een voorwaarde kan meerdere acties bevatten die u wilt toestaan als de voorwaarde waar is. Als u meerdere acties voor één voorwaarde selecteert, zijn er mogelijk minder kenmerken waaruit u kunt kiezen voor uw voorwaarde, omdat de kenmerken beschikbaar moeten zijn voor de geselecteerde acties.
(
(
!(ActionMatches{'<action>'})
AND
!(ActionMatches{'<action>'})
)
OR
(
<attribute> <operator> <value>
)
)
Meerdere expressies
Een voorwaarde kan meerdere expressies bevatten. Afhankelijk van de operator kunnen kenmerken worden gecontroleerd op meerdere waarden.
(
(
!(ActionMatches{'<action>'})
)
OR
(
<attribute> <operator> <value>
AND | OR
<attribute> <operator> {<value>, <value>, <value>}
AND | OR
<attribute> <operator> <value>
)
)
Meerdere voorwaarden
U kunt voorwaarden ook combineren om meerdere acties te richten.
(
(
!(ActionMatches{'<action>'})
)
OR
(
<attribute> <operator> <value>
AND | OR
<attribute> <operator> {<value>, <value>, <value>}
AND | OR
<attribute> <operator> <value>
)
)
AND
(
(
!(ActionMatches{'<action>'})
)
OR
(
<attribute> <operator> <value>
AND | OR
<attribute> <operator> <value>
)
)
Voorwaardesyntaxis
Hieronder ziet u de syntaxis voor een roltoewijzingsvoorwaarde.
(
(
!(ActionMatches{'<action>'} AND SubOperationMatches{'<subOperation>'})
AND
!(ActionMatches{'<action>'} AND SubOperationMatches{'<subOperation>'})
AND
...
)
OR
(
<attribute> <operator> {<value, <value>, ...}
AND | OR
<attribute> <operator> {<value>, <value>, ...}
AND | OR
...
)
)
AND
(
(
!(ActionMatches{'<action>'} AND SubOperationMatches{'<subOperation>'})
AND
!(ActionMatches{'<action>'} AND SubOperationMatches{'<subOperation>'})
AND
...
)
OR
(
<attribute> <operator> {<value, <value>, ...}
AND | OR
<attribute> <operator> {<value>, <value>, ...}
AND | OR
...
)
)
AND
...
Acties
Op dit moment kunnen voorwaarden worden toegevoegd aan ingebouwde of aangepaste roltoewijzingen met blobopslag- of wachtrijopslaggegevensacties. Deze omvatten de volgende ingebouwde rollen:
- Inzender voor Storage Blob-gegevens
- Eigenaar van opslagblobgegevens
- Lezer voor opslagblobgegevens
- Inzender voor opslagwachtrijgegevens
- Gegevensverwerker voor opslagwachtrijgegevens
- Afzender van opslagwachtrijgegevensbericht
- Opslagwachtrijgegevenslezer
Zie voor een lijst met de opslagacties die u in voorwaarden kunt gebruiken:
- Acties en kenmerken voor voorwaarden voor Azure-roltoewijzing voor Azure Blob Storage
- Acties en kenmerken voor voorwaarden voor Azure-roltoewijzing voor Azure Queue Storage.
Kenmerken
Afhankelijk van de geselecteerde acties kan het kenmerk op verschillende plaatsen worden gevonden. Als u meerdere acties voor één voorwaarde selecteert, zijn er mogelijk minder kenmerken waaruit u kunt kiezen voor uw voorwaarde, omdat de kenmerken beschikbaar moeten zijn voor alle geselecteerde acties. Als u een kenmerk wilt opgeven, moet u de bron als voorvoegsel opnemen.
Kenmerkbron | Beschrijving | Code |
---|---|---|
Omgeving | Het kenmerk is gekoppeld aan de omgeving van de aanvraag, zoals de netwerkoorsprong van de aanvraag of de huidige datum en tijd. |
@Environment |
Voornaamste | Kenmerk is een aangepast beveiligingskenmerk dat is toegewezen aan de principal, zoals een gebruiker of bedrijfstoepassing (service-principal). | @Principal |
Aanvragen | Het kenmerk maakt deel uit van de actieaanvraag, zoals het instellen van de blob-indextag. | @Request |
Resource | Kenmerk is een eigenschap van de resource, zoals een containernaam. | @Resource |
Zie voor een volledige lijst met de opslagkenmerken die u in voorwaarden kunt gebruiken:
Omgevingskenmerken
Omgevingskenmerken zijn gekoppeld aan de omstandigheden waaronder de toegangsaanvraag wordt gedaan, zoals de datum en tijd van de dag of de netwerkomgeving. De netwerkomgeving kan zijn of de toegang zich via een specifiek privé-eindpunt of een subnet van een virtueel netwerk bevindt, of misschien via een privékoppeling.
De volgende tabel bevat de ondersteunde omgevingskenmerken voor voorwaarden.
Display name | Beschrijving | Kenmerk | Type |
---|---|---|---|
Is private link1 | Gebruik dit kenmerk in voorwaarden om toegang te vereisen via een privékoppeling. | isPrivateLink |
Booleaanse waarde |
Privé-eindpunt1,2 | Gebruik dit kenmerk in voorwaarden om de toegang te beperken tot een specifiek privé-eindpunt. | Microsoft.Network/privateEndpoints |
Tekenreeks |
Subnet1,3 | Gebruik dit kenmerk in voorwaarden om de toegang van een specifiek subnet te beperken. | Microsoft.Network/virtualNetworks/subnets |
Tekenreeks |
UTC nu | Gebruik dit kenmerk in voorwaarden om de toegang tot objecten tijdens specifieke perioden te beperken. | UtcNow |
Datum/tijd |
1 Voor kopieerbewerkingen zijn de Is private link
, Private endpoint
en Subnet
kenmerken alleen van toepassing op de bestemming, zoals een opslagaccount, niet de bron. Voor meer informatie over de kopieerbewerkingen waarvoor dit van toepassing is, selecteert u elk kenmerk in de tabel voor meer informatie.
2 U kunt het Private endpoint
kenmerk alleen gebruiken als u momenteel ten minste één privé-eindpunt hebt geconfigureerd in uw abonnement.
3 U kunt het Subnet
kenmerk alleen gebruiken als u momenteel ten minste één subnet voor een virtueel netwerk hebt met behulp van service-eindpunten die zijn geconfigureerd in uw abonnement.
Principal-kenmerken
Principal-kenmerken zijn aangepaste beveiligingskenmerken die zijn toegewezen aan de beveiligingsprincipaal die toegang tot een resource aanvraagt. De beveiligingsprincipaal kan een gebruiker of een bedrijfstoepassing (service-principal) zijn.
Als u principal-kenmerken wilt gebruiken, moet u het volgende hebben:
- Microsoft Entra-machtigingen voor de aangemelde gebruiker, zoals de rol Kenmerktoewijzingsbeheerder
- Aangepaste beveiligingskenmerken die zijn gedefinieerd in Microsoft Entra-id
Zie voor meer informatie over aangepaste beveiligingskenmerken:
- Aangepaste beveiligingskenmerken toevoegen of deactiveren in Microsoft Entra-id
- Leestoegang tot blobs toestaan op basis van tags en aangepaste beveiligingskenmerken
- Principal wordt niet weergegeven in kenmerkbron
Kenmerken aanvragen
Aanvraagkenmerken zijn gekoppeld aan de criteria die zijn opgegeven in een toegangsaanvraag, zoals het opgegeven voorvoegsel van blobs die moeten worden weergegeven.
Resourcekenmerken
Resourcekenmerken zijn gekoppeld aan het object waaraan toegang wordt aangevraagd, zoals de naam van het opslagaccount, de containernaam of de hiërarchische naamruimte die is ingeschakeld voor het opslagaccount.
Functieoperators
In deze sectie worden de functieoperators weergegeven die beschikbaar zijn om voorwaarden samen te stellen.
ActionMatches
Eigenschappen | Weergegeven als |
---|---|
Operator | ActionMatches |
Beschrijving | Controleert of de huidige actie overeenkomt met het opgegeven actiepatroon. |
Voorbeelden | ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read'} Als de actie die wordt gecontroleerd gelijk is aan 'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read', dan waar ActionMatches{'Microsoft.Authorization/roleAssignments/*'} Als de actie die wordt gecontroleerd gelijk is aan 'Microsoft.Authorization/roleAssignments/write', dan waar ActionMatches{'Microsoft.Authorization/roleDefinitions/*'} Als de actie die wordt gecontroleerd gelijk is aan 'Microsoft.Authorization/roleAssignments/write', dan false |
SubOperationMatches
Eigenschappen | Weergegeven als |
---|---|
Operator | SubOperationMatches |
Beschrijving | Controleert of de huidige suboperation overeenkomt met het opgegeven suboperation-patroon. |
Voorbeelden | SubOperationMatches{'Blob.List'} |
Exists
Eigenschappen | Weergegeven als |
---|---|
Operator | Exists |
Beschrijving | Controleert of het opgegeven kenmerk bestaat. |
Voorbeelden | Exists @Request[Microsoft.Storage/storageAccounts/blobServices/containers/blobs:snapshot] |
Kenmerken ondersteunen 1 | Naam van versleutelingsbereik Momentopname Versie-id |
1 De Exists
operator wordt alleen ondersteund voor deze kenmerken in de opbouwfunctie voor visuele ABAC-voorwaarden in Azure Portal. U kunt de Exists
operator toevoegen aan elk kenmerk met behulp van andere hulpprogramma's, zoals PowerShell, de Azure CLI, de REST API en de code-editor voor voorwaarden in Azure Portal.
Logische operators
In deze sectie worden de logische operators vermeld die beschikbaar zijn om voorwaarden samen te stellen.
And
Eigenschappen | Weergegeven als |
---|---|
Operators | AND && |
Beschrijving | En operator. |
Voorbeelden | !(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read'} AND NOT SubOperationMatches{'Blob.List'}) |
Or
Eigenschappen | Weergegeven als |
---|---|
Operators | OR || |
Beschrijving | Of operator. |
Voorbeelden | @Request[Microsoft.Storage/storageAccounts/blobServices/containers/blobs:versionId] DateTimeEquals '2022-06-01T00:00:00.0Z' OR NOT Exists @Request[Microsoft.Storage/storageAccounts/blobServices/containers/blobs:versionId |
Not
Eigenschappen | Weergegeven als |
---|---|
Operators | NOT ! |
Beschrijving | Not of negation operator. |
Voorbeelden | NOT Exists @Request[Microsoft.Storage/storageAccounts/blobServices/containers/blobs:versionId] |
Booleaanse vergelijkingsoperatoren
In deze sectie worden de Booleaanse vergelijkingsoperatoren vermeld die beschikbaar zijn om voorwaarden te maken.
Eigenschappen | Weergegeven als |
---|---|
Operators | BoolEquals BoolNotEquals |
Beschrijving | Booleaanse vergelijking. |
Voorbeelden | @Resource[Microsoft.Storage/storageAccounts:isHnsEnabled] BoolEquals true |
Vergelijkingsoperatoren voor tekenreeksen
In deze sectie worden de operatoren voor tekenreeksvergelijking weergegeven die beschikbaar zijn om voorwaarden samen te stellen.
StringEquals
Eigenschappen | Weergegeven als |
---|---|
Operators | StringEquals StringEqualsIgnoreCase |
Beschrijving | Hoofdlettergevoelige (of hoofdlettergevoelige) overeenkomst. De waarden moeten exact overeenkomen met de tekenreeks. |
Voorbeelden | @Request[Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags:Project<$key_case_sensitive$>] StringEquals 'Cascade' |
StringNotEquals
Eigenschappen | Weergegeven als |
---|---|
Operators | StringNotEquals StringNotEqualsIgnoreCase |
Beschrijving | Negatie van StringEquals (of StringEqualsIgnoreCase ) operator. |
StringStartsWith
Eigenschappen | Weergegeven als |
---|---|
Operators | StringStartsWith StringStartsWithIgnoreCase |
Beschrijving | Hoofdlettergevoelige (of hoofdlettergevoelige) overeenkomst. De waarden beginnen met de tekenreeks. |
StringNotStartsWith
Eigenschappen | Weergegeven als |
---|---|
Operators | StringNotStartsWith StringNotStartsWithIgnoreCase |
Beschrijving | Negatie van StringStartsWith (of StringStartsWithIgnoreCase ) operator. |
StringLike
Eigenschappen | Weergegeven als |
---|---|
Operators | StringLike StringLikeIgnoreCase |
Beschrijving | Hoofdlettergevoelige (of hoofdlettergevoelige) overeenkomst. De waarden kunnen een jokerteken met meerdere tekens (* ) of een jokerteken () bevatten die ergens in de tekenreeks overeenkomt met een jokerteken (? ). Indien nodig kunnen deze tekens worden ontsnapt door een backslash \* en \? . |
Voorbeelden | @Resource[Microsoft.Storage/storageAccounts/blobServices/containers/blobs:path] StringLike 'readonly/*' Resource[name1] StringLike 'a*c?' Als Resource[name1] gelijk is aan 'abcd', dan waar Resource[name1] StringLike 'A*C?' Als Resource[naam1] gelijk is aan 'abcd', dan onwaar Resource[name1] StringLike 'a*c' Als Resource[naam1] gelijk is aan 'abcd', dan onwaar |
StringNotLike
Eigenschappen | Weergegeven als |
---|---|
Operators | StringNotLike StringNotLikeIgnoreCase |
Beschrijving | Negatie van StringLike (of StringLikeIgnoreCase ) operator. |
Operatoren voor numerieke vergelijking
In deze sectie worden de numerieke vergelijkingsoperatoren weergegeven die beschikbaar zijn om voorwaarden samen te stellen.
Eigenschappen | Weergegeven als |
---|---|
Operators | NumericEquals NumericNotEquals NumericGreaterThan NumericGreaterThanEquals NumericLessThan NumericLessThanEquals |
Beschrijving | Nummerkoppeling. Alleen gehele getallen worden ondersteund. |
Vergelijkingsoperatoren voor Datum/tijd
In deze sectie worden de vergelijkingsoperatoren voor datum/tijd weergegeven die beschikbaar zijn om voorwaarden samen te stellen.
Eigenschappen | Weergegeven als |
---|---|
Operators | DateTimeEquals DateTimeNotEquals DateTimeGreaterThan DateTimeGreaterThanEquals DateTimeLessThan DateTimeLessThanEquals |
Beschrijving | Volledige precisiecontrole met de notatie: yyyy-mm-ddThh:mm:ss.mmmmmmmZ . Wordt nu gebruikt voor blobversie-id, blobmomentopname en UTC. |
Voorbeelden | @Request[Microsoft.Storage/storageAccounts/blobServices/containers/blobs:versionId] DateTimeEquals '2022-06-01T00:00:00.0Z' |
GUID-vergelijkingsoperatoren
In deze sectie worden de GUID-vergelijkingsoperatoren (Globally Unique Identifier) vermeld die beschikbaar zijn om voorwaarden samen te stellen.
Eigenschappen | Weergegeven als |
---|---|
Operators | GuidEquals GuidNotEquals |
Beschrijving | Hoofdlettergevoelige overeenkomsten met de notatie: 00000000-0000-0000-0000-000000000000 . Wordt gebruikt om een resource te identificeren, zoals principal-id of roldefinitie-id. |
Voorbeelden |
Vergelijkingsoperatoren tussen producten
In deze sectie worden de vergelijkingsoperatoren voor verschillende producten vermeld die beschikbaar zijn om voorwaarden samen te stellen.
ForAnyOfAnyValues
Eigenschappen | Weergegeven als |
---|---|
Operators | ForAnyOfAnyValues:StringEquals ForAnyOfAnyValues:StringEqualsIgnoreCase ForAnyOfAnyValues:StringNotEquals ForAnyOfAnyValues:StringNotEqualsIgnoreCase ForAnyOfAnyValues:StringLike ForAnyOfAnyValues:StringLikeIgnoreCase ForAnyOfAnyValues:StringNotLike ForAnyOfAnyValues:StringNotLikeIgnoreCase ForAnyOfAnyValues:NumericEquals ForAnyOfAnyValues:NumericNotEquals ForAnyOfAnyValues:NumericGreaterThan ForAnyOfAnyValues:NumericGreaterThanEquals ForAnyOfAnyValues:NumericLessThan ForAnyOfAnyValues:NumericLessThanEquals ForAnyOfAnyValues:GuidEquals ForAnyOfAnyValues:GuidNotEquals |
Beschrijving | Als ten minste één waarde aan de linkerkant voldoet aan de vergelijking met ten minste één waarde aan de rechterkant, resulteert de expressie in waar. Heeft de indeling: ForAnyOfAnyValues:<BooleanFunction> . Ondersteunt meerdere tekenreeksen en getallen. |
Voorbeelden | @Resource[Microsoft.Storage/storageAccounts/encryptionScopes:name] ForAnyOfAnyValues:StringEquals {'validScope1', 'validScope2'} Als de naam van het versleutelingsbereik gelijk is validScope1 aan of validScope2 , dan waar.{'red', 'blue'} ForAnyOfAnyValues:StringEquals {'blue', 'green'} true {'red', 'blue'} ForAnyOfAnyValues:StringEquals {'orange', 'green'} false |
ForAllOfAnyValues
Eigenschappen | Weergegeven als |
---|---|
Operators | ForAllOfAnyValues:StringEquals ForAllOfAnyValues:StringEqualsIgnoreCase ForAllOfAnyValues:StringNotEquals ForAllOfAnyValues:StringNotEqualsIgnoreCase ForAllOfAnyValues:StringLike ForAllOfAnyValues:StringLikeIgnoreCase ForAllOfAnyValues:StringNotLike ForAllOfAnyValues:StringNotLikeIgnoreCase ForAllOfAnyValues:NumericEquals ForAllOfAnyValues:NumericNotEquals ForAllOfAnyValues:NumericGreaterThan ForAllOfAnyValues:NumericGreaterThanEquals ForAllOfAnyValues:NumericLessThan ForAllOfAnyValues:NumericLessThanEquals ForAllOfAnyValues:GuidEquals ForAllOfAnyValues:GuidNotEquals |
Beschrijving | Als elke waarde aan de linkerkant voldoet aan de vergelijking met ten minste één waarde aan de rechterkant, resulteert de expressie in waar. Heeft de indeling: ForAllOfAnyValues:<BooleanFunction> . Ondersteunt meerdere tekenreeksen en getallen. |
Voorbeelden | @Request[Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags:Project<$key_case_sensitive$>] ForAllOfAnyValues:StringEquals {'Cascade', 'Baker', 'Skagit'} {'red', 'blue'} ForAllOfAnyValues:StringEquals {'orange', 'red', 'blue'} true {'red', 'blue'} ForAllOfAnyValues:StringEquals {'red', 'green'} false |
ForAnyOfAllValues
Eigenschappen | Weergegeven als |
---|---|
Operators | ForAnyOfAllValues:StringEquals ForAnyOfAllValues:StringEqualsIgnoreCase ForAnyOfAllValues:StringNotEquals ForAnyOfAllValues:StringNotEqualsIgnoreCase ForAnyOfAllValues:StringLike ForAnyOfAllValues:StringLikeIgnoreCase ForAnyOfAllValues:StringNotLike ForAnyOfAllValues:StringNotLikeIgnoreCase ForAnyOfAllValues:NumericEquals ForAnyOfAllValues:NumericNotEquals ForAnyOfAllValues:NumericGreaterThan ForAnyOfAllValues:NumericGreaterThanEquals ForAnyOfAllValues:NumericLessThan ForAnyOfAllValues:NumericLessThanEquals ForAnyOfAllValues:GuidEquals ForAnyOfAllValues:GuidNotEquals |
Beschrijving | Als ten minste één waarde aan de linkerkant voldoet aan de vergelijking met elke waarde aan de rechterkant, resulteert de expressie in waar. Heeft de indeling: ForAnyOfAllValues:<BooleanFunction> . Ondersteunt meerdere tekenreeksen en getallen. |
Voorbeelden | {10, 20} ForAnyOfAllValues:NumericLessThan {15, 18} true |
ForAllOfAllValues
Eigenschappen | Weergegeven als |
---|---|
Operators | ForAllOfAllValues:StringEquals ForAllOfAllValues:StringEqualsIgnoreCase ForAllOfAllValues:StringNotEquals ForAllOfAllValues:StringNotEqualsIgnoreCase ForAllOfAllValues:StringLike ForAllOfAllValues:StringLikeIgnoreCase ForAllOfAllValues:StringNotLike ForAllOfAllValues:StringNotLikeIgnoreCase ForAllOfAllValues:NumericEquals ForAllOfAllValues:NumericNotEquals ForAllOfAllValues:NumericGreaterThan ForAllOfAllValues:NumericGreaterThanEquals ForAllOfAllValues:NumericLessThan ForAllOfAllValues:NumericLessThanEquals ForAllOfAllValues:GuidEquals ForAllOfAllValues:GuidNotEquals |
Beschrijving | Als elke waarde aan de linkerkant voldoet aan de vergelijking met elke waarde aan de rechterkant, resulteert de expressie in waar. Heeft de indeling: ForAllOfAllValues:<BooleanFunction> . Ondersteunt meerdere tekenreeksen en getallen. |
Voorbeelden | {10, 20} ForAllOfAllValues:NumericLessThan {5, 15, 18} false {10, 20} ForAllOfAllValues:NumericLessThan {25, 30} true {10, 20} ForAllOfAllValues:NumericLessThan {15, 25, 30} false |
Speciale tekens
Teken | Beschrijving |
---|---|
* |
Een sterretje (*) vertegenwoordigt een jokertekenovereenkomst met meerdere tekens die kan worden gebruikt met Like operators. Indien nodig kunt u een sterretje ontsnappen door een backslash \* toe te voegen. |
? |
Een vraagteken (?) vertegenwoordigt een jokerteken dat kan worden gebruikt met Like operators. Indien nodig kunt u een vraagteken ontsnappen door een backslash \? toe te voegen. |
$ |
Een dollarteken ($) wordt gebruikt om tagsleutels af te bakenen. Als in Azure PowerShell een tekenreeks tussen dubbele aanhalingstekens (") is opgenomen, moet u het voorvoegsel voorzien van een backtick ('). Voorbeeld: tags:Project<`$key_case_sensitive`$> . |
Groepering en prioriteit
Als u drie of meer expressies hebt voor een gerichte actie met verschillende operatoren tussen de expressies, is de evaluatievolgorde niet eenduidig. U gebruikt haakjes ()
om expressies te groeperen en de volgorde op te geven waarin de expressies worden geëvalueerd. Expressies tussen haakjes hebben een hogere prioriteit. Als u bijvoorbeeld de volgende expressie hebt:
a AND b OR c
U moet haakjes toevoegen op een van de volgende manieren:
(a AND b) OR c
a AND (b OR c)