Kişisel API Belirteçleri
Kişisel API belirteçleri, oturum açmış bir CMS kullanıcısının, parolayı paylaşmadan veya kurulum çapında yetki vermeden işi bir yapay zekaya veya operatör aracına devretmesine olanak tanır. Yapay zeka bu kullanıcı gibi davranır: her istek ve belirteç ayarlarıyla, kullanıcının mevcut CMS erişimiyle sınırlıdır.
Kişisel ve Sistem Tokenları
| Belirteç türü | Amaçlanan sahip | Yetki | |
|---|---|---|---|
| Kişisel API jetonu | Profil → Kişisel API Belirteçleri | Düzenleyici, Site admin veya Super admin | İçerik ve site, sahibinin canlı rolü ve seçilen siteler dahilinde çalışır |
| Sistem API belirteci | Sistem → API Tokenları | Super admin | Açıkça seçilen yeteneklerle güvenilir kurulum düzeyinde otomasyon |
Kişisel belirteçler, kurulum düzeyindeki sistem güncellemelerini, yedeklemeleri, bakımı, eklentileri, Gömülü Uygulamaları, etki alanlarını, fiziksel site/sayfa varlıklarını ve yönetici oluşturmayı kasıtlı olarak hariç tutar. Bu işlemleri otomatikleştirmesi gereken bir süper yöneticinin ayrı bir Sistem API jetonu oluşturması gerekir. Bu, kişisel asistanın sessizce kurulum operatörü olmasını engeller.
Etkili İzin Kuralı
A kişisel belirteci yalnızca bu kontrollerin tümü başarılı olduğunda bir işlem gerçekleştirebilir:
- Jeton etkin ve süresi dolmadı.
- Sahibi hâlâ aktif bir CMS kullanıcısıdır.
- İstenen yetenek jeton üzerinde seçilir.
- Sahibin mevcut rolü hâlâ bu yeteneğe izin veriyor.
- Hedef site jetonda seçilir ve sahibi tarafından erişilebilir durumda kalır.
- Sayfanın mevcut iş akışı durumu, sahibinin istenen değişikliği yapmasına izin verir.
- İstek, bir IP izin verilenler listesi yapılandırıldığında izin verilen bir ağdan gelir.
- Jetona özel ve kurulum çapındaki istek sınırları aşılmadı.
Kullanıcının rolünü, site atamalarını veya etkin durumunu değiştirmek, bir sonraki API isteğinde geçerli olur. Bir jeton, sahibinin kaybettiği otoriteyi asla korumaz.
Rol Matrisi
| Alanı | Düzenleyici jetonu | Site admin belirteci | Super admin kişisel jeton | Sistem jetonu |
|---|---|---|---|---|
| Atanan site içeriğini okuyun | Evet | Evet | Tüm siteler | Eğer verilirse |
| Taslak içerik oluşturma ve değiştirme | Evet | Evet | Tüm siteler | Eğer verilirse |
| Yayınla veya arşivle | Hayır | Verilirse | Verilirse | Eğer verilirse |
| Güvenli site sunum ayarları | Hayır | Verilirse | Verilirse | Eğer verilirse |
| Gezinme, Shared Slots, medya ve etkileşim | Verilmişse, seçilen ve atanan siteler içinde | Verilmişse, seçilen ve atanan siteler içinde | İzin verilmişse seçilen siteler içinde | Eğer verilirse |
| Kullanıcılar, güncellemeler, yedeklemeler, bakım, eklentiler, uygulamalar, alanlar, fiziksel varlıklar | Hayır | Hayır | Hayır | Yalnızca ilgili yetenekle |
Belirteç formu yalnızca geçerli kullanıcının devredebileceği yetenekleri gösterir. Yetenek seçmek bir üst sınırdır, rolü atlamanın bir yolu değildir.
Belirteç Oluştur
- Profil'yi açın ve API Belirteçlerini Yönet'yi seçin.
- İstemciyi veya işi tanımlayan bir ad girin.
- Yapay zekanın ulaşabileceği siteleri seçin.
- Yalnızca işin ihtiyaç duyduğu yetenekleri seçin.
- Bir son kullanma tarihi seçin.
- İzin verilen site seçiminin altında, süre sonu kontrolünün yanında istek sınırını ayarlayın. İsteğe bağlı olarak ağ kontrolleri altında bir IP izin verilenler listesi yapılandırın.
- Belirteç Oluştur'yi seçin.
- Belirteci hemen kopyalayın. Sade değeri yalnızca bir kez gösterilir.
Başarı paneli, API temel URL'sini, ortam değişkeni örneğini ve kopyalamaya hazır bir AI kurulum istemini sağlar. Sırrı yalnızca amaçlanan araca verin ve onu o aracın gizli deposunda saklayın.
Düzenle, Gözden Geçir, İptal Et veya Sil
- Edit, sırrı açığa çıkarmadan veya değiştirmeden adı, seçilen siteleri, yetenekleri, yenilenen son kullanma tarihini, IP izin verilenler listesini ve istek tavanını değiştirir.
- Activity en son on isteği gösterir: sonuç, zaman, yöntem, sorgu dizisi olmayan yol, rota, gerekli yetenek, IP ve kısaltılmış kullanıcı aracısı.
- Revoke, belirteci ve etkinlik geçmişini korurken daha fazla kimlik doğrulamayı anında önler.
- Delete, jetonu ve etkinlik geçmişini kalıcı olarak kaldırır.
İstek ve yanıt gövdeleri, sorgu dizeleri, taşıyıcı değerler, belirteç karmaları ve belirteç önizlemeleri hiçbir zaman etkinlik satırlarında saklanmaz.
Ağ Kontrolleri
İzin verilenler listesi, satır başına tam bir IPv4/IPv6 adresini veya CIDR ağını kabul eder; örneğin:
203.0.113.10
198.51.100.0/24
2001:db8::/32
Herhangi bir ağa izin vermek için listeyi boş bırakın. Dakikada 30, 60, 120 veya 300 istekten oluşan jetona özel bir tavan seçin. Depolanmış tavanı olmayan mevcut tokenlar dakikada 60 istek kullanır. Kurulum genelindeki API kısıtlaması hâlâ geçerli olduğundan etkin sınır, uygulanabilir en düşük sınırdır.
Ters Proxy'ler ve CDN'ler
Ağ kontrolleri, Laravel tarafından çözümlenen istemci IP'sini kullanır. Ana bilgisayar bir yük dengeleyicinin, ters proxy'nin veya CDN'nin arkasında olduğunda, gerçek proxy adresleri ve iletilen başlıklar için Laravel'nin güvenilir proxy işlemesini yapılandırın. Kısıtlayıcı bir izin verilenler listesini etkinleştirmeden önce çözümlenen adresi doğrulayın. Rastgele internet istemcilerinden iletilen başlıklara güvenmeyin; aksi takdirde arayan kişi politika tarafından kullanılan adresi taklit edebilir.
Bir Yapay Zekayı Bağlayın
Aracın güvenilir gizli deposunda oluşturulan değerleri yapılandırın:
WEBBLOCKS_CMS_API_URL=https://example.com/webadmin/api
WEBBLOCKS_CMS_API_TOKEN=...
Araç öncelikle GET /webadmin/api'yi çağırmalıdır. Kimliği doğrulanmış keşif, yeteneklerini, kişisel ağ ilkesini, OpenAPI ve kılavuz bağlantılarını ve önerilen sonraki adımları döndürür. İçerik planlarını uygulamadan önce doğrulamalı ve yayınlama veya yok etme işlemlerinden önce açık kullanıcı onayı talep etmelidir.
Hata Sözleşmesi
| HTTP | Kod | Anlamı |
|---|---|---|
| 401 | invalid_internal_api_token | Belirteç eksik, geçersiz, iptal edilmiş, süresi dolmuş veya artık etkin bir CMS kullanıcısı tarafından desteklenmiyor |
| 403 | missing_internal_api_capability | Token şu anda gerekli yeteneğe sahip değil |
| 403 | delegated_site_access_denied | Seçilen kaynak veya gönderilen site, jeton sahibinin canlı kapsamının dışında |
| 403 | delegated_workflow_access_denied | Sahip, sayfayı mevcut iş akışı durumunda düzenleyemez |
| 403 | delegated_operation_denied | İşlem kurulum düzeyindedir ve kişisel jeton kullanılamaz |
| 403 | delegated_network_access_denied | Çözümlenen istemci IP'si belirteç izin verilenler listesinin dışında |
| 429 | personal_api_token_rate_limit_exceeded | Tokena özel talep tavanına ulaşıldı; Retry-After'yi onurlandırın |
| 422 | Uç noktaya özgü doğrulama kodu | İsteğin kimliği doğrulandı ancak yükü veya durum geçişi geçersiz |
Tüm API hataları JSON'dur ve mevcut olduğunda genel güvenli keşif bağlantılarını içerir.
Önerilen Uygulama
- Yapay zeka, entegrasyon veya sınırlı iş başına bir jeton oluşturun.
- İhtiyacı olan en az sayıda siteyi ve özelliği sağlayın.
- Kısa vade sürelerini tercih edin ve bilinçli olarak yenileyin.
- Yapay zeka platformu bir tane sağladığında kararlı bir çıkış IP izin verilenler listesi kullanın.
- İlk kurulumun ve hassas çalışmanın ardından son etkinlikleri inceleyin.
- Bir sırrın açığa çıkması durumunda derhal iptal edin.
- İlgisiz hizmetler tarafından tutulabilecek destek bildirimlerine, günlüklere, ekran görüntülerine, kaynak kontrolüne veya istemlere asla belirteçler yapıştırmayın.
Bkz. Internal Content API, Kullanıcılar ve İzinler ve Güvenlik Temel API, rol ve dağıtım için sınırlar.