Fejlett hitelesítési minták — OAuth 2.0, JWT, kulcsrotáció

Ismerje meg a kifinomult hitelesítési mechanizmusokat a Smart Money API vállalati környezetbe való integrálásához. Tanuljon OAuth 2.0 folyamatokról, JWT token mintákról, biztonságos kulcsrotációról és többtényezős hitelesítés implementálásáról.

Közzétéve: 2026. március 21. 18 perc olvasás Haladó

Hitelesítés áttekintése

A Smart Money API többféle hitelesítési módszert támogat, amelyek különböző alkalmazásarchitektúrákat, biztonsági követelményeket és szervezeti irányelveket képesek kielégíteni. Ezeknek a mintáknak a megértése biztosítja, hogy az integráció biztonságos és hatékony legyen.

A Smart Money API hitelesítése három fő rétegben működik:

  • API kulcsok — Egyszerű bearer token hitelesítés fejlesztéshez és egyszerű integrációkhoz
  • JWT tokenek — Állapotmentes, kriptográfiailag aláírt tokenek elosztott rendszerekhez és mikroszolgáltatásokhoz
  • OAuth 2.0 — Delegált engedélyezési keretrendszer harmadik féltől származó integrációkhoz és SaaS alkalmazásokhoz

Biztonsági elv: Soha ne tegye közzé hitelesítési adatokat kliensoldali kódban, naplókban, verziókövetésben vagy hibaüzenetekben. Végezzen el rendszeres időközönként és azonnali veszély esetén hitelesítő adatok rotációját.

Mindegyik módszernek megvannak a saját előnyei. Az API kulcsok a legjobban backend-to-backend kommunikációhoz alkalmasak, ahol a hitelesítő adatok tárolása ellenőrizhető. A JWT tokenek elosztott architektúrákban kiválóak, ahol nincs megosztott állapot. Az OAuth 2.0 felhasználó által delegált hozzáférést biztosít harmadik féltől származó alkalmazások számára.

API kulcs hitelesítés

Az API kulcsok a legegyszerűbb hitelesítési mechanizmusok—véletlenszerű karakterláncok, amelyeket a fiókodhoz generálnak, és amelyek azonosítják az alkalmazásod a Smart Money API-val szemben. Minden kérésnek tartalmaznia kell az API kulcsodat, legyen az fejléc vagy lekérdezési paraméter.

Fejléc alapú API kulcs

Az ajánlott módszer az API kulcs átadása az Authorization fejlécben, a Bearer séma használatával:

curl Példa
curl -X GET "https://api.smartmoneyapi.com/v1/whales/btc" \
-H "Authorization: Bearer sk_live_1234567890abcdef" \
-H "Accept: application/json"

Lekérdezési paraméter API kulcs

WebSocket kapcsolatokhoz vagy ha a fejlécek nem módosíthatók, az API kulcsot lekérdezési paraméterként kell átadni:

WebSocket Kapcsolat
ws://localhost:8877/ws?api_key=sk_live_1234567890abcdef
// Hitelesített WebSocket stream létrehozása

API kulcs jellemzői

Tulajdonság Leírás
Formátum 128 karakteres hexadecimális karakterlánc, sk_test_ vagy sk_live_ előtaggal
Hatáskör Örökli annak a fióknak az összes engedélyét, amely létrehozta
Lejárat Soha nem jár le automatikusan; manuálisan kell forgatni
Forgatás Új kulcs generálása, forgalom átirányítása, majd a régi kulcs deaktiválása
Korlátok Megosztva az összes kérés között, amely ugyanazt a kulcsot használja

API kulcs biztonsági gyakorlatok

  • Környezeti változók — Kulcsok tárolása .env fájlokban (nem kerülnek verziókövetésbe) és futásidőben betöltése
  • Tárhely rendszerek — Használja a HashiCorp Vault, AWS Secrets Manager vagy Azure Key Vault termelési környezetben
  • Kulcsok szétválasztása — Tartsa külön a teszt és éles kulcsokat; forgassa gyakran a teszt kulcsokat
  • Minimális hatókör — Hozzon létre külön kulcsokat különböző integrációkhoz, amikor lehetséges
  • Naplózás ellenőrzése — Naplózza az összes API kulcs létrehozását és használatát
Szerezze meg API kulcsát 30 másodperc alatt

Készen áll az építésre? Szerezzen egy ingyenes API kulcsot (100 hívás/nap, kártya nélkül), és kezdjen élő bálnák, finanszírozási és láncon lévő adatok lekérését.

