class ExternalBaseUserProvider implements UserProvider
{
- /**
- * The user model.
- *
- * @var string
- */
- protected $model;
-
- /**
- * LdapUserProvider constructor.
- */
- public function __construct(string $model)
- {
- $this->model = $model;
+ public function __construct(
+ protected string $model
+ ) {
}
/**
* Create a new instance of the model.
- *
- * @return Model
*/
- public function createModel()
+ public function createModel(): Model
{
$class = '\\' . ltrim($this->model, '\\');
/**
* Retrieve a user by their unique identifier.
- *
- * @param mixed $identifier
- *
- * @return Authenticatable|null
*/
- public function retrieveById($identifier)
+ public function retrieveById(mixed $identifier): ?Authenticatable
{
return $this->createModel()->newQuery()->find($identifier);
}
/**
* Retrieve a user by their unique identifier and "remember me" token.
*
- * @param mixed $identifier
* @param string $token
- *
- * @return Authenticatable|null
*/
- public function retrieveByToken($identifier, $token)
+ public function retrieveByToken(mixed $identifier, $token): null
{
return null;
}
/**
* Retrieve a user by the given credentials.
- *
- * @param array $credentials
- *
- * @return Authenticatable|null
*/
- public function retrieveByCredentials(array $credentials)
+ public function retrieveByCredentials(array $credentials): ?Authenticatable
{
// Search current user base by looking up a uid
$model = $this->createModel();
/**
* Validate a user against the given credentials.
- *
- * @param Authenticatable $user
- * @param array $credentials
- *
- * @return bool
*/
- public function validateCredentials(Authenticatable $user, array $credentials)
+ public function validateCredentials(Authenticatable $user, array $credentials): bool
{
// Should be done in the guard.
return false;
}
+
+ public function rehashPasswordIfRequired(Authenticatable $user, #[\SensitiveParameter] array $credentials, bool $force = false)
+ {
+ // No action to perform, any passwords are external in the auth system
+ }
}