AccessControl politikası

Apigee Edge belgelerini görüntülüyorsunuz.
. Git: Apigee X belgeleri.
bilgi

Ne?

Erişim Denetimi politikası, belirli IP'ler aracılığıyla API'lerinize erişime izin vermenize veya reddetmenize olanak tanır adres.

Video: Nasıl izin vereceğiniz veya reddedeceğinizle ilgili daha fazla bilgi edinmek için kısa bir video izleyin API'lerinize belirli IP adreslerine göre erişebilir.

Bu politikayı API proxy akışında herhangi bir yere ekleyebilirsiniz ancak büyük olasılıkla akışın başlangıcında ( Request / ProxyEndpoint / PreFlow) IP adreslerini kontrol ederek, kimlik doğrulama veya kota kontrolü,

Örnekler

Aşağıdaki IPv4 örneklerinde yer alan maske değerleri, dört sekizlikten (8, 16, 24, 32) hangisini tanımlar bit sayısı) için geçerlidir. Varsayılan değer 32'dir. Bkz. Daha fazla bilgi için Öğe referansındaki mask özelliği ekleyebilirsiniz.

Reddet 198.51.100.1

<AccessControl name="ACL">
  <IPRules noRuleMatchAction = "ALLOW">
    <MatchRule action = "DENY">
      <SourceAddress mask="32">198.51.100.1</SourceAddress>
    </MatchRule>
  </IPRules>
</AccessControl>

Müşteri adresinden gelen tüm istekleri reddet: 198.51.100.1

Başka herhangi bir istemci adresinden gelen isteklere izin verin.

Değişkenleri kullanarak reddet

<AccessControl name="ACL">
  <IPRules noRuleMatchAction = "ALLOW">
    <MatchRule action = "DENY">
      <SourceAddress mask="{kvm.mask.value}">{kvm.ip.value}</SourceAddress>
    </MatchRule>
    </IPRules>
</AccessControl>

Maskeleme ve IP'lerin değerlerini depolamak için bir anahtar/değer eşlemesi (KVM) kullandığınızı varsayalım. Bu, çalışma zamanında IP'leri ve maskelemeyi güncellemek zorunda kalmadan değiştirmek için kullanışlı bir yaklaşımdır ve API proxy'nizi yeniden dağıtın. Şu bilgileri görüntülemek için KeyValueMapOperations politikasını kullanabilirsiniz: kvm.mask.value ve kvm.ip.value (KVM politikanızda değişkenleri adlandırdığınız varsayılırsa (KVM'nizdeki maske ve IP değerlerinin değerlerini içerir). Aldığınız değerler maske için 24 ve 198.51.100.1 ise AccessControl politikası, 198.51.100 adresinden gelen tüm istekleri reddeder.*

Diğer tüm istemci adreslerine izin verilir.

Reddet 198.51.100.*

<AccessControl name="ACL">
  <IPRules noRuleMatchAction = "ALLOW">
    <MatchRule action = "DENY">
      <SourceAddress mask="24">198.51.100.1</SourceAddress>
    </MatchRule>
    </IPRules>
</AccessControl>

Müşteri adresinden gelen tüm istekleri reddet: 198.51.100.*

Başka herhangi bir istemci adresinden gelen isteklere izin verin.

198,51.*.*

<AccessControl name="ACL">
  <IPRules noRuleMatchAction = "ALLOW">
    <MatchRule action = "DENY">
       <SourceAddress mask="16">198.51.100.1</SourceAddress>
    </MatchRule>
  </IPRules>
</AccessControl>

Müşteri adresinden gelen tüm istekleri reddet: 198.51.*.*

Başka herhangi bir istemci adresinden gelen isteklere izin verin.

Reddet 198.51.100.*, izin 192.0.2.1

<AccessControl name="ACL">
  <IPRules noRuleMatchAction = "ALLOW">
    <MatchRule action = "ALLOW">
      <SourceAddress mask="32">192.0.2.1</SourceAddress>
    </MatchRule>
    <MatchRule action = "DENY">
      <SourceAddress mask="24">198.51.100.1</SourceAddress>
    </MatchRule>
  </IPRules>
</AccessControl>

198.51.100.* adlı istemci adresinden gelen tüm istekleri reddedin ancak 192.0.2.1'e izin verin.

Başka herhangi bir istemci adresinden gelen isteklere izin verin.

198.51.*.* değerine izin ver