Szerezze meg API kulcsát →

Bearer Token Minta

A bearer tokenek kiterjesztik az egyszerű API kulcs koncepcióját kontextussal, lejárattal és frissítési mechanizmusokkal. Ideálisak azokhoz az alkalmazásokhoz, amelyek programozott hitelesítéskezelést igényelnek.

Bearer Tokenek Beszerzése

Cserélje le API kulcsát és titkos kulcsát egy 24 óráig érvényes bearer tokenre:

GET /auth/token
curl -X POST "https://api.smartmoneyapi.com/v1/auth/token" \
-H "Content-Type: application/json" \
-d '{
"api_key": "sk_live_1234567890",
"api_secret": "secret_abc123xyz"
}'

Token Válasz Formátum

A végpont egy bearer tokent ad vissza metaadatokkal:

Válasz
{
"access_token": "eyJhbGciOiJIUzI1NiIs...",
"token_type": "Bearer",
"expires_in": 86400,
"refresh_token": "refresh_1234567..."
}

Bearer Tokenek Használata

Adja hozzá a tokent az Authorization fejlécbe minden további kéréshez:

Hitelesített Kérés
curl -X GET "https://api.smartmoneyapi.com/v1/derivatives/funding-heatmap" \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIs..."

Token Frissítési Folyamat

Amikor egy token közeledik a lejárathoz, használja a frissítő tokent egy új token megszerzéséhez anélkül, hogy API titkos kulcsra lenne szüksége:

POST /auth/refresh
curl -X POST "https://api.smartmoneyapi.com/v1/auth/refresh" \
-H "Content-Type: application/json" \
-d '{
"refresh_token": "refresh_1234567..."
}'

OAuth 2.0 Implementáció

Az OAuth 2.0 lehetővé teszi a felhasználók számára, hogy alkalmazások hozzáférést kapjanak Smart Money API fiókjaikhoz hitelesítő adatok megosztása nélkül. Ez elengedhetetlen SaaS platformokhoz, harmadik féltől származó integrációkhoz és több-bérlős alkalmazásokhoz.

OAuth 2.0 Engedélyezési Kód Folyamat

A szabványos folyamat webalkalmazásokhoz:

  1. Felhasználó Bejelentkezés Kezdeményezése — A felhasználó rákattint a "Kapcsolódás Smart Money API-val" gombra
  2. Átirányítás az Engedélyezési Szerverre — Az alkalmazása átirányítja a felhasználót a Smart Money engedélyezési végpontjára
  3. Felhasználó Engedélyezése — A felhasználó áttekinti a kért hatóköröket és hozzáférést ad
  4. Engedélyezési Kód Visszaadása — A felhasználó vissza lesz irányítva egy engedélyezési kóddal
  5. Kód Cseréje Tokenre — A háttérrendszer kicseréli a kódot hozzáférési tokenre (a kód soha nem kerül a frontendre)
  6. Token Tárolása — Tárolja biztonságosan a frissítési tokent; használja a hozzáférési tokent API hívásokhoz

1. lépés: Irányítsa át a felhasználót az engedélyezési végpontra

Frontend átirányítás
// URL a felhasználó átirányításához
const authUrl = new URL('https://api.smartmoneyapi.com/oauth/authorize');
authUrl.searchParams.append('client_id', 'your_client_id');
authUrl.searchParams.append('redirect_uri', 'https://yourapp.com/callback');
authUrl.searchParams.append('response_type', 'code');
authUrl.searchParams.append('scope', 'whales derivatives onchain');
authUrl.searchParams.append('state', generateRandomState());
window.location.href = authUrl.toString();

2. lépés: Kezelje a visszahívást és cserélje ki a kódot

Backend kódcsere
// A backend kezeli a /callback útvonalat
const code = req.query.code;
const storedState = req.session.state;
const receivedState = req.query.state;
// Ellenőrizze a state paramétert
if (storedState !== receivedState) {
throw new Error('State mismatch - CSRF attack detected');
}
// Cserélje ki a kódot tokenre
const tokenResponse = await fetch('https://api.smartmoneyapi.com/oauth/token', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
grant_type: 'authorization_code',
code: code,
client_id: process.env.OAUTH_CLIENT_ID,
client_secret: process.env.OAUTH_CLIENT_SECRET,
redirect_uri: 'https://yourapp.com/callback'
})
});
const tokens = await tokenResponse.json();
// Tárolja biztonságosan a tokeneket

