İnkişaf portalı və giriş tokenləri
1) Developer portalının rolu
Developer Portal inteqratorlar üçün "ön ofis 'dir: özünə xidmət (açarlar, tokenlər, vebhuklar, tarif planları), şəffaflıq (limitlər, usage, invoyslar), təhlükəsizlik (rotasiya, imzalar), inteqrasiya sürəti (SDK, sənədləşmə, qum qutusu).
Əsas məqsədlər:- TTI-ni (time-to-integrate) saata endirin.
- Access Management verin: kim/nə/nə qədər/nə vaxt.
- Avto alətlər vasitəsilə dəstək yükünü azaltın.
2) Hesablar və hesablar
Qeydiyyat: email + 2FA/SSO (SAML/OIDC); domen təsdiqi (DNS-token).
Təşkilatlar və komandalar: «Owner», «Admin», «Developer», «Billing», «Security» rolları.
Multi-tenant: proqramların təşkilatlara bağlanması; məlumatlara giriş - tenant/mühit.
KYC/B2B (ops.) : Enterprise üçün - hüquqi şəxs, müqavilə, daha yüksək limitlər.
3) Proqramlar və kredenşellər
Tətbiq növləri: 'server-to-server', 'web', 'mobile', 'machine-to-machine', 'webhook-consumer'.
3. 1 API Keys (server-to-server, sadə inteqrasiya)
'key _ id' + gizli 'key _ secret' identifikatoru (bir dəfə görünür).
Plana və scopes dəstlərinə bağlama.
Sorğu imzası (HMAC) və/və ya başlıq 'Authorization: ApiKey <key_id>:<signature>'.
3. 2 OAuth2/OIDC (tövsiyə olunur)
Qrantlar:- Client Credentials (maşınlar).
- Authorization Code (+PKCE) (user-delegated).
- Refresh Token (oflayn giriş, RT rotasiyası).
- Device Code (TV/konsol).
3. 3 mTLS (əlavə səviyyə)
ingress qarşılıqlı TLS; sertifikatlar portal vasitəsilə yüklənir; 'cert _ fingerprint' proqramına bağlayın.
4) Tokenlər: növləri və həyat dövrü
Prinsiplər:- Qısa AT + uzun RT; RT - sürüşkən rotasiya (rotate-on-use).
- Məcburi geri çağırma (revoke) açar/app/təşkilat.
- Scopes/kvotalar üzrə məhdudiyyətlərin saxlanılması ilə yenidən verilməsi.
4. 1 JWT formatı (nümunə)
json
{
"iss":"https://auth. example. com",
"sub":"app_123",
"aud":"https://api. example. com",
"exp":1730616000,
"iat":1730612400,
"scp":["wallet:read","bet:write"],
"org":"acme",
"kid":"jwks_2025_11",
"jti":"at_01HXY..."
}
İctimai açarlar JWKS-də dərc olunur; 'kid' tərəfindən rotasiya.
4. 2 Opaque tokenləri və Introspection
Auth-serverdə saxlayın 'token _ store' (Redis/SQL).
İntrospektsiya: 'active', 'scope', 'exp', 'client _ id', 'org', 'tenant'.
5) Scopes, rolları və giriş siyasəti
Scopes əməliyyatları təsvir edir ('wallet: read', 'wallet: write', 'report: read').
Rollar skopları birləşdirir ('Developer', 'Billing').
ABAC: 'org', 'tenant', 'region', 'environment' atributları.
Siyasətçilər: 'bu açar yalnız 'eu-west-1' və 'read' '.
Step-up: kritik üsullar üçün genişləndirilmiş scopes və ya mTLS tələb olunur.
6) Kvotalar, limitlər və tariflər
Rate limits: RPS/RPM, burst.
Kvotalar: gün/ay, kreditlər.
Açar/app/təşkilat/tenant.
Portal usage, 'X-RateLimit-' və 'X-Quota-' başlıqlarını, həmçinin overage proqnozunu göstərir.
Billing: planla əlaqə, hadisələrin ölçülməsi, invoys və vebhuk billing.
7) Vebhukların idarə edilməsi
Hadisələrin enpoint 'lərinin, sirlərinin, versiyalarının qeydiyyatı.
Test-çatdırılma və replay; cəhdlər log (2xx/4xx/5xx).
İmzalar HMAC ('X-Signature'), 'X-Webhook-Id', deduplikasiya, respect '410'.
8) Sənədləşmə və SDK
OpenAPI/AsyncAPI SDK avtomatik generasiya ilə.
Cookbook: sorğu nümunələri, retrajlar, idempotentlik, paginasiya, webhooks.
Try-it playground (qum açarları ilə).
Changelog versiyası və deprekasiya səhifəsi.
9) Qum qutusu və test məlumatları
İzolyasiya olunmuş mühitlər: 'sandbox', 'staging', 'production'.
Test varlıqları (oyunçular, əməliyyatlar) və ssenarilər (win/lose, gecikmələr, 5xx, 429).
Data seeding portal və reset mühit.
10) Təhlükəsizlik və sirlərin saxlanması
API Key gizli hash (açıq saxlamaq deyil); açarı bir dəfə göstərmək.
İmza nişanları üçün Secret Manager (KMS/HSM); kid açarlarının rotasiyası.
IP allowlist, geo-məhdudiyyətlər, ASN-filtrlər.
2FA/SSO, hardware açarları (WebAuthn).
Sui-istifadə qorunması: CAPTCHA yaradıldıqda, anti-bot evristika, qeydiyyat sürəti.
PII/sirləri olmayan loqlar; redaction şablonlara görə.
11) Audit və uyğunluq
Audit-log: açarı kim yaratdı/baxdı/geri çağırdı, vebhuk dəyişdirdi, hesabatı yüklədi.
GDPR/DSAR: app/təşkilat məlumatlarının yüklənməsi və silinməsi.
Saxlama siyasəti: TTL qeydlər üçün, hadisələr zamanı qanuni Hold.
Terms of Use/Fair Use və ixrac məhdudiyyətləri.
12) İdarəetmə və əməliyyatlar
Hadisə/güzəştə görə tokenlərin kütləvi geri çağırılması.
Səbəb və müraciət ilə tətbiqin müvəqqəti dayandırılması (suspend).
Roll-over açarları (iki açar rejimi: 'active/next').
Hadisə-comm: status-səhifə, poçt, RSS/vebhuk status.
13) UI/UX portal (açar ekranlar)
Dashboard təşkilat: usage/səhvlər/SLO/billing.
Proqram: açarlar, tokenlər, scopes, limitlər, vebhuklar, mühit.
Filters və Replay düyməsi ilə vebhuk çatdırılma qeydləri.
Token konsolu: buraxılış/baxış, tarix, səbəblər.
Sənədləşmə və SDK, Quickstart, kod nümunələri (kopyala-yapışdıra).
Deprekasiya və miqrasiya bölməsi.
14) Müqavilə və konfiqurasiya nümunələri
14. 1 OpenAPI (fraqmentlər)
yaml paths:
/v1/apps:
post:
summary: Create app security: [{ oauth2: [admin:apps. write] }]
responses:
'201': { description: Created }
/v1/apps/{app_id}/keys:
post:
summary: Create API key (shown once)
responses:
'201': { description: Created }
/v1/oauth2/token:
post:
summary: Token endpoint (CC/AC)
responses:
'200': { description: Access token }
/v1/tokens/revoke:
post:
summary: Revoke access/refresh token responses:
'204': { description: Revoked }
14. 2 Tokenin introspektsiyası (cavab)
json
{
"active": true,
"client_id": "app_123",
"scope": "wallet:read bet:write",
"org": "acme",
"exp": 1730616000,
"token_type": "access_token",
"jti": "at_01HXY..."
}
14. 3 Açar Siyasəti (JSON)
json
{
"app_id":"app_123",
"plan":"pro-2025",
"scopes":["wallet:read","report:read"],
"limits":{"rps":50,"daily_requests":250000},
"regions":["eu-west-1"],
"ip_allow":["192. 0. 2. 0/24"]
}
15) Version və deprekasiya prosesləri
Semantik API versiyaları ('/v1 ', '/v2'), «əlavə et, sındırma» uyğunluğu.
Portal göstərir: «nə köhnəlib», hansı tarixə qədər və «necə köçmək olar».
Miqrasiya bələdçiləri, test qum qutusu 'v2', mümkün olan yerdə dual-write/dual-read.
16) Müşahidə və hesabat
Usage → gəlir: sorğu/kredit/overage qrafikləri.
/ 'error _ code', latentlik histoqramları ilə bağlı səhvlər.
SLO widget 'lar: açar qulplar üçün əlçatanlıq və p95.
CSV/JSON ixracı, hesabat vebhukları, analitika üçün API.
17) Çek vərəqləri
17. 1 Təhlükəsizlik
- 2FA/SSO, domen/poçt təsdiqi
- Sirləri bir dəfə göstərmək, hash saxlama
- JWKS və açar rotasiyası, 'kid'
- mTLS (opts.) , IP allowlist, geo/ASN filtrlər
- Anti-bot/anti-abuse, açar yaratmaq üçün rate-limit
- Audit-log hərəkətlər və girişlər
17. 2 DX/Onbording
- Quickstart ≤ 5 dəqiqə
- Eyni səthi olan SDK (TS/Py/Java/Go/.NET)
- Playground + qum açarları
- Cookbook: Webhook, Pagination, Retray, İdempotent
- Limitlər/planlar/qiymətlər səhifəsi
- Nümunələr «kopyala-yapışdırmaq»
17. 3 Əməliyyat
- Tokenlərin kütləvi rəyi, suspend app
- Hadisə/status səhifəsi + abunə
- Webhook üçün DLQ/Replay
- Kvotaların yaxın tükənməsi barədə avtomatik xəbərdarlıqlar
- Aylıq hesabatlar və invoyslar
18) Tətbiq planı (3 iterasiya)
İterasiya 1 - MVP (2-3 həftə):- Org/Applications qeydiyyatı, API Keys, Client Credentials OAuth2, baza limitləri (RPS/kvotalar), sorğu qeydləri və usage-qrafiklər, sənədləşmə və SDK TS/Python, qum qutusu.
- JWT + JWKS, açar rotasiyası, Refresh Token + rotate-on-use, mandat 2FA/SSO, webhucks (imzalar, retries, loging, replay), billing webhucks, hesabatlar və ixrac, rollar və ABAC.
- mTLS, inzibati alətlər (mass revoke/suspend), deprekasiya və miqrasiya v2, SDK Java/Go/.NET, finops dashboard, GDPR/DSAR, Legal Hold, qabaqcıl anti-sui-istifadə.
19) Mini-FAQ
JWT və ya opaque?
JWT Auth serverinə müraciət etmədən rahatdır (imza/' kid '), opaque - geri çağırmaq və məzmunu gizlətmək daha asandır. Hər ikisi tez-tez istifadə olunur: xarici JWT, daxili - introspektsiya ilə opaque.
Access Token nə qədər yaşayır?
Qısa: xüsusi üçün 5-15 dəqiqə, maşın üçün 15-60 dəqiqə. Refresh mexanikası ilə kompensasiya olunur.
Açarları təhlükəsiz şəkildə necə çevirmək olar?
Saxlayın 'active/next', JWKS-də hər ikisini dərc edin, müştəriləri 'kid' ilə dəyişdirin, sonra köhnə geri çağırın.
Yekun
Güclü inkişaf portalı öz-özünə xidmət, müşahidə və təhlükəsizlikdir. Aydın token buraxılış/rotasiya/geri çağırma prosesləri, şəffaf limitlər və billing, keyfiyyətli sənədlər və SDK, etibarlı webhucks və audit verin. Sonra inteqratorlar tez bir zamanda başlayacaq və platforma idarə edilə bilən, komplayent və davamlı olaraq qalacaq.