Hitelesítés

Két hitelesítő adat — egy API-kulcs a gépeknek, egy munkamenet a konzolnak — és a szabályok, amelyek távol tartják őket egymástól.

Kétféle hitelesítő adat

Az API egy API-kulcsot fogad el. A konzol egy munkamenet-sütit. Ezek nem felcserélhetők, és az API ezt érvényesíti, ahelyett hogy kérésenként döntené el, hogy egy süti rendeltetése szerint ott van-e.

Egy bejelentkezett böngésző nem hívhatja az API-t

A munkamenet-sütivel hitelesített kérés 403 api_key_required hibát kap, egy üzenettel, amely a konzol kulcsoldalára mutat. Ez szándékos: mivel nincs sütivel hitelesített útvonal az API-ba, nincs mit hamisítania egy webhelyek közötti kérésnek.

A fejléc

Küldje a kulcsot bearer tokenként. Egy kulcs egy előtagból, egy pontból és egy titokból áll; az előtag azonosítja a sort, így a visszavonás azonnali, és egyetlen keresésbe kerül.

curl https://api.llmeu.com/v1/chat/completions \
  -H "Authorization: Bearer llmeu_live_xxxxxxxx.your-secret" \
  -H "Content-Type: application/json" \
  -d '{"model":"llmeu-auto","messages":[{"role":"user","content":"Hello"}]}'

Hatókörök

Egy kulcs egy vagy több hatókört hordoz. Az a kérés, amelynek kulcsa hiányolja a végpont által megkövetelt hatókört, 403 insufficient_scope hibával utasíttatik el, mielőtt a törzs feldolgozásra kerülne.

Hatókör Feloldja
inference Chat completions, embeddings, valamint a modell lista- és részletvégpontok.
platform_read Olvasás a szervezetében: profil, kulcsok, használat, nyomkövetések és szabályzatok.
platform_write Kulcsok létrehozása és visszavonása, valamint szabályzatok létrehozása vagy szerkesztése. Ez az a hatókör, amely megváltoztatja, ki mit tehet, ezért szándékosan hozza létre.

A hatókörök végpontonként ellenőrzöttek, nem kulcsonként. Egy platform_read hatókörű kulcs nem költhet kreditet a játszótéren keresztül.

Kulcs létrehozása

A konzolon, vagy a platform API-n keresztül egy olyan kulccsal, amely már rendelkezik platform_write hatókörrel. A titok egyszer jelenik meg, a létrehozásakor: csak egy scrypt hash kerül tárolásra, így senki — beleértve minket is — nem tudja visszaolvasni.

curl -X POST https://api.llmeu.com/platform/v1/api-keys \
  -H "Authorization: Bearer llmeu_live_xxxxxxxx.a-platform-write-key" \
  -H "Content-Type: application/json" \
  -d '{"name":"ci","scopes":["inference"]}'

A konzol adminisztratív műveletei — szabályzatok, csapat, beállítások, kredit, kulcsok visszavonása — csak tulajdonos vagy admin számára engedélyezettek, függetlenül attól, hogy egy kulcs milyen hatókörökkel rendelkezik.

Visszavonás, és ami a kulcs nem

Egy kulcs egy szervezethez tartozik, és a szervezet magából a kulcsból kerül feloldásra — soha nem a kéréstörzs egyik mezőjéből, így egy hívó nem tud megszólítani egy másik bérlőt csak azért, mert szépen kéri. A visszavonás a következő kérésnél lép életbe. A rotáció egy második kulcs létrehozását, a forgalom átirányítását, majd az első visszavonását jelenti; nincs átfedési ablak, amit be kellene állítani.

A konzolhoz inkább

A bejelentkezés, a jelszó-visszaállítás és a címellenőrzés a konzollal együtt dokumentált. Nincs OAuth, nincs SAML és nincs személyes hozzáférési token: a konzol munkamenet-sütit használ, az API kulcsokat.