OAuth Scopes

Csak azokat a scopes-okat kérje, amelyekre az alkalmazásának szüksége van. A Smart Money API a következő scopes-okat határozza meg:

Scope Leírás
whales Hozzáférés bálnák pénztárca követéséhez és felhalmozási metrikákhoz
derivatives Hozzáférés futures, perpetuals és funding rate adatokhoz
onchain Hozzáférés on-chain tranzakciókhoz és elemzésekhez
alerts Webhook riasztások létrehozása és kezelése
offline Hozzáférés frissítési tokenekhez új hozzáférési tokenek offline beszerzéséhez

JWT Token Management

A JWT (JSON Web Tokens) állapotmentes hitelesítést biztosít – a szervernek nem kell munkamenetadatokat tárolnia. A Smart Money API RS256 (RSA Signature with SHA-256) algoritmust használ a tokenek aláírására, lehetővé téve az ellenőrzést az API-val való kapcsolat nélkül.

JWT Structure

A JWT tokenek három részből állnak, amelyeket pontok választanak el:

JWT Format
eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjEifQ.
eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkFjY3QxMjM0In0.
SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
// HEADER.PAYLOAD.SIGNATURE

JWT Header

A fejléc az algoritmust és a token típusát azonosítja:

Decoded Header
{
"alg": "RS256",
"typ": "JWT",
"kid": "1"
}

JWT Payload Claims

A payload tartalmazza a claims-eket (állításokat a felhasználóról/alkalmazásról):

Decoded Payload
{
"sub": "acct_1234567890",
"name": "Trading Bot",
"iat": 1703001600,
"exp": 1703088000,
"scopes": ["whales", "derivatives"],
"aud": "https://api.smartmoneyapi.com"
}

Verifying JWT Signatures

Töltse le a Smart Money nyilvános kulcsát és ellenőrizze a tokeneket, mielőtt elfogadná őket:

Node.js Verification
const jwt = require('jsonwebtoken');
const fs = require('fs');
// Get public key from Smart Money API
const publicKey = fs.readFileSync('smartmoney-public.pem');
// Verify token
try {
const decoded = jwt.verify(token, publicKey, {
algorithms: ['RS256'],
audience: 'https://api.smartmoneyapi.com',
issuer: 'https://api.smartmoneyapi.com'
});
// Token is valid, use decoded claims
} catch (err) {
// Token invalid or expired
}

Key Rotation Strategy

A rendszeres kulcscsere elengedhetetlen a biztonság fenntartása érdekében. Még tökéletes biztonsági gyakorlatok mellett is feltételezze, hogy a kulcsok veszélyeztethetők, és alkalmazzon rendszeres cserét.

Rotation Frequency

A Smart Money különböző rotációs ütemterveket ajánl a kulcs típusa és használata alapján:

Key Type Ajánlott csere Minimális csere
Test API Keys Havonta Negyedévente
Production API Keys Negyedévente Évente
OAuth Refresh Tokens Automatikus (90 nap után) Manuális (180 nap után)
Service Account Keys Félévente Évente

Zero-Downtime Rotation Process

Forgassa el a kulcsokat szolgáltatás megszakítása nélkül:

  1. Generate New Key — Hozzon létre új API kulcsot az irányítópulton vagy API-n keresztül
  2. Deploy New Key — Frissítse az alkalmazás titkait a staging környezetben, tesztelje alaposan
  3. Gradual Rollout — Telepítse a szerverek 10%-ára, figyelje a hibákat
  4. Teljes bevezetés — Üzembe helyezés a fennmaradó szervereken
  5. Forgalom ellenőrzése — Ellenőrizze, hogy minden kérés az új kulcsot használja-e
  6. Régi kulcs deaktiválása — Jelölje meg a régi kulcsot inaktívként, de ne törölje azonnal
  7. Régi kulcs törlése — 48 óra hibamentes működés után véglegesen törölhető

Vészhelyzeti kulcsrotáció

Ha gyanítja, hogy egy kulcs sérült:

Vészhelyzeti rotáció
// Azonnali intézkedés: A sérült kulcs deaktiválása
curl -X POST "https://api.smartmoneyapi.com/v1/keys/sk_live_xxx/revoke" \
-H "Authorization: Bearer token"
// Azonnal generáljon helyettesítő kulcsot
curl -X POST "https://api.smartmoneyapi.com/v1/keys" \
-H "Content-Type: application/json" \
-d '{
"name": "Vészhelyzeti helyettesítő kulcs"
}'

