Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. bilgi
Ne
Erişim Denetimi politikası, API'lerinize belirli IP adresleri tarafından erişilmesine izin vermenizi veya erişimi reddetmenizi sağlar.
Video: API'lerinize belirli IP adresleri tarafından erişilmesine izin verme veya erişimi reddetme hakkında daha fazla bilgi edinmek için kısa videoyu izleyin.
Bu politikayı API proxy akışının herhangi bir yerine ekleyebilirsiniz ancak kimlik doğrulama veya kota kontrolünden önce bile IP adreslerini büyük olasılıkla akışın başında ( İstek / ProxyEndpoint / PreFlow) kontrol etmek istersiniz.
Sana Özel
Aşağıdaki IPv4 örneklerinde yer alan maske değerleri, eşleştirme kuralının erişime izin verirken veya reddederken dört sekizliden (8, 16, 24, 32 bit) hangisini dikkate aldığını tanımlar. Varsayılan değer 32'dir. Daha fazla bilgi için Öğe referansındaki mask
özelliğine bakın.
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>
198.51.100.1 istemci adresinden gelen tüm istekleri reddet
Diğer istemci adreslerinden gelen isteklere izin verin.
Değişkenleri kullanarak reddetme
<AccessControl name="ACL"> <IPRules noRuleMatchAction = "ALLOW"> <MatchRule action = "DENY"> <SourceAddress mask="{kvm.mask.value}">{kvm.ip.value}</SourceAddress> </MatchRule> </IPRules> </AccessControl>
Maskeleme ve IP'ler için değerleri depolamak için anahtar/değer eşlemesi (KVM) kullandığınızı varsayalım.
Bu, çalışma zamanında API proxy'nizi güncellemek ve yeniden dağıtmak zorunda kalmadan IP'leri değiştirmek ve maskelemek için kullanışlı bir yaklaşımdır. kvm.mask.value
ve kvm.ip.value
değerlerini içeren değişkenleri almak için KeyValueMapoperas politikasını kullanabilirsiniz (KVM politikanızda, KVM'nizdeki maske ve IP değerlerinin değerlerini içeren değişkenleri sizin adlandırdığınızı varsayarak).
Aldığınız değerler maske için 24
ve IP adresi için 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>
Şu istemci adresinden gelen tüm istekleri reddet: 198.51.100.*
Diğer istemci adreslerinden 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>
Şu istemci adresinden gelen tüm istekleri reddet: 198.51.*.*
Diğer istemci adreslerinden 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>
Şu istemci adresinden gelen tüm istekleri reddedin: 198.51.100.*, ancak 192.0.2.1'e izin verin.
Diğer istemci adreslerinden gelen isteklere izin verin.
198.51.*.* işlemine izin ver
<AccessControl name="ACL"> <IPRules noRuleMatchAction = "DENY"> <MatchRule action = "ALLOW"> <SourceAddress mask="16">198.51.100.1</SourceAddress> </MatchRule> </IPRules> </AccessControl>
Şu adresten gelen tüm isteklere izin ver: 198.51.*.*
Diğer istemci adreslerinden gelen istekleri reddedin.
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>
Şu istemci adreslerinden gelen isteklere izin ver: 198.51.100.* 192.0.2.* 203.0.113.*
Diğer tüm adresleri reddet.
Birden çok IP'yi reddet
<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>
Şu istemci adreslerinden gelen istekleri reddetme: 198.51.100.* 192.0.2.* 203.0.113.*
Diğer tüm adreslere izin verin.
Birden çok IP'ye izin ver, birden çok IP'yi reddet
<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>
Allow: 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 geçerli IP erişimi üzerinde kontrol sahibi olmanızı da sağlar. Örneğin, test ortamınızda gösterilen API'lere yalnızca kuruluşunuzun kontrolü altındaki bilgisayarların erişmesini istiyorsanız dahili ağınızın IP adresi aralığına izin verebilirsiniz. Evden çalışan geliştiriciler VPN kullanarak bu API'lere erişebilir.
Erişim Denetimi politikasının yapılandırılması ve yürütülmesi aşağıdakileri içerir:
- Her biriyle ilişkili iki işlemden birinin (İZİN VER veya REDDET) olduğu bir eşleşme kuralları grubu tanımlayın.
- Her eşleşme kuralı için IP adresini (SourceAddress öğesi) belirtin.
- İşlenecek kuralları yapılandırdığınız iletideki IP adreslerini belirlemek için Politika, değerlendirilecek IP adresini nasıl seçer? bölümüne göz atın.
- Her IP adresi için bir maske yapılandırın. IP adresindeki maske değerine göre erişime izin verir veya erişimi reddedersiniz. CIDR gösterimi ile IP maskeleme hakkında başlıklı makaleyi inceleyin.
- Kuralların test edileceği sırayı 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 aşağıdaki eşleşme kuralları atlanır.
- Aynı kural hem İZİN VER hem de REDDET işlemleriyle yapılandırılmışsa ilk sırada tanımlanan kural tetiklenir ve sonraki kural (diğer işlemle) atlanır.
Politika değerlendirilecek IP adresini nasıl seçer?
Bir istekteki IP adresleri çeşitli kaynaklardan gelebilir. Örneğin, True-Client-IP
ileti üstbilgisi bir IP adresi, X-Forwarded-For
üstbilgisi ise bir veya daha fazla IP adresi içerebilir. Bu bölümde, değerlendirmesini istediğiniz tam IP adreslerini değerlendirmek için AccessControl politikasını nasıl yapılandıracağınız açıklanmaktadır.
AccessControl politikasının hangi IP adresinin değerlendirileceğine karar vermek için kullandığı mantık aşağıda açıklanmıştır:
1. True-Client-IP başlığı
Politika ilk olarak True-Client-IP
üstbilgisinde bir IP adresi olup olmadığını kontrol eder. Başlık geçerli bir IP adresi içeriyorsa politika bu adresi değerlendirir.
2. X-Forwarded-For başlığı
True-Client-IP
üst bilgisi yoksa veya <IgnoreTrueClientIPHeader> öğesini true olarak ayarladıysanız politika, X-Forwarded-For
üst bilgisindeki IP adreslerini değerlendirir.
Edge, X-Forwarded-For
üst bilgisini son harici TCP el sıkışmasından (istemci IP'si veya yönlendirici gibi) aldığı IP adresiyle otomatik olarak doldurur. Başlıkta birden fazla IP adresi varsa bu adresler büyük olasılıkla bir isteği işleyen sunucu zinciridir. Ancak adres listesi, adres sahteciliği amaçlı bir IP adresi de içerebilir. Peki, politika hangi adreslerin değerlendirileceğini nasıl biliyor?
Kuruluş yapılandırmanız ve politika yapılandırmanız, politikanın hangi X-Forwarded-For
adreslerini değerlendireceğini belirler.
Öncelikle, feature.enableMultipleXForwardCheckForACL
özelliğinin kuruluşunuzda ayarlanıp ayarlanmadığını kontrol edin. Kontrol etmek için
Kuruluş alma API'sini kullanabilirsiniz. Ardından:
- Kuruluşunuzun özellikler listesinde
feature.enableMultipleXForwardCheckForACL
öğesini görmüyorsanız bu özellik, false (varsayılan) olarak ayarlanmıştır. Bu özellik Yanlış değerine ayarlandığında politika, başlıktaki son adresi (İzleme aracında görünür) değerlendirir. Bu, Edge'in son harici TCP el sıkışmasından aldığı IP adresidir. - Kuruluşunuzdaki
feature.enableMultipleXForwardCheckForACL
doğru değerine ayarlanırsa politikanın hangi IP adreslerini değerlendirdiğini belirlemek için <ValidateBasedOn> öğesini yapılandırın.
feature.enableMultipleXForwardCheckForACL
özelliğini değiştirme
Edge Kuruluş Yöneticileri, feature.enableMultipleXForwardCheckForACL
özelliğini ayarlamak için
Kuruluş özelliklerini güncelleme API'sini kullanabilir.
Aşağıdaki API örneği, Edge for Private Cloud'daki özelliği ayarlar. Kuruluşunuzda ayarlanmış başka mülkler varsa bunları da eklediğinizden emin olun. Aksi takdirde söz konusu bağlantılar kaldırılır.
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
özelliğinin değerini değiştirdikten sonra
Bileşenleri ayrı ayrı başlatma/durdurma/yeniden başlatma bölümünde açıklandığı gibi mesaj işlemcilerinizi yeniden başlatmanız gerekir.
Apigee analizindeki X-Forwarded-For boyutları
Edge Analytics, X-Forwarded-For
başlığının değerini x_forwarded_for_ip
boyutuna yazar. Edge'e istekte bulunan istemci IP'sini belirlemek için ax_true_client_ip
veya ax_resolved_client_ip
boyutlarındaki değerleri kullanın. Daha fazla bilgi için Analytics metrikleri, boyutları ve filtreleri referansı başlıklı makaleyi inceleyin.
CIDR gösterimi ile IP maskeleme hakkında
CIDR gösterimi (Sınıfsız Alanlar Arası Yönlendirme), maskeleme yoluyla bir IP adresi aralığını belirtmenin bir yoludur. Hem IPv4 hem de IPv6 için geçerlidir. İşleyişi aşağıdaki gibidir. Kolaylık sağlaması açısından, örneklerimizde IPv4 kullanacağız.
IP adresleri noktalarla ayrılmış sayı gruplarıdır. İkili program terimlerinde, her grup belirli bir bit sayısıdır (IPv4 için 8 ve IPv6 için 16). 198.51.100.1 IPv4 adresi ikili programda şöyle görünür:
11000110.00110011.01100100.00000001
Bu, 8 bitlik 4 grup veya toplam 32 bit demektir. CIDR ile IP adresine bir /number (1-32) ekleyerek bir aralık belirtebilirsiniz. Örneğin:
198.51.100.1/24
Bu durumda 24, bu politikada mask
özellik değeri için kullanacağınız sayıdır.
Bu gösterim, "İlk 24 biti olduğu gibi bırakın, kalan bitler 0 ile 255 arasında herhangi bir değer olabilir" anlamına gelir. Örneğin:
Bunları olduğu gibi tut | Son grup için olası değerler |
---|---|
198.51.100. | 0 - 255 |
Maske, üçüncü grubun sonunda olduğuna dikkat edin. Böylece her şey derli toplu hale gelir ve şöyle bir maske oluşturabilirsiniz: 198.51.100.*. Çoğu durumda 8'in (IPv4) ve 16'nın (IPv6) katlarını kullandığınızda istediğiniz maskeleme düzeyini elde edersiniz:
IPv4: 8, 16, 24, 32
IPv6: 16, 32, 48, 64, 80, 96, 112, 128
Bununla birlikte, biraz ikili hesaplama gerektiren daha ayrıntılı kontrol için diğer sayıları kullanabilirsiniz. Aşağıda, 30'luk bir maskenin kullanıldığı 198.51.100.1/30 örneği verilmiştir. Buradaki son 1, ikili programda 00000001'dir:
Bunları olduğu gibi tut | 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 reddedilir):
- 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>
<AccessControl> özellikleri
<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ı. İsteğe bağlı olarak, politikayı yönetim kullanıcı arayüzü proxy düzenleyicisinde farklı bir doğal dil adıyla etiketlemek için |
Yok | Gerekli |
continueOnError |
Bir politika başarısız olduğunda hata döndürülmesi için Bir politika başarısız olduktan sonra bile akış yürütülmesinin devam etmesi için |
false | İsteğe bağlı |
enabled |
Politikayı uygulamak için Politikayı devre dışı bırakmak için |
true | İsteğe bağlı |
async |
Bu özellik kullanımdan kaldırıldı. |
false | Kullanımdan kaldırıldı |
<DisplayName> öğesi
Politikayı, yönetim kullanıcı arayüzü proxy düzenleyicisinde farklı bir doğal dil adıyla etiketlemek için name
özelliğine ek olarak kullanın.
<DisplayName>Policy Display Name</DisplayName>
Varsayılan |
Yok Bu öğeyi çıkarırsanız politikanın |
---|---|
Varlık | İsteğe bağlı |
Tür | Dize |
<ignoreTrueClientIPHeader> öğesi
Bunu Doğru değerine ayarladığınızda politika, True-Client-IP
üst bilgisini yok sayar
ve yapılandırdığınız X-Forwarded-For değerlendirme davranışına göre X-Forwarded-For
üstbilgisindeki IP adreslerini değerlendirir.
<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 |
<IPRules> öğesi
IP adreslerine izin veren veya bunları reddeden kuralları içeren üst öğe. noRuleMatchAction
özelliği, eşleştirme kurallarınızın kapsamına girmeyen IP adreslerinin nasıl işleneceğini tanımlamanızı sağlar.
<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ümlenmezse (eşleşmez) yapılacak işlem (erişime izin verme veya erişimi reddetme).
Geçerli değer: ALLOW veya DENY
|
Dize | İZİN VER | Gerekli |
<IPRules>/<MatchRule> öğesi
IP adresi, tanımladığınız KaynakAdresler ile eşleşirse yapılacak işlem (erişime izin verme veya erişimi reddetme).
<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ümlenmezse (eşleşmez) yapılacak işlem (erişime izin verme veya erişimi reddetme). Geçerli değer: ALLOW veya DENY |
Dize | İZİN VER | Gerekli |
<IPRules>/<MatchRule>/<SourceAddress> öğesi
Bir istemcinin IP adresi aralığıdır.
Geçerli değer: Geçerli IP adresi (noktalı ondalık gösterim). Joker karakter davranışı için mask
özelliğini kullanın.
<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, mask
özelliği veya IP adresi için Mesaj şablonlarını da destekler. Diğer bir deyişle, değerleri şu anda API proxy akışında bulunan değişkenleri kullanarak ayarlayabilirsiniz.
Örneğin, bir IP adresini anahtar/değer eşlemesinde (KVM) depolayabilir ve IP adresini alıp bir değişkene (kvm.ip.value
gibi) atamak için KeyValueMapTransactions politikasını kullanabilirsiniz. Daha sonra bu değişkeni IP adresi için kullanabilirsiniz:
<SourceAddress mask="24">{kvm.ip.value}</SourceAddress>
Maske ve/veya IP adresini bir değişkenle ayarlamak, API proxy'nizi değiştirmek ve yeniden dağıtmak zorunda kalmadan değerleri çalışma zamanında değiştirme esnekliği sağlar.
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 |
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çerlidir, bu nedenle pratik değildir. Maskeyi bir değişkenle ayarlama
|
Tamsayı | Yok | Gerekli |
<ValidateBasedOn> öğesi
X-Forwarded-For
HTTP üst bilgisi birden fazla IP adresi içerdiğinde hangi IP adreslerinin değerlendirileceğini kontrol etmek için bu ValidateBasedOn
öğesini kullanın.
Bu yaklaşımı, yalnızca değerlendirmek istediğiniz IP adreslerinin geçerliliğinden eminseniz IP adreslerini değerlendirmek için kullanın. Örneğin, X-Forwarded-For
üstbilgisindeki tüm IP adreslerini değerlendirmeyi seçerseniz bu adreslerin geçerliliğine güvenebilmeniz ve/veya API proxy'nizi yalnızca güvenilir IP'lerin çağırmasına izin vermek için kapsamlı REDDET veya İZİN VER kuralları oluşturmanız gerekir.
Başlıkta en soldaki IP adresi istemciye aittir. En sağdaki IP adresi ise isteği mevcut hizmete yönlendiren sunucudur. En sağdaki veya son IP adresi, Edge'in son harici TCP el sıkışmasında aldığı adrestir.
Bu öğeye girdiğiniz değer, başlıktaki tüm IP adreslerini (varsayılan), yalnızca ilk IP adresini mi yoksa yalnızca son IP adresini mi kontrol edeceğinizi belirlemenizi sağlar.
<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 |
|
Şemalar
Her politika türü, bir XML şeması (.xsd) ile tanımlanır. Referans olması açısından, GitHub'da politika şemalarını kullanabilirsiniz.
Hata referansı
Bu bölümde, bu politika bir hatayı tetiklediğinde Edge tarafından ayarlanan hata kodları ile hata mesajları ve döndürülen hata mesajları ile Edge tarafından ayarlanan hata değişkenleri açıklanmaktadır. Bu bilgiyi, hataları ele almak için hata kuralları geliştirip geliştirmediğinizi bilmeniz önemlidir. Daha fazla bilgi için Politika hataları hakkında bilmeniz gerekenler ve Hataları işleme bölümlerine bakın.
Çalışma zamanı hataları
Politika yürütüldüğünde bu hatalar ortaya çıkabilir.
Hata kodu | HTTP durumu | Neden | Düzelt |
---|---|---|---|
accesscontrol.IPDeniedAccess |
403 | İstemci IP adresi veya API isteğinde iletilen IP adresi, Erişim Denetimi Politikası'nın <MatchRule> öğesindeki <SourceAddress> öğesinde belirtilen bir IP adresiyle eşleşir ve <MatchRule> öğesinin action özelliği DENY olarak ayarlanır. |
build |
Hata değişkenleri
Bu değişkenler, bir çalışma zamanı hatası oluştuğunda ayarlanır. Daha fazla bilgi için Politika hatalarına özel değişkenler konusuna bakın.
Değişkenler | Konum | Örnek |
---|---|---|
fault.name="fault_name" |
fault_name, yukarıdaki Çalışma zamanı hataları tablosunda listelenen 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 |
Hata yanıtı örneği
{ "fault":{ "faultstring":"Access Denied for client ip : 52.211.243.3" "detail":{ "errorcode":"accesscontrol.IPDeniedAccess" } } }
Hata kuralı örneği
<FaultRule name="IPDeniedAccess"> <Step> <Name>AM-IPDeniedAccess</Name> <Condition>(fault.name Matches "IPDeniedAccess") </Condition> </Step> <Condition>(acl.failed = true) </Condition> </FaultRule>