Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Jak Inertia zpracovává ověřování uživatelů pomocí Laravelu


Jak Inertia zpracovává ověřování uživatelů pomocí Laravelu


Inertia zpracovává autentizaci uživatelů pomocí Laravelu tím, že využívá vestavěné autentizační funkce Laravelu a rozšiřuje je tak, aby bezproblémově fungovaly s architekturou jednostránkových aplikací (SPA) Inertia. Zde jsou klíčové body:

1. Použití výchozího ověření Laravel:
- Inertia používá výchozí autentizaci Laravel založenou na relaci, což znamená, že uživatelé jsou autentizováni pomocí vestavěných autentizačních mechanismů Laravelu.
- Tento přístup eliminuje potřebu vytvářet samostatné API pro autentizaci, protože Inertia může přímo interagovat s autentizačním systémem Laravel[1][2][3].

2. Sdílení ověřeného uživatele:
- Ke sdílení ověřeného uživatele s frontendem se používá metoda Inertia `share`. To umožňuje frontendu přistupovat k objektu uživatele a používat jej pro kontroly autorizace[2].

3. Kontroly autorizace:
- Kontroly autorizace se provádějí na frontendu pomocí objektu uživatele sdíleného Inertia. To zajišťuje, že frontend může dynamicky zobrazovat nebo skrývat obsah na základě oprávnění uživatele[2].

4. Transformace dat:
- Transformace dat je zásadní pro kontrolu autorizace. Metodu „sdílení“ společnosti Inertia lze použít k transformaci dat předtím, než se dostanou do frontendu, což usnadňuje zpracování složitých požadavků na autorizaci[2].

5. Startovací sady:
- Laravel poskytuje startovací sady jako Laravel Breeze a Laravel Jetstream, které nabízejí krásně navržené výchozí body pro začlenění ověřování do vaší čerstvé aplikace Laravel. Tyto sady obsahují možnosti lešení založené na Livewire nebo Inertia, což usnadňuje integraci ověřování s vaší aplikací Inertia[4].

Využitím těchto funkcí poskytuje Inertia bezproblémový a efektivní způsob, jak zvládnout autentizaci uživatelů pomocí Laravel, což vývojářům umožňuje soustředit se na vytváření jejich aplikací, aniž by se museli starat o složitost ověřování a autorizace.

Citace:
[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