Programatutako zeregina edo giza saioa: zein identitate ikusi behar du APIak?
Cron zeregina eta saio-hasierako gomenean dagoen pertsona subjektu desberdinak dira. Konparatu sare-bidea, aplikazioaren identitatea eta delegazioa automatizatu aurretik.
Programatutako zeregin batek eta saio-hasierako gomenean dagoen pertsona batek API bera deitzen dute kredentzial desberdinekin, bizitza desberdinekin eta jabe desberdinekin. Zereginak sare-bidea, aplikazioaren identitatea eta baimen-multzo bat behar ditu; pertsonak saio-hasiera, bigarren faktore bat eta saio bat behar ditu. Biak nahasteak automatizazioa sortzen du, pertsonaren pasahitza aldatzen den bakoitzean hausten dena, edo cron zeregina bizirik mantentzeko behar adina ahuldutako faktore anitzeko politika bat.
Bat diruditen hiru ate
Iturburu-helbidearen arauak galdetzen du nondik etorri zen eskaera. Autentifikazioak galdetzen du nork deitzen duen eta zein froga aurkeztu ziren. Baimenak galdetzen du subjektu honek eragiketa hau egin dezakeen. VPN batek hiruretatik lehena bakarrik aldatzen du, eta lanpostuko prozesu bakoitzeko aldatzen du, ez zereginerako soilik, beraz, mantendu hiru oharrak bereizita gorabeheraren erregistroan.
Horregatik, irteera-nodoa aldatzeak iturburu-helbidearen ukapena konpondu dezake eta baliogabeko tokena ukitu gabe utzi. Horregatik ere, baliozko API token batek ez du endpoinu pribatu bat irisgarri egiten hara biderik ez duen zeregin batetik.
Bide interaktiboa automatizaziorako txantiloi txarra da
Pertsona baten saio-hasiera script batean jartzea tentagarria da behin funtzionatzen duelako. Scriptak pasahitz bat gordetzen du, agian erabilera bakarreko pasahitz-hazi bat, eta gero gizaki bat eskatzeako diseinatutako erronka baten mende geratzen da. OAuthen uneko segurtasun-jardunbide onena, RFC 9700, debekatu egiten du resource-owner-password-credentials emakida eta azaltzen du zergatik ez dion ondo egiten faktore biko autentifikazioari eta urrats anitzekoari.
Onartutako alternatiba normalean bezero konfidentzialaren fluxu bat da, non baimen-zerbitzariak aplikazioa autentifikatzen duen eta tokena ematen duen. RFC 6749ren 4.4 ataleko client-credentials emakida adibide bat da. Haren existentziak ez du esan nahi API guztiek onartzen dutenik, ezta erabiltzaile batek delegatutako zeregina harekin ordeztu daitekeenik ere, horiek zerbitzuaren jabearen galderak baitira. Galdetu zerbitzuak zein eredu gainbegiratu gabe onartzen duen kodea idatzi aurretik.
Non du oraindik leku VPNak
VPN batek API pribatu batek eskatzen duen sare-bidea eman dezake, eta hori rol zilegi bat da. Ez du zeregina aplikazioaren aurrean autentifikatzen, eta ez du mugatzen zereginak zer egin dezakeen. Irteera-helbide partekatu batek ostalaria identifikatzen du, ez zeregina, beraz, helbide horretarako baimenduen zerrendako sarrera batek hantxe exekutatzen den prozesu oro onartzen du.
Zeregina exekutatzaile partekatu batean exekutatzen bada, bereizketa hori gehiago da garrantzitsua, ez gutxiago. Ostalari bereko beste lan-fluxu batek bidea eta helbidea heredatzen ditu, eta APIak ezin ditu biak bereizi. Pasahitz partekatu baten ahultasun bera da, geruza bat beherago eramanda. Jarri murrizketa aplikazioak betearazi dezakeen tokian, eta isolatu exekutatzailea baimenduen zerrenda gehiago estutu ezin baduzu.
Konparatu bi diseinuak zintzotasunez
Giza saio-hasierak pertsona erreal bat, bigarren faktore erreal bat eta auditatzeko moduko saio bat ematen dizkizu, eta ezin du gainbegiratu gabe exekutatu. Aplikazioaren identitateak gainbegiratu gabeko exekuzioa, berrikus daitekeen esparrua eta biratu dezakezun kredentziala ematen dizkizu, eta ezin du ezer delegatu ez duen erabiltzaile baten ordez jardun. Batez ere ez da bestearen bertsio ahulagoa; galdera desberdinei erantzuten diete. Aukeratu galdetuz zeregina inor gabe exekutatu behar den eta eragiketa erabiltzaile jakin bati egotzi behar zaion.
Erantzun biak bai badira, diseinuak delegazio-eredua behar du, ez mailegatutako pasahitza. Idatzi erabaki hori hurrengo mantentzaileak aurkituko duen tokian.
Zer egiaztatu entregatu aurretik
Exekutatu eragiketa baimendu bat eta beharrezko ukatze bat benetako langiletik, eta gorde bi emaitzak. Gero probatu kredentzial iraungia eta sare-bidea erabilgarri ez dagoenean duen portaera, horiek baitira gauez norbait esnatzen duten bi hutsegiteak.
curl -sS -o /dev/null -w '%{http_code}\n' \
-H "Authorization: Bearer TOKEN" https://api.example.com/v1/records
Idatzi subjektua, esparrua, biraketaren jabea eta exekuzio-ingurunea emaitza horren ondoan. Erregistro horrek egiten du hurrengo biraketa errutina, gorabehera izan beharrean. Auditore batek eskatzen duen zatia ere bada.