lightair / lumen-auth-via-steam
This package is abandoned and no longer maintained.
No replacement package was suggested.
Lumen Steam Auth
v8.0.0
2021-08-21 19:42 UTC
Requires
- php: >=7.2.0
- ext-bcmath: *
- ext-json: *
- guzzlehttp/guzzle: ^6.5
- irazasyed/larasupport: ^1.7
- laravel/lumen-framework: ^8.0
Requires (Dev)
- phpunit/phpunit: ^8.4|^9.0
README
This package is a Lumen 7.0.* service provider which provides support for Steam OpenID and is very easy to integrate with any project that requires Steam authentication.
Installation Via Composer
Add this to your composer.json
file, in the require object:
"lightair/lumen-auth-via-steam": "v7.0.*"
For v5.4 please use package v5.4.1
After that, run composer install
to install the package.
In file bootstrap/app.php uncomment $app->withFacades()
and add:
$app->register(LightAir\LumenAuthViaSteam\SteamServiceProvider::class);
Lastly, publish the config file.
php artisan vendor:publish
Usage example
In config/steam-auth.php
return [ /* * Redirect URL after login */ 'redirect_url' => '/login', /* * API Key (http://steamcommunity.com/dev/apikey) */ 'api_key' => 'Your API Key', /* * Is using https? */ 'https' => false ];
In routes/web.php
$router->get('/login', 'AuthController@login');
In AuthController
namespace App\Http\Controllers; use LightAir\LumenAuthViaSteam\SteamAuth; use App\User; use Auth; class AuthController extends Controller { /** * @var SteamAuth */ private $steam; public function __construct(SteamAuth $steam) { $this->steam = $steam; } public function login() { if ($this->steam->validate()) { $info = $this->steam->getUserInfo(); if (!is_null($info)) { $user = User::where('steamid', $info->steamID64)->first(); if (is_null($user)) { $user = User::create([ 'username' => $info->personaname, 'avatar' => $info->avatarfull, 'steamid' => $info->steamID64 ]); } Auth::login($user, true); return redirect('/'); // redirect to site } } return $this->steam->redirect(); // redirect to Steam login page } }