PHP code example of ladamalina / remote-user-bundle
1. Go to this page and download the library: Download ladamalina/remote-user-bundle library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
ladamalina / remote-user-bundle example snippets
// app/AppKernel.php
class AppKernel extends Kernel
{
public function registerBundles()
{
$bundles = array(
// ...
new Ladamalina\RemoteUserBundle\RemoteUserBundle(),
);
// ...
}
// ...
}
// src/AppBundle/Entity/User.php
namespace AppBundle\Entity;
use Symfony\Component\Security\Core\User\UserInterface;
class User implements UserInterface
{
private $id;
private $username;
private $name;
public function getUsername() {
return $this->username;
}
public function getRoles() {
return ['ROLE_USER'];
}
public function getPassword() {}
public function getSalt() {}
public function eraseCredentials() {}
// more getters/setters
}
// src/AppBundle/Security/UserProvider.php
// ...
class UserProvider extends AbstractRemoteUserProvider
{
/**
* @var string
*/
protected $userClassName;
public function __construct($userClassName) {
if (!class_exists($userClassName)) {
throw new \InvalidArgumentException("Class `$userClassName` does not exists.
Invalid service configuration: services.remote_user_provider");
}
$this->userClassName = $userClassName;
}
public function loadUserByUsernameAndPassword($username, $password)
{
try {
// Remote API call checking $username and $password here
// Populate new User instance with response data
return $user;
} catch (\Exception $e) {
throw new UsernameNotFoundException();
}
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.