Jogcím- és jogcímszabályok

A jogcímszabályok nyelvtanának megértéséhez először ismernie kell az igazolási szabályzat jogcímeit.

Jogcím

A jogcímek olyan tulajdonságok, amelyek csoportosítva vannak, hogy releváns információkat adjanak meg. Azure-igazolás esetén egy jogcím a következő tulajdonságokat tartalmazza:

  • típus: A jogcím típusát jelképező sztringérték.
  • érték: Logikai, egész szám vagy sztringérték, amely a jogcím értékét jelöli.
  • valueType: Az értéktulajdonságban tárolt információk adattípusa. A támogatott típusok a sztring, az egész szám és a logikai érték. Ha nincs megadva, az alapértelmezett érték a "Sztring" lesz.
  • kibocsátó: A követelés kibocsátójára vonatkozó információ. A kiállító a következő típusok egyike lesz:
    • AttestationService: Az Azure Attestation bizonyos jogcímeket elérhetővé teszi a szabályzat szerzője számára, amelyeket az igazolási szabályzat szerzője felhasználhat a megfelelő szabályzat létrehozásához.
    • AttestationPolicy: Maga a szabályzat (a rendszergazda által meghatározottak szerint) jogcímeket adhat hozzá a bejövő bizonyítékokhoz a feldolgozás során. A kiállító ebben az esetben az "AttestationPolicy" értékre van állítva.
    • CustomClaim: Az igazolás (ügyfél) további jogcímeket is hozzáadhat az igazolási bizonyítékokhoz. A kiállító ebben az esetben a "CustomClaim" értékre van állítva.

Ha nincs definiálva. az alapértelmezett érték a "CustomClaim" lesz.

Jogcímszabály

A bejövő jogcímkészletet a szabályzatmotor használja az igazolási eredmény kiszámításához. A jogcímszabály a bejövő jogcímek ellenőrzésére és a meghatározott művelet végrehajtására szolgáló feltételek készlete.

Conditions list => Action (Claim)

A jogcímszabály Azure-igazolási kiértékelése a következő lépéseket foglalja magában:

  • Ha a feltételek listája nem jelenik meg, hajtsa végre a műveletet a megadott jogcímmel
  • Ellenkező esetben értékelje ki a feltételek listáját.
  • Ha a feltételek listája hamis eredményt ad, állítsa le. Ellenkező esetben folytassa a műveletet.

A jogcímszabály feltételei határozzák meg, hogy a műveletet végre kell-e hajtani. A feltételek listája a feltételek sorozata, amelyet "&" operátor választ el egymástól.

A feltételek listája a következőképpen van strukturálva:

Condition && Condition && ...

A feltétel felépítése a következő:

Identifier:[ClaimPropertyCondition, ClaimPropertyCondition,…]

A feltételek listája egy jogcím különböző tulajdonságaira vonatkozó egyedi feltételekből áll. Egy feltétel rendelkezhet opcionális azonosítóval, amely a feltételnek megfelelő jogcím/jogcímek hivatkozására használható. Ez a hivatkozás használható a többi feltételben vagy ugyanazon szabály műveletében is.

For example

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);

A feltételek ellenőrzéséhez az alábbi operátorok használhatók:

Értéktípus Támogatott műveletek
Egész == (egyenlő), != (nem egyenlő), <= (kisebb vagy egyenlő), < (kisebb, mint), >= (nagyobb vagy egyenlő), > (nagyobb, mint)
Sztring == (egyenlő), != (nem egyenlő)
Logikai == (egyenlő), != (nem egyenlő)

A feltételek listájának kiértékelése:

  • A"> operátor jelenléte azt jelenti, hogy a feltétellista csak akkor lesz igaz, ha a lista összes feltételét igaz értékre értékeli a rendszer.
  • A feltétel a jogcímek halmazára vonatkozó szűrési feltételeket jelöli. Magát a feltételt úgy kell kiértékelni, hogy igaz legyen, ha legalább egy olyan jogcím található, amely megfelel a feltételnek.
  • A jogcím akkor felel meg a feltétel által képviselt szűrési feltételnek, ha minden tulajdonsága megfelel a feltételben található megfelelő jogcímtulajdonság-feltételeknek.

A szabályzatokban engedélyezett műveletek halmazát az alábbiakban ismertetjük.

Művelet végrehajtása Leírás Szabályzatszakaszok, amelyekre ezek vonatkoznak
engedély() A bejövő jogcímkészlet felhasználható a kiállítási szabályok kiszámításához. Nem fogad el jogcímet paraméterként engedélyezési szabályok
deny() A bejövő jogcímkészlet nem használható a kiállítási szabályok kiszámításához Nem fogad el jogcímet paraméterként engedélyezési szabályok
add(claim) Hozzáadja a jogcímet a bejövő jogcímkészlethez. A bejövő jogcímkészlethez hozzáadott jogcímek a következő jogcímszabályokhoz lesznek elérhetők. engedélyezési szabályok, kiállítási szabályok
issue(claim) Hozzáadja a jogcímet a bejövő és kimenő jogcímkészlethez kiállítási szabályok
issueproperty(jogcím) Hozzáadja a jogcímet a bejövő és a tulajdonság jogcímkészletéhez kiállítási szabályok

További lépések