A wrapper for the Keycloak OAuth 2.0 Client Provider, support Authentication and Authorization.
To install, use composer:
composer require sindria/oauth2-keycloak$passport = Passport::init([
'authServerUrl' => 'http://127.0.0.1:8080/auth',
'realm' => 'xxxx',
'clientId' => 'backend',
'clientSecret' => 'xxxxx',
'redirectUri' => 'http://127.0.0.1:8003/auto',
'periodNoCheck' => 3600,
'periodCheck' => 180,
]);$user = $passport->checkLogin();
$user->getAttr('username');
$user->toArray();$passport->logout();$passport->getAccessToken(); // can save in client
$passport->getToken(); // secret
$passport->getAuthorizationUrl();
$passport->getLogoutUrl();$user = $passport->checkAuth();
// permission
$user->can($resource, $scope);
$user->cannot($resource, $scope);
// list
$user->getClients();
$user->getPermissions();
// role
$user->getRoles();
$user->hasRole($role);
$user->inRoles($roleList);