<AccessControl name="ACL">
  <IPRules noRuleMatchAction = "DENY">
    <MatchRule action = "ALLOW">
      <SourceAddress mask="16">198.51.100.1</SourceAddress>
    </MatchRule>
  </IPRules>
</AccessControl>

198.51.*.* adresinden gelen tüm isteklere izin ver

Diğer istemci adreslerinden gelen istekleri reddetme

Birden çok IP'ye izin ver

<AccessControl name="ACL">
  <IPRules noRuleMatchAction = "DENY">
    <MatchRule action = "ALLOW">
      <SourceAddress mask="24">198.51.100.1</SourceAddress>
      <SourceAddress mask="24">192.0.2.1</SourceAddress>
      <SourceAddress mask="24">203.0.113.1</SourceAddress>
     </MatchRule>
  </IPRules>
</AccessControl>

İstemci adreslerinden gelen isteklere izin ver: 198.51.100.* 192.0.2.* 203.0.113.*

Diğer tüm adresleri reddet.

Birden çok IP'yi reddetme

<AccessControl name="ACL">
  <IPRules noRuleMatchAction = "ALLOW">
    <MatchRule action = "DENY">
      <SourceAddress mask="24">198.51.100.1</SourceAddress>
      <SourceAddress mask="24">192.0.2.1</SourceAddress>
      <SourceAddress mask="24">203.0.113.1</SourceAddress>
    </MatchRule>
  </IPRules>
</AccessControl>

Müşteri adreslerinden gelen istekleri reddetme: 198.51.100.* 192.0.2.* 203.0.113.*

Diğer tüm adreslere izin ver.

Birden çok IP'ye izin ver, birden çok IP'yi reddedin

<AccessControl name="ACL">
  <IPRules noRuleMatchAction = "DENY">
    <MatchRule action = "DENY">
      <SourceAddress mask="24">198.51.100.1</SourceAddress>
      <SourceAddress mask="24">192.0.2.1</SourceAddress>
      <SourceAddress mask="24">203.0.113.1</SourceAddress>
    </MatchRule>
    <MatchRule action = "ALLOW">
      <SourceAddress mask="16">198.51.100.1</SourceAddress>
      <SourceAddress mask="16">192.0.2.1</SourceAddress>
      <SourceAddress mask="16">203.0.113.1</SourceAddress>
    </MatchRule>
  </IPRules>
</AccessControl>

İzin Ver: 198.51.*.* 192.0.*.* 203.0.*.*

İzin verilenler listesinin bir alt kümesini reddet: 198.51.100.* 192.0.2.* 203.0.113.*


Kullanım notları

Erişim Denetimi politikası, API'lerinizi kötü amaçlı IP'lere karşı korumanın yanı sıra meşru IP erişimi üzerinde kontrol sahibi olmanızı sağlar. Örneğin, yalnızca API'lere erişebilmeniz için kuruluşunuzun kontrolünün sizde olması gerekir. dahili ağınızın IP adresi aralığı. Evden çalışan geliştiriciler şunları yapabilir: VPN kullanarak bu API'lere erişebilirsiniz.

Erişim Denetimi politikasının yapılandırılması ve yürütülmesi şunları içerir:

  • İlişkili iki işlemden (İZİN VER veya DENY) birini içeren bir eşleşme kuralları grubu tanımlayın her biri için geçerli.
  • Her eşleşme kuralı için IP adresini belirtin (SourceAddress öğesi).
  • Kuralların test edilme sırasını belirtin.
  • Tüm eşleşme kuralları verilen sırada yürütülür. Bir kural eşleştiğinde ilgili işlem yürütülür ve sonraki eşleşme kuralları atlanır.
    • Aynı kural hem ALLOW hem de DENY işlemleriyle yapılandırıldıysa siparişte ilk olarak tanımlanan kural tetiklenir ve sonraki kural (diğer işlemle) atlandı.

Politika, değerlendirilecek IP adresini nasıl seçer?

IP adresleri, bir istekteki çeşitli kaynaklardan gelebilir. Örneğin, True-Client-IP ileti üstbilgisi bir IP adresi içerebilir ve X-Forwarded-For üstbilgisi, bir veya daha fazla IP adresi içerebilir. Bu bölüm kullandığınız tam IP adreslerini değerlendirmek için AccessControl politikasını nasıl yapılandıracağınızı değerlendirmesini sağlar.

Aşağıda, AccessControl politikasının hangi IP adresinin değerlendir:

1. True-Client-IP başlığı

Politika ilk olarak True-Client-IP başlığında bir IP adresi olup olmadığını kontrol eder. Eğer başlık geçerli bir IP adresi içeriyorsa politika bu adresi değerlendirir.

