futureed / oauth2
FutureED OAuth2 provee la lógica requerida para realizar una autorización mediante el uso del protocolo OAuth2. Este paquete esta diseñado exclusivamente para la plataforma FutureED y sus derivados.
Installs: 82
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Type:package
Requires
- php: >=5.5
- guzzlehttp/guzzle: ^6.1
This package is not auto-updated.
Last update: 2025-01-02 01:51:18 UTC
README
Introducción
FutureED OAuth2 provee la lógica requerida para realizar una autorización mediante el uso del protocolo OAuth2. Este paquete esta diseñado exclusivamente para la plataforma FutureED y sus derivados.
======
Licencia
FutureED OAuth2 es software de código abierto bajo una licencia MIT.
======
Documentación Oficial
Además de la autenticación típica, basada en formularios, Laravel también proporciona una manera simple y conveniente para autenticarse con los proveedores de OAuth utilizando FutureED OAuth2. Esta implementación permite realizar el inicio de sesión y el acceso a las aplicaciones derivadas de la plataforma FutureED.
Para realizar la instalación agrega a tu archivo composer.json
la dependencia:
composer require futureed/oauth2
======
Configuración
Después de instalar la librería FutureED/OAuth2, en tu archivo de configuración config/app.php
registra el siguiente ServiceProvider:
'providers' => [
// Proveedores de servicios instalados
FutureED\OAuth2\FutureEDServiceProvider::class,
],
Además, añade el facade FutureED al arreglo de alias en tu archivo de configuración:
'FutureED' => FutureED\OAuth2\Facades\FutureED::class,
En el archivo config/services.php
registra el siguiente servicio:
'FutureED' => [
'client_id' => env('FUTUREED_CLIENT_ID'),
'client_secret' => env('FUTUREED_CLIENT_SECRET'),
'redirect' => env('FUTUREED_REDIRECT'),
],
Para finalizar, en el archivo de entorno (.env
) coloca las credenciales proporcionas en el Panel de Desarrolladores de FutureED:
FUTUREED_CLIENT_ID=ID_ASIGNADO
FUTUREED_CLIENT_SECRET=SECRET_ASIGNADO
FUTUREED_REDIRECT_URI=URL_DE_REDIRECCION #Esta URL debe concidir con la ruta generada por Route::get('/oauth/callback', 'Auth\AuthController@callback');
======
Uso Básico
Se necesitan dos rutas: una para redireccionar el usuario al Proveedor de OAuth, y otra para recibir la respuesta después de la autorización:
En tu archivo app/Http/routes.php
:
<?php Route::group(['middleware' => ['web']], Route::get('/oauth/futureed', [ 'as' => 'redirectToFutureED', 'uses' => 'Auth\AuthController@redirectToFutureED' ]); Route::get('/oauth/callback', 'Auth\AuthController@callback'); );
En tu controlador:
<?php namespace App\Http\Controllers; use FutureED; use Illuminate\Http\Request; class AuthController extends Controller { /** * Redirecciona al usuario a la pagina de autenticación de FutureED. * * @return Response */ public function redirectToFutureED() { return FutureED::driver('FutureED')->redirect(); } /** * Obtiene la informacion del usuario de FutureED. * * @return Response */ public function callback(Request $request) { $user = FutureED::driver('FutureED')->user($request); // $user->token; } }
Es importante aclarar que los nombres de las rutas, métodos y controladores pueden variar de acuerdo a tus necesidades.
Obteniendo los detalles del usuario
Una vez que la respuesta ha sido satisfactoria se puede accesar a la información del usuario de la siguiente manera:
$user->email; // obtiene el correo electronico del usuario en formato de cadena de texto
$user->getEmail(); // obtiene el correo electronico del usuario en formato de cadena de texto.
Otros atributos obtenidos
$user->id;
$user->token;
$user->nickname;
$user->first_name;
$user->last_name;
$user->email;
$user->avatar;