Automatikus rotáció Kubernetesben

Használjon Kubernetes Secrets és operátorokat az automatikus rotációhoz:

CronJob a kulcsrotációhoz
apiVersion: batch/v1
kind: CronJob
metadata:
name: api-key-rotator
spec:
schedule: "0 0 * * 0" # Hetente vasárnap
jobTemplate:
spec:
template:
spec:
containers:
- name: rotator
image: smartmoney-key-rotator:latest

Többtényezős hitelesítés (MFA)

A termelési adatokhoz hozzáférő fiókok esetén az MFA további biztonsági réteget biztosít, mivel a hitelesítő adatokon túl második tényezőt is megkövetel.

Támogatott MFA módszerek

  • TOTP (Időalapú egyszeri jelszó) — Alkalmazások, mint a Google Authenticator, Authy
  • WebAuthn/FIDO2 — Hardveres biztonsági kulcsok, biometria
  • SMS egyszeri kódok — Kevésbé biztonságos, de univerzálisan támogatott
  • E-mail megerősítés — Megerősítő kódok a regisztrált e-mail címre küldve

TOTP engedélyezése fiókhozzáféréshez

MFA engedélyezése
// 1. lépés: MFA beállítás kérése
curl -X POST "https://api.smartmoneyapi.com/v1/account/mfa/enable" \
-H "Authorization: Bearer token"
// A válasz tartalmazza a QR-kód URL-t
{
"qr_code_url": "https://...",
"secret": "JBSWY3DPEBLW64TMMQ...",
"backup_codes": ["12345678", ...]
}

MFA az API műveletek során

Egyes műveletek MFA megerősítést igényelhetnek a hitelesítés után is:

MFA kihívás
// Bizalmas művelet megkísérlése (kulcsrotáció)
curl -X POST "https://api.smartmoneyapi.com/v1/keys/rotate" \
-H "Authorization: Bearer token" \
-H "X-MFA-Token: mfa_challenge_abc123"
// Válasz: MFA szükséges
{
"error": "mfa_required",
"mfa_token": "mfa_xyz789"
}
// Újrapróbálkozás TOTP kóddal
curl -X POST "https://api.smartmoneyapi.com/v1/keys/rotate" \
-H "Authorization: Bearer token" \
-H "X-MFA-Code: 123456"

Biztonsági ajánlott eljárások

A hitelesítés csak annyira erős, mint a megvalósítása. Kövesse ezeket a gyakorlatokat a biztonság fenntartása érdekében:

Titkok kezelése

  • Sosem commitoljon titkokat a verziókövetésbe — Használjon .env fájlokat .gitignore-val
  • Használjon környezeti változókat — Töltse be biztonságos titkosítási rendszerekből
  • Repozitóriumok szkennelése — Használjon olyan eszközöket, mint a TruffleHog, detect-secrets a kiszivárgott kulcsok felkutatására
  • Hozzáférési naplók auditálása — Figyelje, ki és mikor fér hozzá a titkokhoz

Szállítási biztonság

  • Mindig használjon HTTPS-t — Sosem küldjön hitelesítő adatokat titkosítatlan kapcsolaton keresztül
  • SSL tanúsítványok ellenőrzése — Ne tiltsa le a tanúsítványérvényesítést termelésben
  • Használjon tanúsítvány rögzítést — Mobilalkalmazások esetén megelőzheti a MITM támadásokat
  • TLS 1.2+ kényszerítése — Tiltsa le a régebbi protokollokat

Hitelesítő adatok kezelése

  • Titkok hashelése — Tároljon bcrypt vagy Argon2 hash-eket, sosem nyers szöveget
  • Élettartam minimalizálása — A hitelesítő adatokat csak a szükséges ideig tartsa a memóriában
  • Érzékeny adatok törlése — Explicitül írja felül a hitelesítő adatokat használat után
  • Biztonságos könyvtárak használata — Ne implementáljon saját titkosítást

Naplózás és monitorozás

  • Sosem naplózzon hitelesítő adatokat — Maszkolja a kulcsokat a naplókban, használjon log maszkolást
  • Hitelesítési események naplózása — Kövesse nyomon a sikeres és sikertelen bejelentkezési kísérleteket
  • Rendellenességek monitorozása — Figyelmeztessen szokatlan hozzáférési mintákra
  • Kulcshasználat auditálása — Kövesse nyomon, mely kulcsok értek el milyen adatokat