2. X-Forwarded-For üstbilgisi

True-Client-IP başlığı yoksa veya &lt;IgnoreTrueClientIPHeader&gt; öğesini true(doğru) değerine ayarlanırsa politika, X-Forwarded-For başlığındaki IP adreslerini değerlendirir.

Edge, X-Forwarded-For üst bilgisini otomatik olarak doldurur son harici TCP el sıkışmasından aldığı IP adresiyle (istemci IP'si veya yönlendirici). Başlıkta birden fazla IP adresi varsa bu adresler isteği işleyen sunucu zinciri olabilir. Ancak adres listesi sahte bir IP adresi de içerebilir. Politika, hangi adreslerin nasıl değerlendirebilirim?

Kuruluşunuzun yapılandırması ve politika yapılandırmanız, Politikanın değerlendirdiği X-Forwarded-For adres.

Öncelikle, feature.enableMultipleXForwardCheckForACL özelliğinin olup olmadığını kontrol edin kuruluşunuzda ayarlanmış olmalıdır. URL parametrelerinin Google tarafından nasıl ele alınmasını istediğinizi belirtmek için Kontrol etmek için kuruluşu API'yi edinin. Ardından:

  • feature.enableMultipleXForwardCheckForACL kuruluşun özellik listesine eklenirse, özellik false olarak ayarlanır. (varsayılan). Bu özellik Yanlış değerine ayarlandığında politika, last address (başlıkta görünür) İzleme aracı) girin. Uç, son harici TCP el sıkışmasından alındı.
  • Kuruluşunuzdaki feature.enableMultipleXForwardCheckForACL true olarak ayarlandığında, &lt;ValidateBasedOn&gt; öğesini kullanın.

feature.enableMultipleXForwardCheckForACL özelliği değiştiriliyor

Uç Kuruluş Yöneticileri, Kuruluş özelliklerini güncellemek için API'yi güncelleyin feature.enableMultipleXForwardCheckForACL mülkü.

Aşağıdaki API örneği, Private Cloud için Edge'de özelliği ayarlar. Kuruluşunuzda ayarlanmış başka özellikler varsa bunları da eklediğinizden emin olun. Aksi takdirde, kaldırılırlar.

curl -u email:password -X POST -H "Content-type:application/xml" http://host:8080/v1/o/myorg -d \
"<Organization type="trial" name="MyOrganization">
    <DisplayName>MyOrganization</DisplayName>
    <Properties>
        <Property name="feature.enableMultipleXForwardCheckForACL">true</Property>
        <!-- Include other existing properties as well. -->
    </Properties>
</Organization>"

Private Cloud için Edge'de, feature.enableMultipleXForwardCheckForACL mülk, aşağıdaki adımları izleyerek mesaj işlemcilerinizi yeniden başlatmanız gerekir: Bileşenleri tek tek başlatın/durdurun/yeniden başlatın.

Apigee analizinde X-Forwarded-For boyutları

Edge Analytics, X-Forwarded-For üstbilgisinin değerini x_forwarded_for_ip boyutu. Oluşturulan istemci IP'sini öğesini görürseniz ax_true_client_ip veya ax_resolved_client_ip boyut. Görüntüleyin Analytics metriklerinin, boyutlarının, ve filtreler referansına bakın.

CIDR gösterimi ile IP maskeleme hakkında

CIDR gösterimi (Sınıfsız Alanlar Arası Yönlendirme), IP adresi aralığını belirtmenin bir yoludur mümkün kılar. Hem IPv4 hem IPv6 için geçerlidir. İşleyiş şekline bakalım. Belgemizde IPv4'ü bazı örnekler vereceğim.

IP adresleri, noktayla ayrılmış sayı gruplarıdır. İkili terimlerde her grup bir belirli bit sayısı (IPv4 için 8 ve IPv6 için 16) 198.51.100.1 IPv4 adresi şuna benzer: ikilik biçimde şu şekildedir:

11000110.00110011.01100100.00000001

Bu, 8 bitlik 4 grup yani toplam 32 bit demektir. CIDR ile bir /number (1-32) ifadesini IP adresine şu şekilde ekleyin:

198.51.100.1/24

Bu durumda, mask özelliği için kullanacağınız sayı 24'tür. değerine ayarlanması gerekir.

Bu gösterim, "İlk 24 biti olduğu gibi tutun, kalan bitler başka bir 0 ile 255 arasında herhangi bir değer girebilirsiniz." Örneğin:

