setRequestCredentials() public method

Sets the closure which resolves the request credentials.
public setRequestCredentials ( Closure $requestCredentials ) : void
$requestCredentials Closure
return void
Esempio n. 1
0
 /**
  * @param string $context
  * @param SecurityContextConfiguration $configuration
  * @return Security
  */
 public function create($context, SecurityContextConfiguration $configuration)
 {
     $persistences = $this->repositories->createPersistenceRepository($context);
     $roles = $this->repositories->createRoleRepository($context);
     $users = $this->repositories->createUserRepository($context, $persistences, $roles);
     $sentinel = new Sentinel($persistences, $users, $roles, $this->repositories->createActivationRepository($context), $this->container->make(Dispatcher::class));
     foreach ($configuration->listCheckpoints() as $key => $checkpoint) {
         $sentinel->addCheckpoint($key, $this->makeCheckpoint($checkpoint, $configuration));
     }
     $sentinel->setReminderRepository($this->repositories->createReminderRepository($context, $users));
     $sentinel->setRequestCredentials(function () {
         $request = $this->container->make('request');
         $login = $request->getUser();
         $password = $request->getPassword();
         if ($login === null && $password === null) {
             return;
         }
         return compact('login', 'password');
     });
     $sentinel->creatingBasicResponse(function () {
         $headers = ['WWW-Authenticate' => 'Basic'];
         return new Response('Invalid credentials.', 401, $headers);
     });
     $security = new Security($sentinel, $this->repositories->createPermissionRepository($context));
     $this->bindUrlGenerator($security);
     $security->setLoginRoute($configuration->getLoginRoute());
     return $security;
 }
Esempio n. 2
0
 /**
  * Sets the closure which resolves the request credentials.
  *
  * @param  \Closure $requestCredentials
  *
  * @return void
  */
 public function setRequestCredentials(\Closure $requestCredentials)
 {
     $this->sentinel->setRequestCredentials($requestCredentials);
 }
Esempio n. 3
0
 /**
  * Sets the closure which resolves the request credentials.
  *
  * @param \Closure $requestCredentials
  * @return void 
  * @static 
  */
 public static function setRequestCredentials($requestCredentials)
 {
     \Cartalyst\Sentinel\Sentinel::setRequestCredentials($requestCredentials);
 }
 /**
  * Registers sentinel.
  *
  * @return void
  */
 protected function registerSentinel()
 {
     $this->app->singleton('sentinel', function ($app) {
         $sentinel = new Sentinel($app['sentinel.persistence'], $app['sentinel.users'], $app['sentinel.roles'], $app['sentinel.activations'], $app['events']);
         if (isset($app['sentinel.checkpoints'])) {
             foreach ($app['sentinel.checkpoints'] as $key => $checkpoint) {
                 $sentinel->addCheckpoint($key, $checkpoint);
             }
         }
         $sentinel->setActivationRepository($app['sentinel.activations']);
         $sentinel->setReminderRepository($app['sentinel.reminders']);
         $sentinel->setRequestCredentials(function () use($app) {
             $request = $app['request'];
             $login = $request->getUser();
             $password = $request->getPassword();
             if ($login === null && $password === null) {
                 return;
             }
             return compact('login', 'password');
         });
         $sentinel->creatingBasicResponse(function () {
             $headers = ['WWW-Authenticate' => 'Basic'];
             return new Response('Invalid credentials.', 401, $headers);
         });
         return $sentinel;
     });
     $this->app->alias('sentinel', 'Cartalyst\\Sentinel\\Sentinel');
 }