Logto x Cloudflare Workers: Kuinka suojata työntekijäsi julkiselta pääsyltä?
Tässä artikkelissa esittelimme, kuinka suojata Cloudflare Workers API:t Logton avulla. Käytimme Honoa web-sovelluskehyksenä kehittämisen tehostamiseksi.
Cloudflare Workers (käytetään lyhennettä Workers seuraavassa sisällössä) tarjoaa palvelimettoman suoritusympäristön, jonka avulla voit luoda uusia sovelluksia tai parantaa olemassa olevia ilman infrastruktuurin konfigurointia tai ylläpitoa.
Workersin avulla voit rakentaa palvelimettomia sovelluksiasi ja ottaa ne käyttöön välittömästi globaalisti poikkeuksellisen suorituskyvyn, luotettavuuden ja laajuuden saavuttamiseksi. Workers tarjoaa paitsi poikkeuksellista suorituskykyä myös huomattavan anteliaan ilmaisen suunnitelman ja edullisia maksullisia suunnitelmia. Olitpa yksittäinen kehittäjä tai laajamittainen tiimi, Workers mahdollistaa tuotteiden nopean kehittämisen ja toimittamisen samalla kun vähennetään operatiivisia kustannuksia.
Workers on oletuksena julkisesti saatavilla, mikä edellyttää suojatoimenpiteitä hyökkäysten ja väärinkäytön estämiseksi. Logto tarjoaa kattavan, helppokäyttöisen ja skaalautuvan identiteettipalvelun, joka voi suojata Workersin ja kaikki muut verkkopalvelut.
Tämä artikkeli pureutuu prosessiin, jolla Workers suojataan Logton avulla.
Rakennetaan Workers-esimerkki
Rakennetaan ensin Workers-esimerkkiprojekti Honolla paikalliselle koneelle.
Käytämme Wrangler CLI:tä esimerkin viemiseen Cloudflareen, joten pääsemme polulle.
Suojataan Workers API:t
Jotta voimme verrata julkisesti saatavilla olevaa APIa ja suojattua APIa, lisäämme GET /auth/greet
API:n, joka vaatii tiettyjä oikeuksia päästäkseen.
Emme voi käyttää vastaavaa APIa ilman asianmukaista lupaa.
Jotta voimme hallita Workers API:iden käyttöä oikein, otamme käyttöön Logton.
Aseta Logto
Rekisteröidy tilille, jos sinulla ei ole vielä sellaista.
Käytämme esimerkkinä koneelta koneelle (M2M) yhteyttä suojatun Workers API:n käyttöön, koska se on suoraviivaista. Jos haluat antaa pääsyn verkkosovelluksesi käyttäjille, asetus on melko samanlainen, mutta sinun tulee käyttää "Käyttäjän" roolia "Koneelta koneelle" roolin sijasta.
- Siirry Logto Admin Console-konsoliin ja mene "API resource"-välilehdelle, luo API-resurssi nimeltä "Workers sample API" resurssi-indikaattorilla
https://sample.workers.dev/
. Luo myös lupagreet:visitor
tälle API-resurssille.
- Luo "Workers admin rooli", joka on "Koneelta koneelle"-rooli ja määrää tälle roolille
greet:visitor
-oikeus.
- Luo M2M-sovellus ja määritä "Workers admin rooli" sovellukselle.
Päivitä Workers auth validator
Koska Logto käyttää JWT pääsytunnusta taustalla, meidän on toteutettava JWT validointilogiikka Workersissa.
Koska JWT pääsytunnus on myönnetty Logton toimesta, meidän on:
- Hankittava vastaava julkinen avain allekirjoituksen vahvistamiseksi.
- Varmistettava, että JWT pääsytunnuksen kuluttaja on Workers API:t.
Nämä vakioarvot voidaan määrittää wrangler.toml
-tiedostossa [1] ja ne viedään käyttöön Workersin ympäristömuuttujina. Voit myös hallita ympäristömuuttujia manuaalisesti Cloudflare Dashboardilla.
Kun Workers-projekti on viety Cloudflareen, voimme testata, onko API:t suojattu onnistuneesti.
- Hanki pääsytunnus
- Pyydä Workers
GET /auth/greet
APIa
Yhteenveto
Tämän artikkelin vaiheittaisella oppaalla sinun pitäisi pystyä käyttämään Logtoa Workers API:iden suojaamiseksi.
Tässä artikkelissa olemme käyttäneet Wrangler CLI:tä Workers-projektien paikalliseen kehittämiseen ja käyttöönottoon. Cloudflare tarjoaa lisäksi vankat ja monipuoliset Workers API:t helpottamaan käyttöönottoa ja hallintaa.
Harkitse SaaS-sovelluksen kehittämistä. Cloudflare API:n avulla voit helposti ottaa käyttöön omistetut Workers työntekijöille, samalla kun Logto varmistaa, että pääsytunnukset pysyvät yksinomaisina omille työntekijöilleen. Tämä tarkka ohjaus estää luvattoman pääsyn eri työntekijöiden välillä, parantaen tietoturvaa ja tietosuojaa SaaS-sovelluksesi käyttäjille.
Logton sopeutuvainen ja vankka arkkitehtuuri vastaa erilaisten sovellusten monimutkaisiin tunnistus- ja valtuutusvaatimuksiin. Oli kyseessä monimutkainen SaaS-alusta tai yksinkertainen verkkosovellus, Logto tarjoaa joustavuutta ja skaalautuvuutta vastaamaan erityisiä tarpeitasi.