LaravelPackages.net
Acme Inc.
Toggle sidebar
tinfot/discourse-sso

Laravel Discourse SSO

29
1
0.0.3
About tinfot/discourse-sso

tinfot/discourse-sso is a Laravel package for laravel discourse sso. It currently has 1 GitHub stars and 29 downloads on Packagist (latest version 0.0.3). Install it with composer require tinfot/discourse-sso. Discover more Laravel packages by tinfot or browse all Laravel packages to compare alternatives.

Last updated

Discourse SSO for Laravel 5


License

Installation

Require this package in your composer.json and update composer.

composer require tinfot/discourse-sso:dev-master

Usage

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Tinfot\Discourse\Payload;
use Tinfot\Discourse\User;
use Tinfot\Discourse\Sso;

class DiscourseController extends Controller {
    
    public function sso(Request $request) {
        $payload = new Payload(config('discourse.secret'));
        if (!$payload->validate($request->input('sso'), $request->input('sig'))) {
            abort(404);
        }

        $auth = $request->user();

        $nonce = $payload->decode($request->input('sso'));
        $sso   = new Sso($nonce, config('discourse.secret'));
        $sso->setParameters(new User($auth->id, $auth->email, $auth->name));
        $data = $sso->build($payload);
        return redirect(config('discourse.discourse_url') . $data);
    }
}

Support

Support only through Github. Please don't mail us about issues, make a Github issue instead.

Star History Chart