はじめに LaravelでのWebアプリケーションの開発をしていて、ログイン中のユーザーのロール毎にアクセス可能なルーティングのコントロールを実装する必要がでてきました。 Laravelの認可の機能である、ゲートを使った簡単なルーティングへのアクセスコントロールを実装したので、やったことを書いておきます。 なお、ここではゲートをルーティングに実装する基本のみで、ログイン認証の実装などには触れません。 やりたかったこと 以下、簡単なプロジェクト管理システムを開発している前提で進めます。 ログインユーザーのロールは4種類あります。 管理者 リーダー マネージャー メンバー それぞれのロール毎に使える機能を制限したかったので、アクセスできるURIを設定するのがやりたいことでした。 ロール毎にアクセス可能なURIは次の表の様になります。 |URI|機能|管理者|リーダー|マネージャー|メンバー |
