kerchuma222/session-auth

此包已被弃用,不再维护。未建议替代包。
此包的最新版本(1.1.1)没有可用的许可信息。

1.1.1 2015-08-10 20:42 UTC

This package is not auto-updated.

Last update: 2024-07-20 16:14:44 UTC


README

Laravel 5 Session Authentication driver.

实现功能

  • 从其他应用程序检索的用户信息在会话级别持久化

安装

要将此驱动程序安装到您的应用程序中,请在您的 composer.json 文件中添加以下内容

{
  ...
  "require": {
    "laravel/framework": "5.*",
    ...
    "KerchumA222/session-auth": "3.*",
  },
  ...
  "repositories": [{
    "type": "vcs",
    "url": "https://github.com/KerchumA222/session-auth"
  }],
  ...
}

然后运行 composer update。注意:您可能需要使用 --prefer-source 标志运行 composer 以从 GitHub 安装此软件包。您还需要在您的计算机上安装 git。这是临时的,当此软件包托管在 packagist 上时将得到解决。

一旦您从 GitHub 下载完此包,您需要告诉您的应用程序使用 session-auth 服务提供程序。

打开 app/config/app.php 并找到

Illuminate\Auth\AuthServiceProvider::class

并将其替换为

KerchumA222\SessionAuth\SessionAuthServiceProvider::class

这告诉 Laravel 5 使用来自 vendor 文件夹的服务提供程序。

您还需要将 Auth 指向使用会话驱动程序而不是 Eloquent 或数据库,编辑 config/auth.php 并将驱动程序更改为 session

配置

在客户端应用程序中不需要配置。认证应用程序需要在共享的 Session 中将用户详细信息存储在 'currentUser' 键下。所需的 currentUser 详细信息包括 'id'、'username'(或您的任何主要标识符)和 'remember_token'(用于在子应用程序中记住用户,无需返回到认证应用程序)。

示例

在您的认证应用程序(不应包含此插件)中 Session::put('currentUser', ['id'=>1, 'username'=>'KerchumA222', 'remember_token'=>'xxxxxxx', 'groups'=>['Admin', 'User']]); 这可以在 Authentication.php 中间件中方便地完成。

用法

Auth 的使用与默认服务提供程序相同。Auth::user() 返回一个包含所有由父应用程序存储在 Session 中的详细信息的 GenericUser 实例。

模型使用

您不需要使用模型来实现此方案。