Bu adları tam olarak olduğu gibi tutun Son grup için olası değerler
198.51.100. 0 - 255

Maskenin üçüncü grubun sonunda olduğuna dikkat edin. Böylece her şey çok güzel ve düzenli essence şunun gibi bir maske oluşturma: 198.51.100.*. Çoğu durumda, 8'in (IPv4) ve 16'nın katları kullanılarak (IPv6) istediğiniz maskeleme seviyesini sağlar:

IPv4: 8, 16, 24, 32

IPv6: 16, 32, 48, 64, 80, 96, 112, 128

Bununla birlikte, daha hassas kontrol için diğer sayıları kullanabilirsiniz. Bu işlem, hesaplamanız gerekir. Aşağıda, 198.51.100.1/30 örneğindeki gibi, 30'luk bir maske kullanan bir örnek verilmiştir. Burada son 1, ikilik biçimde 00000001'dir:

Bu adları tam olarak olduğu gibi tutun Olası değerler
11000110.00110011.01100100.000000 (ilk 30 bit) 00000000, 00000001, 00000010 veya 00000011
198.51.100. 0, 1, 2 veya 3

Bu örnekte, yapılandırma <SourceAddress mask="30">198.51.100.1</SourceAddress> olarak ayarlandığında aşağıdaki IP'lere izin verilir (veya (kurallarınıza bağlı olarak) reddedildi):

  • 198.51.100.0
  • 198.51.100.1
  • 198.51.100.2
  • 198.51.100.3

Öğe referansı

Öğe referansı, Erişim Denetimi politikasının öğelerini ve özelliklerini açıklar.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AccessControl async="false" continueOnError="false" enabled="true" name="Access-Control-1">
    <DisplayName>Access Control 1</DisplayName>
    <IPRules noRuleMatchAction = "ALLOW">
        <MatchRule action = "ALLOW">
            <SourceAddress mask="32">198.51.100.1</SourceAddress>
        </MatchRule>
        <MatchRule action = "DENY">
            <SourceAddress mask="24">198.51.100.1</SourceAddress>
        </MatchRule>
    </IPRules>
    <ValidateBasedOn>X_FORWARDED_FOR_ALL_IP</ValidateBasedOn>
</AccessControl>

&lt;AccessControl&gt; özellikler

<AccessControl async="false" continueOnError="false" enabled="true" name="Access-Control-1"> 

Aşağıdaki tabloda tüm politika üst öğelerinde ortak olan özellikler açıklanmaktadır:

Özellik Açıklama Varsayılan Varlık
name

Politikanın dahili adı. name özelliğinin değeri Harf, sayı, boşluk, kısa çizgi, alt çizgi ve nokta içermelidir. Bu değer, 255 karakteri aşmalıdır.

İsteğe bağlı olarak, politikayı<DisplayName> yönetim arayüzü proxy düzenleyicisinde farklı bir doğal dil adı kullanabilir.

Yok Zorunlu
continueOnError

Bir politika başarısız olduğunda hata döndürmesi için false olarak ayarlayın. Bu beklenen bir durumdur çoğu politika için geçerli olur.

Akış yürütmenin bir politikadan sonra bile devam etmesi için true olarak ayarlayın başarısız olur.

false İsteğe bağlı
enabled

Politikayı uygulamak için true olarak ayarlayın.

Politikayı devre dışı bırakmak için false değerine ayarlayın. Bu politika, bir akışa bağlı kalsa bile uygulanır.

true İsteğe bağlı
async

Bu özelliğin desteği sonlandırıldı.

false Kullanımdan kaldırıldı

&lt;DisplayName&gt; öğe

Politikayı name özelliğine ek olarak farklı bir doğal dil adına sahip yönetim arayüzü proxy düzenleyicisi.

<DisplayName>Policy Display Name</DisplayName>
Varsayılan

Yok

Bu öğeyi çıkarırsanız politikanın name özelliğinin değeri: kullanılır.

Varlık İsteğe bağlı
Tür Dize

&lt;IgnoreTrueClientIPHeader&gt; öğe

Bunu doğru olarak ayarladığınızda politika, True-Client-IP üst bilgisini yoksayar ve X-Forwarded-For üstbilgisindeki IP adreslerini değerlendirir ve Yapılandırdığınız X-Forwarded-For Değerlendirme davranışı.


<AccessControl async="false" continueOnError="false" enabled="true" name="Access-Control-1">
    <DisplayName>Access Control-1</DisplayName>
    <IgnoreTrueClientIPHeader>true</IgnoreTrueClientIPHeader>
    ...
