Aracılığıyla paylaş


Talep ve talep kuralları

Talep kurallarının dil bilgisini anlamak için önce kanıtlama ilkesi taleplerini anlamanız gerekir.

Talep

Talep, ilgili bilgileri sağlamak için birlikte gruplandırılmış bir özellik kümesidir. Azure Doğrulama için bir talep aşağıdaki özellikleri içerir:

  • type: Talebin türünü temsil eden bir dize değeri.
  • value: Talebin değerini temsil eden boole, tamsayı veya dize değeri.
  • valueType: value özelliğinde depolanan bilgilerin veri türü. Desteklenen türler Dize, Tamsayı ve Boole'dır. Tanımlanmazsa, varsayılan değer "Dize" olur.
  • veren: Talebi verenle ilgili bilgiler. Veren aşağıdaki türlerden biri olacaktır:
    • AttestationService: Belirli talepler, Azure Doğrulama tarafından ilke yazarının kullanımına sunulur ve bu, kanıtlama ilkesi yazarı tarafından uygun ilkeyi oluşturmak için kullanılabilir.
    • AttestationPolicy: İlkenin kendisi (yönetici tarafından tanımlandığı gibi) işleme sırasında gelen kanıta talep ekleyebilir. Bu durumda veren "AttestationPolicy" olarak ayarlanır.
    • CustomClaim: Kanıtlayıcı (istemci), kanıtlama kanıtına ek talepler de ekleyebilir. Bu durumda veren "CustomClaim" olarak ayarlanır.

Tanımlanmamışsa. varsayılan değer "CustomClaim" olur.

Talep Kuralı

Gelen talep kümesi, kanıtlama sonucunu hesaplamak için ilke altyapısı tarafından kullanılır. Talep kuralı, gelen talepleri doğrulamak ve tanımlı eylemi uygulamak için kullanılan bir dizi koşuldur.

Conditions list => Action (Claim)

Talep kuralının Azure Doğrulama değerlendirmesi aşağıdaki adımları içerir:

  • Koşullar listesi yoksa, eylemi belirtilen taleple yürütür
  • Aksi takdirde, koşullar listesinden koşulları değerlendirin.
  • Koşullar listesi false olarak değerlendirilirse, durdurun. Aksi takdirde devam edin.

Talep kuralındaki koşullar, eylemin yürütülmesi gerekip gerekmediğini belirlemek için kullanılır. Koşullar listesi, "&" işleciyle ayrılmış bir koşul dizisidir.

Koşullar listesi şu şekilde yapılandırılmıştır:

Condition && Condition && ...

Koşul şu şekilde yapılandırılmıştır:

Identifier:[ClaimPropertyCondition, ClaimPropertyCondition,…]

Koşullar listesi, talebin çeşitli özelliklerindeki tek tek koşullardan oluşur. Koşulun isteğe bağlı bir tanımlayıcısı olabilir. Bu tanımlayıcı, koşulu karşılayan talep/taleplere başvurmak için kullanılabilir. Bu başvuru diğer koşullarda veya aynı kuralın eyleminde kullanılabilir.

Örneğin:

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

Koşulları denetlemek için kullanılabilecek işleçler şunlardır:

Valuetype Desteklenen İşlemler
Tamsayı == (eşittir), != (eşit değil), <= (küçüktür veya eşittir), < (küçüktür), >= (büyüktür veya eşittir), > (büyüktür)
String == (eşittir), != (eşit değil)
Boolean == (eşittir), != (eşit değil)

Koşulların değerlendirilmesi listesi:

  • "&&" işlecinin varlığı, bir koşul listesinin yalnızca listedeki tüm koşullar true olarak değerlendirilirse true olarak değerlendirildiğini gösterir.
  • Koşul, talep kümesindeki filtreleme ölçütlerini temsil eder. Koşulu karşılayan en az bir talep bulunduğunda koşulun doğru olarak değerlendirildiğinden emin olun.
  • Bir talep, özelliklerinden her biri koşulda bulunan ilgili talep özelliği koşullarını karşılarsa koşul tarafından temsil edilen filtreleme ölçütünü karşıladığı söylenir.

bir ilkede izin verilen eylem kümesi aşağıda açıklanmıştır.

Eylem Fiili Açıklama Bunların geçerli olduğu ilke bölümleri
permit() Gelen talep kümesi, vermeleri hesaplamak için kullanılabilir. Herhangi bir talebi parametre olarak almaz authorizationrules
deny() Gelen talep kümesi verme tahakkuklarını hesaplamak için kullanılmamalıdır Hiçbir talebi parametre olarak almaz authorizationrules
add(talep) Talebi gelen talep kümesine ekler. Gelen talep kümesine eklenen tüm talepler, sonraki talep kuralları için kullanılabilir. authorizationrules, issuancerules
sorun(talep) Talebi gelen ve giden talep kümesine ekler verme tahakkukları
issueproperty(talep) Talebi gelen ve özellik talep kümesine ekler verme tahakkukları

Sonraki adımlar