Inertia hoitaa käyttäjien todennuksen Laravelin avulla hyödyntämällä Laravelin sisäänrakennettuja todennusominaisuuksia ja laajentamalla niitä toimimaan saumattomasti Inertian yksisivuisen sovellusarkkitehtuurin (SPA) kanssa. Tässä ovat tärkeimmät kohdat:
1. Laravelin oletustodennuksen käyttäminen:
- Inertia käyttää Laravelin oletusistuntopohjaista todennusta, mikä tarkoittaa, että käyttäjät todennetaan Laravelin sisäänrakennetuilla todennusmekanismeilla.
- Tämä lähestymistapa eliminoi tarpeen luoda erillinen API todennusta varten, koska Inertia voi olla suoraan vuorovaikutuksessa Laravelin todennusjärjestelmän kanssa[1][2][3].
2. Autentikoidun käyttäjän jakaminen:
- Inertian "share"-menetelmää käytetään jakamaan todennettu käyttäjä käyttöliittymän kanssa. Tämä antaa käyttöliittymälle mahdollisuuden käyttää käyttäjäobjektia ja käyttää sitä valtuutustarkistuksiin[2].
3. Valtuutustarkastukset:
- Käyttöliittymän käyttöoikeustarkistukset suoritetaan Inertian jakaman käyttäjäobjektin avulla. Tämä varmistaa, että käyttöliittymä voi dynaamisesti näyttää tai piilottaa sisältöä käyttäjän käyttöoikeuksien perusteella[2].
4. Tietojen muuntaminen:
- Tietojen muuntaminen on ratkaisevan tärkeää valtuutustarkistuksissa. Inertian "share"-menetelmää voidaan käyttää tietojen muuntamiseen ennen kuin se saavuttaa käyttöliittymän, mikä helpottaa monimutkaisten valtuutusvaatimusten käsittelyä[2].
5. Aloitussarjat:
- Laravel tarjoaa aloitussarjoja, kuten Laravel Breeze ja Laravel Jetstream, jotka tarjoavat kauniisti suunnitellut lähtökohdat todennuksen sisällyttämiseen tuoreeseen Laravel-sovellukseesi. Nämä sarjat sisältävät Livewire- tai Inertia-pohjaisia telinevaihtoehtoja, mikä helpottaa todennuksen integrointia Inertia-sovellukseesi[4].
Hyödyntämällä näitä ominaisuuksia Inertia tarjoaa saumattoman ja tehokkaan tavan käsitellä käyttäjien todennusta Laravelin avulla, jolloin kehittäjät voivat keskittyä sovellustensa rakentamiseen huolehtimatta todennuksen ja valtuutuksen monimutkaisuudesta.
Lainaukset:[1] https://atlas.dev/blog/using-inertia-with-laravel-in-2024
[2] https://sebastiandedeyne.com/handling-authorization-in-a-laravel-and-inertia-application
[3] https://github.com/inertiajs/inertia-laravel/issues/21
[4] https://laravel.com/docs/11.x/authentication
[5] https://stackoverflow.com/questions/66080777/laravel-inertia-js-and-vue-check-if-user-is-logged-in