0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Laravelのユーザー管理と認証 - 初心者向けカリキュラム

Last updated at Posted at 2025-02-09

1. Laravelの基礎

Laravelとは何か?(MVCフレームワークの概要)
Laravelのインストールとセットアップ(Laravel 11を想定)
Artisanコマンドの使い方
.env設定と環境変数の理解

データベースの作成が必要ならこちら

2. ユーザー管理の基本

ユーザーモデル (User.php) の確認
マイグレーションを使ったデータベーステーブルの作成
users テーブルの構造
php artisan migrate の実行
Eloquent ORMを使ったユーザーの操作
ユーザーの追加 (User::create())
ユーザーの取得 (User::find())
ユーザーの更新と削除 (User::update(), User::delete())

3. 認証の導入

Laravelの標準認証システムの理解
php artisan make:auth(Laravel 11ではJetstreamまたはBreezeを利用)
Laravel Breeze の導入
composer require laravel/breeze --dev
php artisan breeze:install
npm install && npm run dev
php artisan migrate
ユーザー登録、ログイン、ログアウトの確認

4. 認可の仕組み

Auth::user() の使い方
ログインユーザーの情報取得 (auth()->user())
認可ミドルウェア (auth と guest)
Route::middleware('auth')->group(...)
ポリシー (php artisan make:policy)
ユーザー権限の制御

5. ロールと権限管理(Spatie Laravel Permissions)

composer require spatie/laravel-permission
HasRoles トレイトの追加
php artisan migrate を実行
ユーザーにロールを割り当てる
User::assignRole('admin')
@can ディレクティブを使ったビュー制御
@can('edit articles')

6. パスワードリセットとメール認証

メール送信の設定(MAIL_ の環境設定)
Laravelの標準パスワードリセット機能
メールによるユーザー認証の実装 (mustVerifyEmail)

7. API認証(Sanctum)

composer require laravel/sanctum
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate
ユーザーにトークンを発行する ($user->createToken('API Token')->plainTextToken)
APIルートの保護 (auth:sanctum)

8. まとめと応用

役割ベースのアクセス制御(RBAC)
JWT認証との比較
Vue.jsやReact.jsと組み合わせたフロントエンド認証
Laravel FortifyやPassportを利用した高度な認証
この流れで進めれば、初心者でもLaravelのユーザー管理と認証についてしっかり理解できるはず!カリキュラムの内容をもっと細かくしたい場合や、具体的なコードサンプルが必要なら教えて!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?