Vállalati hitelesítési minták

A nagy szervezetek gyakran további biztonsági ellenőrzéseket és megfelelési képességeket igényelnek.

SAML 2.0 integráció

Vállalati ügyfelek számára a Smart Money API támogatja a SAML 2.0 integrációt a szervezet identitásszolgáltatójával (Okta, Azure AD stb.):

  • Egyszeri bejelentkezés (SSO) — A felhasználók a vállalati IdP-n keresztül hitelesítik magukat
  • Automatikus kiépítés — Fiókok létrehozása/inaktiválása csoporttagság alapján
  • Kényszerítés — SAML megkövetelése minden felhasználói hozzáféréshez

IP engedélyezési lista

Korlátozza az API hozzáférését meghatározott IP-címekre vagy CIDR tartományokra:

IP Whitelist Management
// IP hozzáadása a whitelisthez
curl -X POST "https://api.smartmoneyapi.com/v1/account/ip-whitelist" \
-H "Authorization: Bearer token" \
-d '{
"cidr": "203.0.113.0/24",
"description": "Production servers"
}'

Audit Logging and Compliance

Az Enterprise csomagok átfogó auditnaplókat tartalmaznak megfelelőséghez:

Event Logged Data
Authentication Felhasználó, időbélyeg, siker/hiba, IP, MFA állapot
Key Operations Kulcs azonosító, művelet, kezdeményező, időbélyeg
Account Changes Mi változott, ki változtatta, időbélyeg, előtte/utána értékek
Data Access Felhasználó, végpont, hatókörök, időbélyeg, rekordok száma

Troubleshooting Authentication Issues

Invalid API Key Error

Probléma: "401 Unauthorized - Invalid API Key" hibaüzenet érkezik

Megoldások:

  • Ellenőrizze a kulcs formátumát (sk_test_ vagy sk_live_ kell, hogy kezdődjön)
  • Ellenőrizze a kulcsban lévő kezdő/záró szóközöket
  • Erősítse meg, hogy a kulcsot nem deaktiválták vagy cserélték le
  • Győződjön meg róla, hogy a megfelelő környezetet használja (teszt kulcs teszteléshez, élő éleshez)
  • Ellenőrizze, hogy az API kulcs jogosultságai megfelelnek-e a végpont követelményeinek

Token Expired Error

Probléma: A Bearer token lejárt, a kérések sikertelenek

Megoldások:

  • Használjon refresh tokent új access token lekéréséhez
  • Valósítson meg automatikus token frissítést 5 perccel a lejárat előtt
  • Tárolja biztonságosan a refresh tokent (ne localStorage-ban SPA-k esetén)
  • Kezelje a 401 válaszokat a refresh token folyamat megpróbálásával

CORS/Preflight Errors

Probléma: A böngésző CORS hibával blokkolja a kéréseket

Megoldások:

  • A böngészőből érkező API hívásoknak whitelistelt eredetűeknek kell lenniük
  • Adja hozzá a domainjét a vezérlőpulton: Beállítások → CORS Origins
  • A böngésző automatikusan küld OPTIONS preflight kérést
  • Fejlesztéshez használjon localhost:3000 vagy hasonlót

MFA Challenge Not Completing

Probléma: Az MFA-t igénylő műveletek hibásak, még a helyes kód megadása esetén is

Megoldások:

  • Győződjön meg róla, hogy a szerver órája szinkronizálva van (a TOTP időre támaszkodik)
  • A kód csak 30 másodpercig érvényes, generáljon újat
  • Használjon tartalék kódokat, ha a hitelesítő alkalmazás nem elérhető
  • Fiók helyreállítás elérhető a regisztrált e-mail címen keresztül

Implement Secure Authentication Today

A Smart Money API támogatja az enterprise szintű hitelesítést OAuth 2.0, JWT, MFA és SAML integrációval. Biztosítsa API integrációját az iparági legjobb gyakorlatok szerint.

View Enterprise Plans
SAML, IP whitelisting vagy dedikált támogatás szükséges? Lépjen kapcsolatba értékesítési csapatunkkal.

Related Resources

Start free — 200 calls/day, no card

Kapjon élő whale flow, funding, nyílt kamat és on-chain adatokat 3 tőzsdéről egy API-ból. Ingyenes szint, nincs bankkártya kötelező, bármikor frissíthet.

Start free →
Try the live API console → (no account needed)