BYOK Provider-Key Onboarding for AI API Gateways: preverite poverilnice stranke pred usmerjanjem prometa
Praktična zasnova za preverjanje poverilnic OpenAI, Anthropic, Gemini in Azure OpenAI, ki jih zagotovi stranka, preden prehod AI API prek njih pošlje produkcijski promet.
Uvajanja BYOK ne obravnavajte kot besedilno polje, ki sprejme ključ API navzgor in takoj omogoči usmerjanje. V produkcijskem prehodu AI API poverilnice, ki jih zagotovi stranka, potrebujejo delovni tok nadzorne ravnine: zberite povezovanje ponudnika, postavite ključ v karanteno, zaženite sonde, specifične za ponudnika, zgradite matriko zmogljivosti in šele nato pripnite poverilnico pravilniku o usmerjanju najemnika.
Težava z bralnikom je delujoča: stranka prilepi poverilnico OpenAI, Anthropic, Gemini ali Azure OpenAI, ki je videti veljavna, vendar prva prava zahteva ne uspe, ker ključ pripada napačnemu projektu, nima dostopa do modela, ne more poklicati izbrane končne točke, ima šibko kvoto ali ne razkrije podatkov o uporabi, potrebnih za zaračunavanje in usklajevanje. Prehod bi moral odkriti te omejitve, preden je promet strank odvisen od njih.
Načrtujte poverilnico BYOK kot objekt nadzorne ravnine s stanjem
Poverilnica BYOK mora biti ločena od ključa, ki ga izda prehod in ga uporabljajo aplikacije. Aplikacije bi morale poklicati prehod s stabilnim navideznim ključem, medtem ko prehod preslika tega najemnika, načrt izdelka, profil modela in politiko v preverjeno poverilnico navzgor. Ta ločitev ohranja stabilno integracijo aplikacij, ko stranka rotira navzgornji ključ, spremeni projekte ponudnika ali izgubi določeno zmogljivost modela.
Vsaj modelirajte poverilnico navzgor s temi stanji:
- submitted: prejeto s krmilno ravnino, vendar še ni uporabno.
- v karanteni: shranjeno v trezorju in blokirano za promet v živo med izvajanjem sond.
- preverjeno: dovoljeno za določene zmogljivosti, ki so prestale preverjanje.
- zmanjšano: še vedno uporabno za nekaj prometa, vendar ena ali več zmogljivosti, signali kvote ali pričakovanja glede poročanja o uporabi niso uspela.
- začasno ustavljeno: začasno blokirano po napakah pri preverjanju pristnosti, dovoljenju, kvoti, obračunavanju ali pravilniku.
- rotation-required: še vedno pozna prehod, vendar ga je treba zamenjati pred nadaljevanjem proizvodne uporabe.
- preklicano: odstranjeno iz usmerjanja in ni več sprejeto kot rezerva.
Ta stroj stanja je pomemben za ekipe, ki gradijo prehod LLM z več ponudniki API, ker ena sama normalizirana zastavica »veljaven ključ« skriva vedenje, specifično za ponudnika. Prehod mora vedeti, katere končne točke, modeli, regije, modalitete in načini poročanja so varni za vsakega najemnika.
Zberite povezovalna polja ponudnika, preden zahtevate skrivnost
Obrazec za vkrcanje mora zahtevati kontekst usmerjanja, ki ni tajen, pred skrivnostjo ali poleg nje. Ta kontekst preprečuje dvoumne sonde in ustvari boljša sporočila o napakah.
OpenAI
Zberite predvideno organizacijo in projekt, zahtevane profile modelov in ali je ključ uporabniški ključ ali ključ storitvenega računa. Koristno preverjanje bi moralo preveriti vezavo projekta in dovoljenja, ker OpenAI dokumentira nadzor dostopa na podlagi vlog na ravni organizacije in projekta, in API dovoljenja ureja ta model. Klic, kot je seznam modelov, lahko zahteva dovoljenja za branje modela od ustreznega ključa in vloge.
Za storitvene račune obravnavajte obsege kot omejitve, ne kot neodvisno avtoriteto. OpenAI Obseg ključa storitvenega računa lahko omeji, kaj stori račun storitve, vendar ne more podeliti dovoljenj zunaj dodeljene projektne vloge. Praktično gledano je lahko ključ videti ozko obsegajoč in vseeno ne uspe, ker vloga projekta ne dovoljuje zahtevanega modela ali končne točke.
Anthropic
Zberi ID predvidenega delovnega prostora, ko ima stranka več kot en delovni prostor ali uporablja tokove, povezane z identiteto. Anthropic delovni prostori lahko vsebujejo člane, storitvene račune, API ključe in omejitve virov ter so namenjeni ločevanju projektov, okolij ali skupin pri centraliziranem obračunavanju in upravljanju.
Preverjevalnik mora ohraniti, ali zahteva zahteva anthropic-workspace-id glavo. Anthropic dokumentacija pravi, da tokovi ključa, povezani z identiteto ali z več delovnimi prostori API, morda zahtevajo to glavo. Izogibajte se tudi domnevi, da lahko ključ v obsegu delovnega prostora med izvajanjem pregleda omejitve virov na ravni organizacije. Ključi v obsegu delovnega prostora niso veljavni za nekatere operacije skrbnika API na ravni organizacije, kot je pregled omejitve hitrosti delovnega prostora.
Gemini
Zberite, ali ključ izvira iz AI Studia ali Google projekta v oblaku, predvideni kontekst projekta, dovoljene API-je in morebitne omejitve, ki jih stranka pričakuje. V dokumentaciji ključev Google Gemini API piše, da je vsak ključ Gemini API povezan s projektom v oblaku Google, novi ključi AI Studio pa so ustvarjeni kot ključi za preverjanje identitete. Prav tako pravi, da neomejene standardne ključe zavrača Gemini API kot del odmika od nevarnih neomejenih ključev.
Uporabniški vmesnik za vkrcanje bi moral označevati nevarne neomejene standardne ključe, namesto da bi stranke spodbujal k sprostitvi omejitev, dokler sonda ne uspe. Google Navodila za API-ključ v oblaku priporočajo API omejitve, izogibanje ključem v poizvedbenih parametrih, brisanje nepotrebnih ključev in neposredovanje ključev v repozitorije. Gemini overitveni ključi so posebna produkcijska izjema, ker Gemini API ne ustvarijo Google virov projekta v oblaku, vendar bi moral preveritelj še vedno beležiti vrsto ključa in položaj omejitve.
Azure OpenAI
Zberite končno točko, ime uvedbe, API različico, regijo in kontekst naročnine, če ga stranka lahko zagotovi. Azure OpenAI usmerja skozi uvedbe, ki jih ustvarijo stranke, zato generično ime modela ni dovolj. Ključ je lahko veljaven za vir, medtem ko zahtevano ime uvedbe manjka, je v drugi regiji ali je vezan na različico modela, ki je prehod ne pričakuje.
Azure OpenAI kvota je dodeljena glede na naročnino, regijo, model in vrsto uvedbe v enotah TPM. Dodeljeni TPM se preslika v omejitve hitrosti uvajanja, medtem ko je RPM tudi uveljavljen. Odzivi med izvajanjem lahko razkrijejo uporabne glave omejitev hitrosti, kot so preostale zahteve, preostali žetoni in poskusi po ms. Zajemite te signale med sondami in spremljanjem med izvajanjem.
Zaženi preverjanje v plasteh
Dober paket pred letenjem se začne poceni in z nizkim tveganjem, nato pa uporabi eno najmanjšo plačljivo sondo samo, če se stranka strinja. Nekateri ponudniki ne izpostavljajo dovolj introspekcije prek ključev izvajalnega okolja, zato mora uspešen rezultat vključevanja vključevati raven zaupanja, ne le uspešno ali neuspešno.
1. Statični pregledi
Preverite očitne težave z oblikovanjem, manjkajoča polja, nezdružljive oblike končnih točk, nepodprte regije in napačno oblikovana imena uvajanja, preden pokličete ponudnika. Statični pregledi ne smejo nikoli beležiti neobdelane skrivnosti. Namesto tega shranite prstni odtis, vir ustvarjanja, ID najemnika, ponudnika in sklic na trezor.
Primeri:
- Končna točka Azure se ne ujema s pričakovanim vzorcem URL-ja vira.
- Ime uvedbe Azure je prazno, čeprav se zahtevani profil modela preslika v Azure OpenAI.
- Anthropic ID delovnega prostora manjka za pot vkrcanja z več delovnimi prostori. Ključ
- Gemini je označen kot neomejen standardni ključ, kadar so potrebne omejitve.
- Zahtevani profil vključuje ustvarjanje slike, vendar adapter ponudnika ne podpira tega načina za poverilnice BYOK.
2. Bralne sonde z nizkim tveganjem
Uporabite sonde samo za branje, kjer jih ponudnik dovoljuje. Klic seznama modelov, preverjanje metapodatkov o uvedbi ali končna točka zmožnosti računa lahko razkrijejo napake pri preverjanju pristnosti, vezavi projekta in dovoljenjih brez generiranja izhodnih podatkov modela. Zabeležite tako normalizirane rezultate kot neobdelane statusne kode ponudnika.
Priporočeni normalizirani rezultati vključujejo:
auth_failed: neveljavna, preklicana, potekla ali onemogočena poverilnica.wrong_project_or_workspace: veljaven ključ, vendar ni vezan na predvideni projekt ali delovni prostor.permission_denied: preverjena, vendar manjka končna točka, model ali skrbniško dovoljenje.model_unavailable: ključ deluje, zahtevani model ali uvedba ne.quota_unknown: čas izvajanja deluje, vendar kvote ni mogoče pregledati.usage_reporting_unavailable: prehod ne more uskladiti uporabe na strani ponudnika prek priložene poverilnice.
3. Sonde za minimalno sklepanje
Za vsak zahtevani profil modela je običajno potrebna vsaj ena resnična sonda sklepanja, ker navajanje modela ni isto kot dovoljenje za njegovo izvajanje. Zaprosite za izrecno soglasje stranke, nastavite majhen proračun sonde in uporabite najcenejšo končno točko, ki izvaja zahtevano zmogljivost.
Sonde naj bodo deterministične in dolgočasne. Za besedilni profil pošljite kratek poziv z nizko zgornjo mejo. Za pretakanje preverite, ali ponudnik vrne dogodke toka in končne metapodatke o uporabi, kjer je pričakovano. Za profile, ki podpirajo orodja, uporabite sintetično definicijo orodja in potrdite, ali ponudnik sprejema shemo orodja. Za vid uporabite majhno znano testno sliko, če ponudnik in politika to dovoljujeta. Izogibajte se sondam, ki shranjujejo občutljive podatke o strankah ali zahtevajo pozive, specifične za podjetje.
4. Negativni testi
Negativni testi dokazujejo, da so meje politike resnične. Če ima najemnik dovoljenje samo za uporabo definiranega profila modela, mora preveritelj preizkusiti jasno nedovoljen model, končno točko, orodje ali regijo in potrditi, da ga prehod blokira, preden ga vidi ponudnik. To so testi pravilnika prehoda, ne testi zlorabe ponudnika.
To je še posebej pomembno za nastavitve preprodajalcev in SaaS, kjer AI API oskrba strank samodejno ustvari nadaljnje ključe. Navzgornji ključ, ki ga zagotovi stranka, ne bi smel zaobiti pravilnika o prehodu najemnika samo zato, ker ima širša dovoljenja ponudnika.
Shranite matriko zmogljivosti, ne logične
Izhod vkrcanja mora biti matrika zmogljivosti, priložena različici poverilnic. Po tej matriki bi moralo biti mogoče poizvedovati prek strani za usmerjanje, podporo, zaračunavanje in strani s statusom, namenjene strankam.
Praktična matrika vključuje:
- Ponudnik, različica poverilnic, sklic na trezor, najemnik in okolje.
- Opazovana organizacija, projekt, delovni prostor, končna točka, regija ali vezava za uvajanje, kjer je na voljo.
- Podprte končne točke: klepet, odgovori, sporočila, vdelave, paketi, realni čas, slike, zvok ali ustrezniki, specifični za ponudnika.
- Podprti modeli in imena uvajanja.
- Podprte funkcije zahtev: pretakanje, orodja, JSON način, strukturiran izpis, vid, zvok, hitro predpomnjenje, paketna opravila.
- Opažene glave omejitve hitrosti in glave za ponovni poskus.
- Znan vir kvote: skrbnik API, glave izvajalnega časa, deklarirana s strani stranke ali neznano.
- Način poročanja o uporabi: na voljo je poročilo ponudnika, merjenje samo na prehodu, delna uskladitev ali nepodprto.
- Zaupanje pri preverjanju: globoko, plitvo, samo med izvajanjem ali po navedbi stranke.
- Zadnje uspešno preverjanje, zadnje neuspešno preverjanje in neobdelani dokazi o napaki.
Usmerjanje bi moralo porabiti to matriko. Če matrika pravi, da ključ podpira besedilno sklepanje, ne pa tudi paketnih opravil, mora prehod dovoliti besedilni promet in zavrniti paketni promet z jasnim sporočilom, namenjenim stranki. Če kvote ni mogoče pregledati, vendar izvajalne sonde delujejo, lahko poverilnico označite kot preverjeno z omejenim zaupanjem, namesto da bi se pretvarjali, da ima prehod polno vidnost zmogljivosti.
Preslikaj rezultate preverjanja v pravilnik o usmerjanju
Prehod ne sme usmerjati neposredno od »izbranega ponudnika najemnika« do »uporabe te skrivnosti«. Usmerjanje od pravilnika najemnika do profila modela, od profila modela do zahtev glede zmogljivosti in od zahtev do ustreznih različic poverilnic.
Na primer:
tenant: acme-prod
virtual_key: mgk_live_...
model_profile: support-chat-standard
requirements:
endpoint: chat
provider_candidates: [openai, anthropic, azure_openai]
features: [streaming, tools]
max_region: customer_approved_regions
usage_mode: gateway_metered_with_provider_reconciliation_preferred
eligible_credentials:
- byok_openai_project_key_v3: verified, tools=true, streaming=true, usage_report=partial
- byok_azure_openai_v2: degraded, deployment_found=true, quota_low=true
routing_decision:
primary: byok_openai_project_key_v3
fallback: none unless customer permits provider-managed spillover
Ta plast pravilnika ščiti tudi poenoteno AI API obračunavanje. BYOK lahko oslabi centralizirano zaračunavanje, če prehod preprosto posreduje zahteve in pozneje zaupa računom ponudnika. Tudi če poročila o uporabi na strani ponudnika niso na voljo, bi moral prehod beležiti uporabo na ravni najemnika, ID-je zahtev, profil modela, normalizirana števila žetonov, kjer so na voljo, zaupanje pri usklajevanju in vse nepodprte načine poročanja.
Odpravljajte napake z jezikom, namenjenim strankam
Neobdelane napake ponudnika so uporabne za podporo, vendar večina strank potrebuje neposredna navodila za odpravo napak. Neobdelano kodo napake in glave shranite interno, nato napako prevedite v stabilno sporočilo.
| Rezultat preverjanja | Sporočilo za stranko | Verjetno dejanje |
|---|---|---|
wrong_workspace | Ključ je veljaven, vendar ni vezan na izbrani delovni prostor. | Izberite pravi delovni prostor ali ustvarite ključ v obsegu delovnega prostora. |
missing_model_permission | Ključ ne more uporabljati zahtevanega modela. | Dovolite dostop do modela ali izberite drug profil modela. |
deployment_not_found | Imena uvedbe Azure OpenAI ni bilo mogoče najti na tej končni točki. | Preverite končno točko, regijo, ime uvedbe in različico API. |
quota_too_low | Poverilnica deluje, vendar je opazovana kvota pod izbranim produkcijskim profilom. | Povečajte kvoto ali izberite profil z nižjo prepustnostjo. |
usage_reporting_unavailable | Ključ lahko izvede sklepanje, vendar poročil o uporabi ponudnika ni mogoče uskladiti s to poverilnico. | Uporabite merjenje samo na prehodu ali zagotovite skrbniški dostop/dostop za poročanje. |
unsafe_key_type | Vrsta ključa ali položaj omejitve nista sprejeta za usmerjanje proizvodnje. | Ustvarite ključ, ki je primeren za omejeno proizvodnjo. |
Znova preverite poverilnice po vključitvi
Uspešen pregled pred tiskom je posnetek in ne jamstvo. Projektne vloge, politika delovnega prostora, kvota, stanje zaračunavanja, razpoložljivost modela in regionalna zmogljivost se lahko spremenijo po vkrcanju. Prehod bi moral izvajati načrtovane zdravstvene preglede in ponovne preglede na podlagi dogodkov.
Sproži ponovno preverjanje po:
- 401 ali napake pri preverjanju pristnosti ponudnika.
- 403 ali odgovori z zavrnitvijo dovoljenja.
- 404 odgovori o modelu, uvedbi ali končni točki ni bilo mogoče najti.
- 429, presežena kvota ali odgovori z omejitvijo hitrosti zunaj običajnih prometnih vzorcev.
- Napake ponudnika pri obračunavanju, organizaciji, delovnem prostoru ali projektu.
- Stranka spremeni zahtevane profile modelov, regije, orodja ali politiko podatkov.
Ne prekini takoj celotnega najemnika, ko se ena zmožnost prekine. Če pretakanje ne uspe, sklepanje brez pretakanja pa še vedno deluje, označite zmožnost pretakanja kot poslabšano in usmerite primerne delovne obremenitve brez pretakanja, če pravilnik to dovoljuje. Če manjka ena sama uvedba Azure, blokirajte to uvedbo namesto vseh strankinih poverilnic ponudnika.
Izdelajte rotacijo kot vzporedni potek dela preverjanja
Rotacija ne sme biti slepo prepisovanje. Ustvarite novo različico poverilnic, jo shranite v karanteno, zaženite iste sonde kot prvotno vkrcanje in atomsko preklopite usmerjanje šele, ko je preverjanje opravljeno. Ohranite stari ključ v kratkem oknu za povrnitev samo, če stranka to izrecno dovoli in pravilnik dovoljuje nadaljnje shranjevanje.
Potek dela varne rotacije izgleda takole:
- Stranka predloži nadomestna polja s poverilnicami in zavezujoča polja.
- Gateway shrani skrivnost kot novo različico poverilnice v karanteni.
- Preverjevalnik izvaja statične preglede, sonde branja, sonde sklepanja in preizkuse pravilnikov.
- Matrika zmogljivosti se primerja z aktivno različico.
- Stranka vidi morebitne regresije, na primer manjkajočo paketno podporo ali nižjo kvoto zaupanja.
- Gateway preklopi usmerjanje na novo različico v eni posodobitvi nadzorne ravnine.
- Stara različica se takoj prekliče ali obdrži za kratko, izrecno okno za povrnitev.
Korak primerjave je pomemben. Nadomestni ključ, ki lahko kliče model osnovnega besedila, je lahko še vedno regresija, če izgubi podporo za orodje, poročanje o uporabi, regionalno kvoto ali dostop do produkcijske uvedbe.
Kompromisi za eksplicitno
Preverjanje lahko povzroči nizke stroške ponudnika. Priporočilo je, da zaprosite za soglasje, prikažete najvišji proračun za sondiranje ter uporabite minimalne pozive in izhodne omejitve. Ne skrivaj plačljivih sond znotraj »validacije«.
Introspekcija skrbnika izboljša zaupanje, vendar poveča radij eksplozije. Nekatere stranke bodo zagotovile poverilnice skrbnika ali poročanja za globlje preverjanje. Drugi bodo zagotovili samo ključe za izvajanje. Podprite oboje, vendar jasno označite nastalo zaupanje.
Semantika ponudnika se ne bo čisto normalizirala. En enum stanja je uporaben za tokove izdelkov, vendar podporne ekipe potrebujejo neobdelane kode ponudnika, glave, ID-je zahtev in dokaze na ravni adapterja. Ohranite normalizirane in neobdelane zapise.
BYOK spremeni odgovornost za zaračunavanje. BYOK strankam omogoča nadzor pogodbe ponudnika, vendar lahko zmanjša zmožnost prehoda za usklajevanje računov ponudnika. Prehod mora razkriti, ali je zaračunavanje usklajeno s ponudnikom, merjeno s prehodom, delno ali po navedbi stranke.
Strogo vkrcanje upočasni nekatere nastavitve, ki jih vodi prodaja. Omejen način peskovnika lahko pomaga, vendar mora biti jasno označen, omejen in blokiran za samodejno promocijo proizvodnje. Proizvodno usmerjanje mora zahtevati preverjeno zmogljivost in preslikavo pravilnika.
Kontrolni seznam za implementacijo
- Ustvarite objekt poverilnice BYOK z eksplicitnimi stanji življenjskega cikla in nespremenljivimi različicami poverilnic.
- Pred preverjanjem zberite povezovalna polja, specifična za ponudnika.
- Shranjevanje skrivnosti samo v shrambo poverilnic; beleži prstne odtise in reference trezorja, ne neobdelanih ključev.
- Zaženi statična preverjanja pred klicem ponudnika.
- Zaženi bralne sonde, kjer je dovoljeno, in ohrani neobdelane dokaze ponudnika.
- Izvedite eno minimalno inferencialno sondo na zahtevani profil modela s soglasjem stranke in proračunom za sondo.
- Izvedite negativne teste pravilnika prehoda za nedovoljene modele, orodja, končne točke in regije.
- Vztrajajte pri matriki zmogljivosti s stopnjo zaupanja, ne z logično vrednostjo.
- Usmerjanje skozi pravilnik najemnika in zahteve profila modela, ne neposredno prek izbrane skrivnosti.
- Izpostavite sporočila o napakah, ki se nanašajo na stranke, s posebnimi koraki za odpravo napak.
- Načrtujte preglede zdravja in sprožite ponovne preglede zaradi napak med izvajanjem.
- Izvedba rotacije kot vzporednega preverjanja, ki mu sledi stikalo atomskega usmerjanja.
Sklep
Najvarnejši tok vkrcanja BYOK je preverjanje, ne obrazec. Ključ ponudnika, ki ga zagotovi stranka, mora vstopiti v karanteno, dokazati svojo vezavo, dovoljenja, dostop do modela, signale kvote, vedenje končne točke in omejitve poročanja, nato pa postati primeren samo za zmogljivosti, ki jih dejansko podpira.
Praktično priporočilo je, da shranite preverjanje kot matriko zmogljivosti, vodite skozi pravilnik najemnika in nadaljujete s ponovnim preverjanjem po začetku produkcijskega prometa. Napoved je enostavna: ker tipi ponudnikovih ključev, kontrolniki delovnega prostora, regionalne kvote in dovoljenja, specifična za model, postajajo vse bolj razdrobljeni, bodo prehodi, ki obravnavajo BYOK kot enkratno skrivno nalaganje, opazili več napak v proizvodnji, ki se jim je mogoče izogniti. Prehodi, pri katerih je preverjanje poverilnic del nadzorne ravnine, bodo stranke sprva vključili počasneje, vendar z manj presenečenji po začetku prometa.