for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
declare(strict_types=1);
namespace Facile\OpenIDClient\Token;
use Facile\OpenIDClient\Client\ClientInterface;
final class UserInfoVerifierBuilder implements TokenVerifierBuilderInterface
{
/** @var bool */
private $aadIssValidation = false;
/** @var int */
private $clockTolerance = 0;
public function setAadIssValidation(bool $aadIssValidation): self
$this->aadIssValidation = $aadIssValidation;
return $this;
}
public function setClockTolerance(int $clockTolerance): self
$this->clockTolerance = $clockTolerance;
public function build(ClientInterface $client): \Facile\JoseVerifier\TokenVerifierInterface
$builder = new \Facile\JoseVerifier\UserInfoVerifierBuilder();
$builder->setJwksProvider($client->getIssuer()->getJwksProvider());
$builder->setClientMetadata($client->getMetadata()->toArray());
$builder->setClientJwksProvider($client->getJwksProvider());
$builder->setIssuerMetadata($client->getIssuer()->getMetadata()->toArray());
$builder->setClockTolerance($this->clockTolerance);
$builder->setAadIssValidation($this->aadIssValidation);
return $builder->build();