Package d'authentification via les reseaux sociaux pour Bow Framework.
Ce package utilise le fichier thephpleague/oauth2-client
pour faire un wrapper.
Actuellement, il supporte le fournisseur suivant:
- Gitlab
- Github
Pour installer ce paquet, vous devez utiliser composer. Nous vous recommandons de l'installer globalement.
composer require bowphp/soauth
Après l'installation Dans votre fichier .env.json
, vous devez définir les informations d’accès au fournisseur comme suit:
Vous pouvez créer la nouvelle application facebook à l’adresse https://developers.facebook.com/fr.
FACEBACK_CLIENT_ID=client_id
FACEBACK_CLIENT_SECRET=client_secret
FACEBACK_REDIRECT_URI=redirect_uri
GITLAB_CLIENT_ID=client_id
GITLAB_CLIENT_SECRET=client_secret
GITLAB_REDIRECT_URI=redirect_uri
GITHUB_CLIENT_ID=client_id
GITHUB_CLIENT_SECRET=client_secret
GITHUB_REDIRECT_URI=redirect_uri
Pour utiliser le package, vous devez importer la configuration du package:
return [
\Bow\Soauth\SoauthConfiguration::class,
...
];
Nous considérons le contrôleur suivant:
<?php
namespace App\Controllers;
use App\Controllers\Controller;
use Bow\Soauth\Soauth;
class SoauthController extends Controller
{
/**
* Redirection vers le fournisseur define
*
* @param string $provider
* @return mixed
*/
public function redirect($provider)
{
return Soauth::redirect($provider, $scope);
}
/**
* Gérer les informations oauth
*
* @param string $provider
* @return mixed
*/
public function handle($provider)
{
$user = Soauth::resource($provider);
}
}
Définissez la route qui utilisera pour les actions d’appel soauth:
$app->get('/oauth/:provider/redirect', 'SoauthController::redirect');
$app->get('/oauth/:provider/callback', 'SoauthController::handle');
Franck DAKIA est un développeur Full Stack basé actuellement en Afrique, Côte d'ivoire, Abidjan. Passioné de code, et développement collaboratif, Speaker, Formateur et Membre de plusieurs communautés de développeurs.
Contact: dakiafranck@gmail.com - @franck_dakia
SVP s'il y a un bogue sur le projet veuillez me contacter par email ou laissez moi un message sur le slack.
N'hésitez pas à donner votre avis sur la qualité de la documentation ou à suggérer des corrections.