</AccessControl>

Varsayılan false
Varlık İsteğe bağlı
Tür Boole

&lt;IPRules&gt; öğe

IP adreslerine izin veren veya reddeden kuralları içeren üst öğe. İlgili içeriği oluşturmak için kullanılan noRuleMatchAction özelliği, IP adreslerinin nasıl ele alınacağını eşleşme kurallarınızın kapsamında değil.

<IPRules noRuleMatchAction = "ALLOW">
Varsayılan Yok
Varlık İsteğe bağlı
Tür Yok

Özellikler

Özellik Açıklama Tür Varsayılan Varlık
noRuleMatchAction
Belirtilen eşleşme kuralı çözümlemezse yapılacak işlem (erişime izin verme veya erişimi reddetme) (eşleşmez).
Geçerli değer: ALLOW veya DENY
Dize İZİN VER Zorunlu

&lt;IPRules&gt;/&lt;MatchRule&gt; öğe

IP adresi, belirttiğiniz KaynakAdreslerle eşleşirse yapılacak işlem (erişime izin verme veya erişimi reddetme) tanımlar.

<IPRules noRuleMatchAction = "ALLOW">
    <MatchRule action = "ALLOW">
        <SourceAddress mask="32">198.51.100.1</SourceAddress>
    </MatchRule>
    <MatchRule action = "DENY">
        <SourceAddress mask="24">198.51.100.1</SourceAddress>
    </MatchRule>
</IPRules>
Varsayılan Yok
Varlık İsteğe bağlı
Tür Yok

Özellikler

Özellik Açıklama Tür Varsayılan Varlık
işlem

Belirtilen eşleşme kuralı çözümlemezse yapılacak işlem (erişime izin verme veya erişimi reddetme) (eşleşmez).

Geçerli değer: ALLOW veya DENY

Dize İZİN VER Zorunlu

&lt;IPRules&gt;/&lt;MatchRule&gt;/&lt;SourceAddress&gt; öğe

İstemcinin IP adresi aralığı.

Geçerli değer: Geçerli IP adresi (noktalı ondalık gösterim). Joker karakter davranışı için mask özelliği için de kullanılmaktadır.

<IPRules noRuleMatchAction = "ALLOW">
    <MatchRule action = "ALLOW">
        <SourceAddress mask="{variable}">198.51.100.1</SourceAddress>
    </MatchRule>
    <MatchRule action = "DENY">
        <SourceAddress mask="24">{variable}</SourceAddress>
    </MatchRule>
</IPRules>

Önceki örnekte gösterildiği gibi SourceAddress öğesi, Şunun için ileti şablonları: mask özelliğine veya IP adresine göre değerleri, şu anda Google Analytics 360'ta bulunan API proxy akışı.

Örneğin, bir IP adresini anahtar/değer eşlemede (KVM) depolayabilir ve KeyValuemapOperations politikası ile IP adresini alıp bir değişkene (ör. kvm.ip.value). Ardından bu değişkeni IP adresi için kullanabilirsiniz:

<SourceAddress mask="24">{kvm.ip.value}</SourceAddress>

Maskeyin ve/veya IP adresinin bir değişkenle ayarlanması, değerleri istediğiniz zaman değiştirme esnekliği sağlar ve API proxy'nizi değiştirmeniz gerekmeden yeniden dağıtabilirsiniz.

Varsayılan Yok
Varlık İsteğe bağlı
Tür Dize (yalnızca tek IP adresi)

Özellikler

Özellik Açıklama Tür Varsayılan Varlık
maske

mask özelliği, IP adresi aralığını belirtmek için izin ver veya reddet. Maske, koçluk yapmak, CIDR gösterimi (Sınıfsız Alanlar Arası Yönlendirme). Örneğin:

<SourceAddress mask="24">198.51.100.1</SourceAddress>

aşağıdaki CIDR gösterimine eşdeğerdir:

198.51.100.1/24

Geçerli değerler:

IPv4: 1-32

IPv6: 1-128

Sıfır (0) değeri yalnızca IP 0.0.0.0 için geçerli olduğundan pratik değildir.

Maskeyi değişkenle ayarlama

mask özelliği, aşağıdakileri de destekler: İleti şablonları anlamına gelir. Böylece, değeri o anda API proxy akışı. Örneğin, bir maske değerini KVM'de depolayıp KeyValueMapOperations politikasını kullanarak maskeyi alabilirsiniz. IP maskesini değişkenle ayarlamak için aşağıdaki biçimi kullanın: değişkenin kvm.mask.value olarak adlandırıldığı varsayıldığında:

