LaravelのGate(ゲート)とPolicy(ポリシー)は名前も名前から想像するイメージも全く異なるため別の機能だと認識していまいそうですがどちらもAuthorization(認可)に関する機能です。 認可はLaravelのドキュメントでは、”authorize user actions against a given resource”と説明されています。日本語では”あたえられたリソースに対するユーザのアクションに許可を与える”という意味になるかと思います。簡単に言えばだれにある特定の処理を行う許可を与えるかどうかです。 認可という言葉を使う機会がないのでイメージしづらいかもしれませんのでブログの例を使って説明します。あるユーザがブログの記事を作成しました。そのブログに対して誰に削除許可を与えるのかといった制限を行うことを認可といいます。許可を与えるのはそのユーザ自身のみなのかそれと
![Laravel Gate(ゲート)、Policy(ポリシー)を完全理解 | アールエフェクト](https://cdn-ak-scissors.b.st-hatena.com/image/square/03b876151a4d7020bd8d83269c9fd393fc95eedb/height=288;version=1;width=512/https%3A%2F%2Freffect.co.jp%2Fwp-content%2Fuploads%2F2018%2F12%2FLaravel_cat.png)