Kimlik ve izinler
İzinler kodda doğar. Bir uç @authorized('create:sms') taşıyorsa anahtar create:sms olmadan 403 alır. Anahtar, sahibinin rolündeki izinlerin alt kümesi olabilir; rolünde olmayan bir anahtarı panele de yazamazsınız.
Anahtarın alabildiği modüller
Section titled “Anahtarın alabildiği modüller”Yönetim modülleri (kullanıcı, rol, anahtar) API key’e verilmez. Anahtar yalnızca sms modülünü taşıyabilir. Panelde kartın adı Gönderimdir; kutular şunları listeler:
| İzin | Uç |
|---|---|
create:sms | gönderim oluşturma |
list:sms | gönderim, alıcı, hata, CSV ve kontör okuma |
cancel:sms | iptal |
Bir ucun anahtarla çağrılabilmesi ayrıca o uçta açık olmalıdır. Referanstaki her işlem bunu belirtir.
Etkin izin
Section titled “Etkin izin”Çalışma anındaki küme anahtarın izinleri ∩ sahibinin güncel rol izinleridir. Sahibin rolü daraltılınca eldeki anahtar da daralır. Anahtar belgesindeki liste tek başına yetki değildir.
Bu kesişim en fazla 30 saniye gecikmeyle uygulanır. Rolü daralttıktan hemen sonraki istek hâlâ eski kümeyle geçebilir.
Geçerlilik 1, 3, 6, 9 veya 12 aydan biri olarak seçilir. Ara değer kabul edilmez. Süre dolunca anahtar 401 olur; kayıt silinmez, yenisi açılır.
IP kısıtı
Section titled “IP kısıtı”Her anahtarın bir IP izin listesi vardır. Kural tek adres (203.0.113.5), CIDR (203.0.113.0/24) veya kapalı aralık (203.0.113.10–203.0.113.50) olabilir; IPv4 ve IPv6 geçerlidir. Bir anahtara en fazla 50 kural yazılır.
Liste boşsa anahtar hiçbir adresten çalışmaz. İstemci IP’si listede yoksa uç 403 döner ve gerekçe adres listesini söylemez. Kural değişince kısıt bir sonraki istekte geçerlidir; 30 saniyelik izin önbelleği bu kapıyı geciktirmez.
Panel oturumu (JWT) bu listeye bakmaz. Kısıt yalnız x-api-key ile gelen isteklerdedir.