mask="{kvm.mask.value}"

Tamsayı Yok Zorunlu

&lt;ValidateBasedOn&gt; öğe

X-Forwarded-For HTTP üst bilgisi birden fazla IP içerdiğinde varsa hangi IP adreslerinin mevcut olduğunu kontrol etmek için bu ValidateBasedOn öğesini yardımcı olur.

Bu yaklaşımı, yalnızca geçerliliğinden eminseniz IP adreslerini değerlendirirken kullanın sayısını seçin. Örneğin, tüm proje ayrıntılarını X-Forwarded-For üstbilgisindeki IP adreslerinin bulunduğu alan ve/veya yalnızca güvenilir uygulamalara izin vermek için kapsamlı REDDET ya da İZİN VER kuralları IP'ler, API proxy'nizi çağırır.

Başlıkta en soldaki IP adresi istemciye, en sağdaki IP adresi ise sunucudur Bu da isteği mevcut hizmete iletti. En sağdaki veya son IP adresi, Edge'in son harici TCP el sıkışmasından aldığı adrestir.

Bu öğeye girdiğiniz değer, öğedeki tüm IP adreslerinin kontrol edilip edilmeyeceğini belirlemenize başlık (varsayılan), yalnızca ilk IP adresi veya yalnızca son IP adresi.

<AccessControl async="false" continueOnError="false" enabled="true" name="Access-Control-1">
    <DisplayName>Access Control 1</DisplayName>
    <IPRules noRuleMatchAction = "ALLOW">
        <MatchRule action = "DENY">
            <SourceAddress mask="32">198.51.100.1</SourceAddress>
        </MatchRule>
    </IPRules>
    <ValidateBasedOn>X_FORWARDED_FOR_ALL_IP</ValidateBasedOn>
</AccessControl>
Varsayılan X_FORWARDED_FOR_ALL_IP
Varlık İsteğe bağlı
Geçerli değerler

X_FORWARDED_FOR_ALL_IP (varsayılan)

X_FORWARDED_FOR_FIRST_IP

X_FORWARDED_FOR_LAST_IP

Şemalar

Her politika türü bir XML şemasıyla (.xsd) tanımlanır. Referans olması açısından, politika şemalarını GitHub'da bulabilirsiniz.

Hata referansı

Bu bölümde, bu politika bir hatayı tetiklediğinde döndürülen hata kodları ve hata mesajlarının yanı sıra Edge tarafından ayarlanan hata değişkenleri açıklanmaktadır. Hata kuralları geliştirirken bu bilgilerin farkında olmanız önemlidir. hoşuma gitmesi için bir fırsattır. Daha fazla bilgi için Bilmeniz gerekenler Politika hataları ve Kullanım sorun.

Çalışma zamanı hataları

Bu hatalar, politika yürütüldüğünde ortaya çıkabilir.

Hata kodu HTTP durumu Neden Düzelt
accesscontrol.IPDeniedAccess 403 İstemci IP adresi veya iletilen IP adresi API isteğinde, <SourceAddress> Erişim Denetimi Politikası'nın <MatchRule> öğesi veaction <MatchRule> öğesi, DENY olarak ayarlandı.

Hata değişkenleri

Bu değişkenler, çalışma zamanı hatası oluştuğunda ayarlanır. Daha fazla bilgi için Politika hatalarına özel değişkenler bölümüne bakın.

Değişkenler Konum Örnek
fault.name="fault_name" fault_name, yukarıdaki Çalışma zamanı hataları tablosunda listelendiği gibi hatanın adıdır. Hata adı, hata kodunun son kısmıdır. fault.name Matches "IPDeniedAccess"
acl.policy_name.failed policy_name, hataya neden olan politikanın kullanıcı tarafından belirtilen adıdır. acl.AC-AllowAccess.failed = true

Örnek hata yanıtı

{
   "fault":{
     "faultstring":"Access Denied for client ip : 52.211.243.3"
      "detail":{
         "errorcode":"accesscontrol.IPDeniedAccess"
      }
   }
}

Örnek hata kuralı

<FaultRule name="IPDeniedAccess">
    <Step>
        <Name>AM-IPDeniedAccess</Name>
        <Condition>(fault.name Matches "IPDeniedAccess") </Condition>
    </Step>
    <Condition>(acl.failed = true) </Condition>
</FaultRule>