Tanım
Allowance, başka bir adresin — genellikle bir smart contract’ın — bir kullanıcının token’larıyla ne yapmasına izin verildiğine dair sayısal bir sınır tanımlayan temel bir güvenlik bileşenidir. Önceden yetkilendirilmiş bir harcama veya yönetim üst sınırını ifade eder ve genellikle bir token sözleşmesinin dahili muhasebesinde saklanır. Bir allowance ayarlayarak, token sahibi token’ların mülkiyetini devretmeden, kontrollü bir yetkiyi başka bir varlığa devreder.
Birçok token standardında allowance, belirli bir harcayıcının ne kadar token taşıyabileceğini kaydeden onay (approval) mekanizmalarıyla yakından bağlantılıdır. Bu yapı, token hareketlerini açıkça yetkilendirilen azami miktarla sınırlayan, ince ayarlı bir erişim sınırı olarak çalışır. Sonuç olarak allowance, merkeziyetsiz uygulamaların kullanıcı bakiyeleri üzerinde Erişim Kontrolü (Access Control) uygulamasının merkezinde yer alır.
Bağlam ve Kullanım
Allowance, bir kullanıcının, kendi adına token taşımak için geçici veya sürekli izne ihtiyaç duyan zincir üstü (on-chain) uygulamalarla etkileşime girdiği durumlarda yaygın olarak kullanılır. Allowance değeri bir güvenlik bariyeri gibi davranır; böylece bir harcayıcı ele geçirilse bile, yeni bir yetkilendirme olmadan önceden tanımlanmış limiti aşamaz. Zincir üzerinde kalıcı bir kayıt olduğu için allowance, değiştirilene veya sıfırlanana kadar yürürlükte kalır.
Hatalı yapılandırılmış veya aşırı geniş allowance ayarları, kötü niyetli ya da hatalı sözleşmelerin verilen izinleri kötüye kullandığı Approval Exploit kalıpları gibi risklere maruz kalma olasılığını artırabilir. Bu nedenle allowance, token ekosistemlerinde Erişim Kontrolü (Access Control) tasarımının temel bir unsuru olarak görülür ve yetkilerin protokol düzeyinde ne kadar güvenli bir şekilde devredildiğini ve sınırlandığını şekillendirir.