KernelHost API

Mit nyújt a KernelHost API (Viszonteladói API)

A KernelHost Viszonteladói API pontosan azokat a megrendelési és kezelési műveleteket teszi elérhetővé, amelyeket egyébként az ügyfélportálon kattintással végezne. Lehetővé teszi viszonteladói üzletének automatizálását, a KernelHost-termékek integrálását saját frontendjébe vagy számlázási rendszerébe, miközben teljes mértékben Ön kezében marad a kulcsonkénti jogosultságok, sebességkorlátok és IP fehérlisták felügyelete.

Minden hívás HMAC-SHA256 aláírást kap, visszajátszás ellen védett, feldolgozása idempotens (megrendeléseknél kötelező), és manipulációbiztos audit-naplóba kerül. A fizetés először az Ön egyenlegét, majd az eltárolt kártyáját terheli. Biztonsági okokból új kártyát kizárólag az ügyfélportálon lehet hozzáadni (3-D Secure 2).

Alap URL
https://www.kernelhost.com/cp/kernelhost_api/v1

Tartalomjegyzék

Mire használhatja az API-t

  • Termékek és árak böngészése (KVM-rootszerverek, dedikált, tárhely, Minecraft, VPN, korlátlan forgalom).
  • Megrendelések leadása (az Idempotency-Key megvédi a kettős terheléstől hálózati újrapróbálkozáskor).
  • Saját szolgáltatások listázása, állapotuk ellenőrzése és műveletek futtatása (start, stop, reboot), valamint felmondás a számlázási időszak végére és annak visszavonása.
  • Kizárólag saját szolgáltatások hozzáférési adatainak kiolvasása (külön jogosultság, auditált, választható megerősítő e-mail minden hozzáférésnél).
  • Számlák lekérése, egyenleg ellenőrzése, számla PDF-ek letöltése.
  • Kulcsonként egy webhook URL beállítása. A megrendelési, szolgáltatási és számlázási események kézbesítése előkészítés alatt áll; addig az állapotot a GET /v1/orders/{id} és a GET /v1/services/{id} segítségével kérdezheti le.

Maximális biztonságra tervezve

Az API-t azzal a feltételezéssel terveztük, hogy minden egyes hívásnak közvetlen pénzügyi következménye van és érzékeny szerverhozzáférési adatokat tárhat fel. A biztonsági alapszint ezért jóval a szokványos REST-elvárások felett van.

  • HMAC-SHA256 kérésaláírás a metódus, útvonal, időbélyeg, nonce és törzs hash felett. Állandó idejű összehasonlítás.
  • Visszajátszás elleni védelem: +-300 másodperces időablak, egyszer használatos nonce-gyorsítótár 600 másodpercig.
  • A titkokat kizárólag AES-256-GCM rejtjelszövegként tároljuk. Nyílt szöveg csak átmenetileg, a memóriában létezik az aláírás-ellenőrzéshez. A mesterkulcs az adatbázison kívül található.
  • Részletes, kulcsonkénti jogosultságok. A veszélyes jogosultságokat (read:credentials, write:orders) kifejezetten engedélyezni kell. Az alapértelmezés csak olvasás.
  • Adatbázis-szintű adatelkülönítés: minden lekérdezés szigorúan az Ön fiókazonosítójára szűr. Bérlők közötti hozzáférés tervezetten lehetetlen.

Példa: saját fiók lekérdezése

A kérés teljes egészében az Ön titkával kerül aláírásra. A titok soha nem hagyja el a kliens memóriáját, csak az aláírás kerül továbbításra.

TS=$(date +%s)
NONCE=$(openssl rand -hex 16)
BODY_SHA256=$(printf '' | openssl dgst -sha256 -hex | awk '{print $2}')
SIG_INPUT=$(printf 'GET\n/v1/me\n%s\n%s\n%s' "$TS" "$NONCE" "$BODY_SHA256")
SIG=$(printf '%s' "$SIG_INPUT" | openssl dgst -sha256 -hmac "$KH_SECRET" -hex | awk '{print $2}')

curl https://www.kernelhost.com/cp/kernelhost_api/v1/me \
  -H "KH-Key: $KH_KEY" \
  -H "KH-Timestamp: $TS" \
  -H "KH-Nonce: $NONCE" \
  -H "KH-Signature: $SIG"

Gyakran ismételt kérdések

Ki használhatja a Viszonteladói API-t?

Minden meglévő KernelHost-ügyfél létrehozhat kulcsokat az ügyfélportál "KernelHost API" menüpontjában, mindegyiket saját címkével, jogosultságokkal és IP fehérlistával. Kulcsot kizárólag a fióktulajdonos hozhat létre, rotálhat vagy vonhat vissza. Külön viszonteladói szerződésre nincs szükség: minden nyilvánosan listázott termék megrendelhető az API-n keresztül.

Hogyan történik a megrendelések kifizetése?

A fizetés sorrendje: először az egyenlege, majd az eltárolt fizetési módja. Ha a fizetés sikertelen, vagy nincs eltárolt kártya, az API HTTP 402 "Payment Required" választ ad pontos indoklással (insufficient_credit_and_no_card, card_declined, credit_apply_failed), és a megrendelést azonnal törli, így nem marad vissza kifizetetlen megrendelés.

Le tudom kérni a szolgáltatási jelszavakat az API-n keresztül?

Igen, de kizárólag a saját szolgáltatásaihoz, és csak a kifejezett read:credentials jogosultsággal, amelyet a kulcs létrehozásakor külön engedélyezni kell. A válasz tartalmazza a hosztnevet, az IP-címeket, a felhasználónevet és a jelszót. Minden hozzáférésről credentials.read audit-naplóbejegyzés készül, és megerősítő e-mail megy a fiókhoz tartozó e-mail-címre, így a rejtett visszaélés nem marad észrevétlen.

Mi történik, ha a titkom kompromittálódik?

A secretet egyetlen kattintással rotálhatja az ügyfélportálon, a régi secret azonnal érvénytelenné válik. A sikertelen hitelesítési kísérleteket naplózzuk és forrás-IP-nként korlátozzuk, de soha nem zárolják a kulcsát, így senki sem blokkolhatja az integrációját pusztán azért, mert ismeri a kulcs nyilvános azonosítóját.

Készen áll a kezdésre?

Hozza létre az első API-kulcsát az ügyfélportálon a "KernelHost API" menüpont alatt, majd kövesse a gyors kezdési útmutatót.