Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Kuinka InertiaJS hallitsee todennusta ja valtuutusta SPA-alueilla


Kuinka InertiaJS hallitsee todennusta ja valtuutusta SPA-alueilla


Näin Inertia.js hallitsee todennusta ja valtuutusta yksisivuisissa sovelluksissa (SPA):

Todennus

1. Inertia.js ei vaadi erityistä todennusjärjestelmää, kuten OAuth. Sen sijaan voit käyttää palvelinpuolen kehyksesi tarjoamaa todennusjärjestelmää, kuten Laravelin istuntopohjaista todennusjärjestelmää. [3]

2. Laravelin aloitussarjat, Breeze ja Jetstream, tarjoavat valmiita rakennustelineitä uusille Inertia.js-sovelluksille, mukaan lukien todennustoiminnot. [3]

3. Jos haluat käyttää todennettua käyttäjää Inertia.js-komponenteissasi, voit käyttää Inertia.share()-menetelmää ja välittää todennettu käyttäjä sivuillesi. [4]

Valtuutus

1. Resurssityyppeihin perustuvaa valtuutusta varten (esim. voiko käyttäjä tarkastella viestimoduulia tai luoda uuden postauksen) voit välittää valtuutustarkistukset rekvisiittana Inertia.js-sivusi osiin. [1][2]

2. Voit tarkistaa tiettyjen resurssikokonaisuuksien valtuutuksen (esim. voiko käyttäjä muokata tiettyä viestiä) lisäämällä Eloquent-malleihisi "permissions"-attribuutin, joka sisältää kyseisen entiteetin valtuutustarkistukset. Sitten voit välittää nämä "käyttöoikeudet"-tiedot tukina Inertia.js-komponenteille. [4]

3. Tärkeintä on suorittaa valtuutustarkistukset palvelinpuolella ja sitten välittää tulokset Inertia.js-komponenteille rekvisiittana. Näin varmistetaan, että valtuutuslogiikka ei paljasteta asiakaspuolella, jota voidaan peukaloida. [4]

4. Inertia.js ei tarjoa omaa valtuutusjärjestelmää, vaan se integroituu palvelinpuolen kehyksesi valtuutusjärjestelmään (esim. Laravel's Gate and Policies). [4]

Yhteenvetona voidaan todeta, että Inertia.js hallitsee todennusta hyödyntämällä palvelinpuolen kehyksen todennusjärjestelmää, ja se käsittelee valtuutuksen suorittamalla tarkistuksia palvelinpuolella ja välittämällä tulokset rekvisiittana Inertia.js-komponentteihisi. Tämä lähestymistapa varmistaa, että todennus- ja valtuutuslogiikka pidetään suojattuna palvelinpuolella.

Lainaukset:
[1] https://inertiajs.com/authorization
[2] https://legacy.inertiajs.com/authorization
[3] https://inertiajs.com/authentication
[4] https://sebastiandedeyne.com/handling-authorization-in-a-laravel-and-inertia-application
[5] https://www.youtube.com/watch?v=1xHfpDhuPzA