Politici de Autorizare (Policies) în Laravel în Laravel

security Laravel 11.x / Authorization Q&A / Distribuie cod

Organizarea logicii de autorizare a acțiunilor pe modele specifice: metodele view, create, update, delete și restore.

Sintaxă
$this->authorize('update', $post) / Gate::authorize(...) / php artisan make:policy

În timp ce Gates sunt ideale pentru acțiuni generale (de exemplu accesul în panoul administrativ), Policies organizează logica de autorizare în jurul unui model Eloquent specific (de exemplu: cine are voie să editeze sau să șteargă o anumită postare).

Controllerele pot verifica autorizarea printr-un simplu apel: $this->authorize('update', $post), care aruncă automat un 403 Forbidden dacă utilizatorul nu îndeplinește condițiile din politică.

Exemplu: Politică PostPolicy și verificare în Controller
// app/Policies/PostPolicy.php
namespace App\Policies;

use App\Models\Post;
use App\Models\User;

class PostPolicy
{
    // Doar autorul postării sau un administrator are permisiunea de editare:
    public function update(User $user, Post $post): bool
    {
        return $user->id === $post->user_id || $user->is_admin;
    }
}

// În PostController:
public function edit(Post $post)
{
    $this->authorize('update', $post); // Verificare automată!
    return view('posts.edit', compact('post'));
}

Comunitate & Schimb de cunoștințe

Întrebări & Exemple de Cod: Politici de Autorizare (Policies) în Laravel

Ai o nelămurire despre utilizarea comenzii Politici de Autorizare (Policies) în Laravel sau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!

💬

Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!

Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.

Comunitate Adaugă o întrebare sau distribuie un cod

Moderare & Siguranță:

Pentru a menține calitatea și securitatea informațiilor, fiecare întrebare sau fragment de cod/prompt este analizat (manual sau prin moderare asistată de AI) înainte de publicare.