flashadvocate/trinitycore-auth

基于TrinityCore身份验证的Laravel包

v0.3.0 2018-05-01 13:34 UTC

This package is auto-updated.

Last update: 2024-09-23 05:36:13 UTC


README

Latest Stable Version Latest Unstable Version Total Downloads License

基于TrinityCore数据库身份验证的Laravel 5.6包。

TrinityCore身份验证基于用户名和密码连接的sha1哈希。

要求

  • PHP >= 5.5.9 || 7.0
  • thibaud-dt/trinitycore-models >= dev-master
  • Laravel => 5.6

安装

composer require thibaud-dt/trinitycore-auth
  • 在config/app.php中添加服务提供者和外观。

服务提供者

'providers' => [
    
    [...]
    
    ThibaudDT\TrinityCoreAuth\Providers\TrinityCoreAuthServiceProvider::class,
    
    [...]
]

外观

'aliases' => [
    
    [...]
    
    'TrinityCoreAuth' => ThibaudDT\TrinityCoreAuth\Facades\TrinityCore::class,
    
    [...]
]
  • 在config/database.php中添加数据库连接。
'connections' => [

        [...]

        'characters' => [
            'driver'    => 'mysql',
            'host'      => env('DB_HOST_CHARACTERS', 'localhost'),
            'database'  => env('DB_DATABASE_CHARACTERS', 'forge'),
            'username'  => env('DB_USERNAME_CHARACTERS', 'forge'),
            'password'  => env('DB_PASSWORD_CHARACTERS', ''),
            'charset'   => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix'    => '',
            'strict'    => false,
        ],

        'world' => [
            'driver'    => 'mysql',
            'host'      => env('DB_HOST_WORLD', 'localhost'),
            'database'  => env('DB_DATABASE_WORLD', 'forge'),
            'username'  => env('DB_USERNAME_WORLD', 'forge'),
            'password'  => env('DB_PASSWORD_WORLD', ''),
            'charset'   => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix'    => '',
            'strict'    => false,
        ],

        'auth' => [
            'driver'    => 'mysql',
            'host'      => env('DB_HOST_AUTH', 'localhost'),
            'database'  => env('DB_DATABASE_AUTH', 'forge'),
            'username'  => env('DB_USERNAME_AUTH', 'forge'),
            'password'  => env('DB_PASSWORD_AUTH', ''),
            'charset'   => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix'    => '',
            'strict'    => false,
        ]

        [...]

    ],
  • 在.env中添加变量并配置。
DB_HOST_WORLD=localhost
DB_DATABASE_WORLD=world
DB_USERNAME_WORLD=root
DB_PASSWORD_WORLD=root

DB_HOST_CHARACTERS=localhost
DB_DATABASE_CHARACTERS=characters
DB_USERNAME_CHARACTERS=root
DB_PASSWORD_CHARACTERS=root

DB_HOST_AUTH=localhost
DB_DATABASE_AUTH=auth
DB_USERNAME_AUTH=root
DB_PASSWORD_AUTH=root
  • 创建配置文件和视图。
php artisan vendor:publish --provider="ThibaudDT\TrinityCoreAuth\Providers\TrinityCoreAuthServiceProvider"
  • 在config/trinitycore-auth.php中配置包。
  • 运行迁移。
php artisan migrate

完成了!你现在可以使用这个包了。

配置

用法

  • 在config/auth.php中更改用户提供者或创建一个新的。
'providers' => [
        'users' => [
            'driver' => 'trinitycore',
            'model' => ThibaudDT\TrinityCoreAuth\Models\Auth\Account::class,
        ],
    ],
  • 在密码重置配置中添加连接名称或在config/auth.php中创建一个新的。
'passwords' => [
        'users' => [
            'provider' => 'users',
            'connection' => 'auth',
            'table' => 'password_resets',
            'expire' => 60,
        ],
    ],
  • 使用以下内容在routes/web.php中创建Auth路由
TrinityCoreAuth::routes(); 

常见问题解答

  • 我可以在第一次安装之前激活Laravel Passport的支持吗?

是的,你可以!将配置值更改为true并刷新迁移。所有在激活Laravel Passport支持之前创建的账户必须重置密码才能使用密码授权系统。

致谢