JWT usando o Yii


  • Yii2 instalado
  • É necessário um https site habilitado para que o cookie HttpOnly funcione entre sites
  • Uma tabela de banco de dados para armazenar RefreshTokens:

 

Referência:
https://www.yiiframework.com/wiki/2568/jwt-authentication-tutorial

CREATE TABLE `user_refresh_tokens` (
	`user_refresh_tokenID` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
	`urf_userID` INT(10) UNSIGNED NOT NULL,
	`urf_token` VARCHAR(1000) NOT NULL,
	`urf_ip` VARCHAR(50) NOT NULL,
	`urf_user_agent` VARCHAR(1000) NOT NULL,
	`urf_created` DATETIME NOT NULL COMMENT 'UTC',
	PRIMARY KEY (`user_refresh_tokenID`)
)
COMMENT='For JWT authentication process';


  • Instalar pacote: composer require sizeg/yii2-jwt
  • Para as rotas login/logout/refresh etc usaremos um controlador chamado AuthController.php. Você pode nomeá-lo como quiser.

Deixe um comentário