Kimlik Doğrulama
AstroAPI, kullanım senaryonuza bağlı olarak birden fazla kimlik doğrulama yöntemini destekler.
API Anahtarı ile Kimlik Doğrulama
API anahtarları, sunucudan sunucuya iletişim için önerilen yöntemdir.
API Anahtarı Edinme
- AstroAPI Paneli'ne giriş yapın
- Ayarlar > API Anahtarları bölümüne gidin
- API Anahtarı Oluştur'a tıklayın
- İzinleri ve hız limitlerini yapılandırın
- Oluşturulan anahtarı kopyalayın (bir daha gösterilmeyecektir)
API Anahtarlarının Kullanımı
API anahtarınızı X-Api-Key başlığına ekleyin:
curl -X GET "https://api.astroapi.cloud/api/calc/natal" \
-H "X-Api-Key: ak_live_xxxxxxxxxxxx"API Anahtarı İzinleri
API anahtarları belirli izinlerle kapsamlandırılabilir:
| İzin | Açıklama |
|---|---|
calc:read | Hesaplama uç noktalarına erişim |
content:read | İçerik/yorum uç noktalarına erişim |
chart:read | Harita görselleştirme uç noktalarına erişim |
modules:read | Satın alınan modüllere erişim |
Roller
AstroAPI, kuruluşlar içinde rol tabanlı erişim kontrolü kullanır:
| Rol | Açıklama |
|---|---|
owner | Tüm kuruluş özelliklerine tam erişim |
manager | Kullanıcıları, faturalamayı ve içerikleri yönetebilir |
member | Hesaplamalar ve içerik okumaya temel erişim |
Rol İzinleri
| İzin | owner | manager | member | Açıklama |
|---|---|---|---|---|
org:create | ✅ | Kuruluş oluşturma | ||
org:read | ✅ | ✅ | ✅ | Kuruluşu okuma |
org:update | ✅ | ✅ | Kuruluşu güncelleme | |
org:users:read | ✅ | ✅ | Kullanıcıları okuma | |
org:users:create | ✅ | ✅ | Kullanıcı davet etme | |
org:users:update | ✅ | ✅ | Kullanıcıları güncelleme | |
org:users:delete | ✅ | ✅ | Kullanıcıları kaldırma | |
billing:read | ✅ | ✅ | Faturalamayı görüntüleme | |
billing:manage | ✅ | ✅ | Faturalamayı yönetme | |
content:read | ✅ | ✅ | ✅ | İçerik okuma |
content:create | ✅ | ✅ | İçerik oluşturma | |
content:update | ✅ | ✅ | İçerik güncelleme | |
content:delete | ✅ | ✅ | İçerik silme | |
content:custom-copy | ✅ | ✅ | ✅ | Özel kopyalar oluşturma |
content:restore | ✅ | ✅ | İçerik geri yükleme | |
calc:use | ✅ | ✅ | ✅ | Hesaplama uç noktalarını kullanma |
chart:use | ✅ | ✅ | ✅ | Harita uç noktalarını kullanma |
modules:read | ✅ | ✅ | ✅ | Modül bilgilerini okuma |
admin:access | ✅ | Yönetici erişimi |
Kuruluş Bağlamı
Çok kiracılı uygulamalar için API anahtarları kuruluşlara kapsamlandırılır. Kuruluş bağlamı, kullanılan API anahtarına göre otomatik olarak uygulanır.
Alan Adı Kısıtlamaları
API anahtarları, hangi web sitelerinin bunları kullanabileceğini sınırlamak için alan adı kısıtlamalarıyla yapılandırılabilir:
example.com- Tam alan adı eşleşmesi*.example.com- Tüm alt alan adları*- Tüm alan adlarına izin ver (önerilmez)
Bir API anahtarı oluştururken veya düzenlerken panelde alan adı kısıtlamalarını yapılandırın.
Önemli Sınırlama
Alan adı kısıtlamaları yalnızca tarayıcı tabanlı kötüye kullanıma karşı koruma sağlar. Tarayıcıların zorunlu kıldığı ancak tarayıcı dışında (örn. curl, betikler, sunucu tarafı kod) kolayca taklit edilebilen Origin ve Referer başlıklarına dayanır.
İstemci Tarafı ve Sunucu Tarafı Kullanım
Sunucudan Sunucuya (Önerilen)
Üretim uygulamaları için her zaman arka uç sunucunuzda API anahtarlarını kullanın:
┌─────────────┐ ┌─────────────────┐ ┌─────────────┐
│ Browser │ ───► │ Your Backend │ ───► │ AstroAPI │
│ (no keys) │ │ (API key here) │ │ │
└─────────────┘ └─────────────────┘ └─────────────┘Bu yaklaşım:
- API anahtarınızı güvenli ve gizli tutar
- Kendi kimlik doğrulama katmanınızı eklemenize olanak tanır
- Son kullanıcılar tarafından API anahtarının çıkarılmasını engeller
- İstek imzalama ve ek güvenlik önlemlerini etkinleştirir
İstemci Tarafı / Tarayıcı Kullanımı
API anahtarlarını doğrudan tarayıcıda kullanmanız gerekiyorsa (örn. statik sitelere yerleştirilmiş widget'lar), sınırlamaların farkında olun:
- API anahtarları görünürdür JavaScript kaynak kodunda ve ağ isteklerinde
- Herkes çıkarabilir anahtarı web sitenizden
- Alan adı kısıtlamaları yalnızca diğer web sitelerinin anahtarınızı JavaScript aracılığıyla kullanmasını engeller - birinin anahtarı kopyalayıp başka bir yerde kullanmasını engellemez
İstemci tarafı kullanım için şunları öneririz:
- Alan adı kısıtlamalarını etkinleştirin
- Katı hız limitleri belirleyin
- Kısa sona erme süreleri kullanın
- Anormallikler için kullanımı izleyin
Müşteri Sorumluluğu
Önemli
API anahtarlarınızın güvenliği ve kullanımından siz sorumlusunuz.
API anahtarınızla yapılan tüm API istekleri, isterlerin sizin tarafınızdan mı yoksa anahtarınızı ele geçiren biri tarafından mı yapıldığından bağımsız olarak kotanıza sayılır ve hesabınıza faturalandırılır.
İstemci tarafı kodda bir API anahtarını ifşa ederseniz ve kötüye kullanılırsa, ortaya çıkan kullanım ve maliyetlerden siz sorumlusunuz. AstroAPI, geçerli bir API anahtarıyla yapılan meşru istekler ile yetkisiz istekler arasında ayrım yapamaz.
Riski en aza indirmek için:
- Mümkün olduğunda sunucudan sunucuya iletişim kullanın
- API anahtarlarını sürüm kontrolüne asla kaydetmeyin
- Ele geçirildiğinden şüpheleniyorsanız anahtarları hemen değiştirin
- Beklenmedik artışları tespit etmek için kullanım uyarıları kurun
Güvenlik En İyi Uygulamaları
- Üretim uygulamaları için sunucudan sunucuya iletişim kullanın
- Kesinlikle gerekli olmadıkça API anahtarlarını istemci tarafı kodda açıklamayın
- API anahtarlarını periyodik olarak değiştirin
- Minimum gerekli izinleri kullanın
- İstemci tarafı anahtarlar için alan adı kısıtlamalarını etkinleştirin
- Uygun hız limitleri belirleyin
- Panelde API anahtarı kullanımını izleyin