Deklarace identity a pravidla deklarací identity

Abyste porozuměli gramatikě pravidel deklarací identity, musíte nejprve pochopit deklarace zásad ověření identity.

Deklarovat

Deklarace identity je sada vlastností seskupených dohromady za účelem poskytnutí relevantních informací. Pro Azure Attestation deklarace identity obsahuje následující vlastnosti:

  • type: Řetězcová hodnota, která představuje typ deklarace identity.
  • value: Logická hodnota, celé číslo nebo řetězcová hodnota, která představuje hodnotu deklarace identity.
  • valueType: Datový typ informací uložených ve vlastnosti value. Podporované typy jsou String, Integer a Boolean. Pokud není definována, výchozí hodnota bude String.
  • vystavitel: Informace týkající se vystavitele deklarace identity. Vystavitel bude jedním z následujících typů:
    • AttestationService: Některé deklarace identity jsou k dispozici autorovi zásad Azure Attestation, které může autor zásady ověření identity použít k vytvoření příslušné zásady.
    • AttestationPolicy: Zásada (definovaná správcem) může během zpracování přidávat deklarace identity do příchozích důkazů. Vystavitel v tomto případě je nastavený na AttestationPolicy.
    • CustomClaim: Attestor (klient) může také přidat další deklarace identity k důkazu ověření identity. Vystavitel v tomto případě je nastavený na CustomClaim.

Pokud není definováno. výchozí hodnota bude CustomClaim.

Pravidlo deklarace identity

Příchozí sadu deklarací identity používá modul zásad k výpočtu výsledku ověření identity. Pravidlo deklarace identity je sada podmínek sloužících k ověření příchozích deklarací identity a provedení definované akce.

Conditions list => Action (Claim)

Azure Attestation vyhodnocení pravidla deklarace identity zahrnuje následující kroky:

  • Pokud seznam podmínek neexistuje, spusťte akci se zadanou deklarací identity.
  • V opačném případě vyhodnoťte podmínky ze seznamu podmínek.
  • Pokud se seznam podmínek vyhodnotí jako false, zastavte. V opačném případě pokračujte.

Podmínky v pravidle deklarace identity slouží k určení, jestli je potřeba provést akci. Seznam podmínek je posloupnost podmínek oddělených operátorem "&&".

Seznam podmínek je strukturovaný takto:

Condition && Condition && ...

Podmínka je strukturovaná takto:

Identifier:[ClaimPropertyCondition, ClaimPropertyCondition,…]

Seznam podmínek se skládá z jednotlivých podmínek pro různé vlastnosti deklarace identity. Podmínka může mít volitelný identifikátor, který lze použít k odkazování deklarace identity nebo s, která splňují podmínku. Tento odkaz lze použít v jiných podmínkách nebo v akci stejného pravidla.

Například

F1:[type=="OSName" , issuer=="CustomClaim"] && 
[type=="OSName" , issuer=="AttestationService", value== F1.value ] 
=> issueproperty(type="report_validity_in_minutes", value=1440);

F1:[type=="OSName" , issuer=="CustomClaim"] && 
C2:[type=="OSName" , issuer=="AttestationService", value== F1.value ] 
=> issue(claim = C2);

Následují operátory, které lze použít ke kontrole podmínek:

Valuetype Podporované operace
Integer == (rovná se), != (nerovná se), <= (menší než nebo rovno), < (menší než), >= (větší než nebo rovno), > (větší než)
Řetězec == (rovná se), != (nerovná se)
Logická hodnota == (rovná se), != (nerovná se)

Vyhodnocení seznamu podmínek:

  • Přítomnost operátoru "&&" znamená, že seznam podmínek se vyhodnotí jako true pouze v případě, že jsou všechny podmínky ze seznamu vyhodnoceny jako true.
  • Podmínka představuje kritéria filtrování sady deklarací identity. Samotná podmínka je vyhodnocena jako pravdivá, pokud existuje alespoň jedna deklarace identity, která splňuje podmínku.
  • Deklarace identity se říká, že splňuje kritérium filtrování reprezentované podmínkou, pokud každá z jejích vlastností splňuje odpovídající podmínky vlastnosti deklarace, které jsou přítomné v podmínce.

Sada akcí, které jsou povoleny v zásadách, jsou popsány níže.

Příkaz akce Description Oddíly zásad, na které se vztahují
permit() Příchozí sadu deklarací identity je možné použít k výpočtu pravidel vystavování. Nebere jako parametr žádnou deklaraci identity. autorizační pravidla
deny() Příchozí sada deklarací identity by neměla být použita pro výpočet pravidel vystavování , nebere jako parametr žádnou deklaraci identity. autorizační pravidla
add(claim) Přidá deklaraci identity do příchozí sady deklarací identity. Všechny deklarace identity přidané do příchozí sady deklarací identity budou k dispozici pro následující pravidla deklarací identity. autorizační pravidla, pravidla vystavování
issue(claim) Přidá deklaraci identity do sady příchozích a odchozích deklarací identity. pravidla vystavování
issueproperty(deklarace identity) Přidá deklaraci identity do sady deklarací příchozích a vlastností. pravidla vystavování

Další kroky