WemX/sso-pterodactyl

允许WemX客户端通过单次重定向登录Pterodactyl账户

1.2.0 2023-10-11 23:20 UTC

This package is auto-updated.

Last update: 2024-09-12 10:30:08 UTC


README

Latest Version on Packagist Total Downloads

Laravel SSO

Laravel SSO是一个用于在Laravel项目中实现单点登录(SSO)授权的包。该包允许您从其他网站授权Laravel面板上的用户。

要求

  • PHP 8.0或更高版本
  • Laravel 9或10或更高版本

安装

要安装此包,请使用Composer

composer require wemx/sso-pterodactyl

配置

  1. 运行以下命令以发布配置文件
php artisan vendor:publish --tag=sso-wemx

此命令将发布config/sso-wemx.php文件,您可以在其中设置SSO授权的密钥。

  1. 生成新的SSO密钥
php artisan wemx:generate

请确保将SSO密钥粘贴到您的WemX应用程序中

用法

  1. 从您的应用程序中生成用于GET请求的访问令牌
  2. 将用户重定向到带有令牌的SSO重定向
public function loginPanel()
{
    $response = Http::get("https://panel.example.com/sso-wemx/", [
        'sso_secret' => "xxxxxxx",
        'user_id' => 1
    ]);

    if (!$response->successful()) {
        $message = $response['success'] && !$response['success']
            ? $response['message']
            : 'Something went wrong, please contact an administrator.';

        return redirect()->back()->withError($message);
    }

    return redirect()->intended($response['redirect']);
}

重定向到/sso-login路由后,如果用户的电子邮件地址与数据库中的记录匹配,用户将自动在Laravel面板上获得授权。

支持

如果您有任何问题或问题,请在GitHub项目存储库中创建新的问题。

许可证

本项目采用MIT许可证。有关详细信息,请参阅LICENSE文件。