agp / twofactor
Package para autenticaçào de dois fatores
Requires
- php: ^7.2
- chillerlan/php-qrcode: ^4.3
This package is not auto-updated.
Last update: 2024-11-04 17:18:45 UTC
README
Package Two Factor
Package para autenticaçào de dois fatores.
Menu
Git do projeto
Fórum de discução
Requisitos
- PHP 7.2+
Instalação
composer require agp/twofactor
O segundo passo é verificar se as variáveis que são utilizadas nesse arquivo ja estão setadas no .env.
API_AGPADMIN=value
Utilizando
Como gerar e usar a autenticação de dois fatores
Criar
Uma chave secreta é gerada para o seu usuário e salva pela ID:
use Agp\TwoFactor\GoogleAuthentication;
$googleAuthenticator = new GoogleAuthentication();
return $googleAuthenticator->create($adm_pessoa_id);
{
"data": {
"adm_pessoa_id": 2,
"verificado": 0,
"secret_key": "LIZGIMFYTHSDXKBG7TTR4SMLEWTIBNMYNZSO4B..."
}
}
Caso o usuário ja possua uma chave e a mesma esteja verifica o campo secret_key vem "null".
Exibindo QRCode
<img src="{{ (new \chillerlan\QRCode\QRCode)->render($googleAuthenticator->secret_key) }}" alt="">
Como requisito o chillerlan QrCode já vem em nosso pacote, mas você pode utilizar o gerador de QrCode de sua preferencia.
Validar
$secret = $request->input('secret');
$valid = (new GoogleAuthentication())->verify($adm_pessoa_id, $secret);
Caso no método verify não ocorra nenhuma exception o $valid se encontra com o valor de "true";
Consultar
use Agp\TwoFactor\GoogleAuthentication;
$googleAuthenticator = new GoogleAuthentication();
return $googleAuthenticator->get($adm_pessoa_id);
Desativar
Para que a autenticação seja desabilitada é necessario enviar um código.
$secret = $request->input('secret');
(new GoogleAuthentication())->destroy($adm_pessoa_id, $secret);
Copyright
AGP @ 2020