Autenticação é uma parte importante de qualquer projeto de Laravel. Muitos pacotes existem em Laravel para implementar a autenticação da API REST, como passaporte, santuário, jwt, etc. O Laravel Santum é um pacote Laravel simples e leve para implementar um sistema de autenticação de API REST para aplicativos móveis, aplicativos de página única (SPAs) e APIs baseadas em token. Ele pode gerar vários tokens de API para os usuários, e o aplicativo de uma página pode ser autenticado usando a sessão do usuário. Pode ser usado como uma alternativa à API de passaporte de Laravel. Laravel Santum é melhor do que o passaporte de Laravel em muitos casos. É mais simples que o Laravel Passport e não requer autenticação OAuth2, como a autenticação de passaporte. As maneiras de implementar a autenticação do Laravel Santum e verificar a API REST usando o Postman foram mostradas neste tutorial.
Pré-requisitos:
Você precisa concluir as seguintes tarefas antes de iniciar as etapas para implementar o sistema de autenticação Laravel Sanctum.
Crie um novo projeto de Laravel nomeado Projeto Sanctum. Aqui o compositor tem sido usado para criar o projeto Laravel. Se o compositor não está instalado antes disso, você deve instalá -lo antes de executar o seguinte comando.
$ compositor Criar Projeto Laravel/Laravel SanctumProject
Vá para a pasta do projeto.
$ CD SanctumProject
Todos os exemplos deste tutorial foram testados no Laravel versão 9+. Verifique a versão instalada do Laravel.
$ php artesan -versãoExecute os seguintes comandos para instalar e executar o carteiro.
$ sudo snap install postman
Banco de dados de configuração:
Você precisa criar um banco de dados no MySQL para implementar a tarefa de autenticação. Conclua as seguintes tarefas para criar um banco de dados e configurar o banco de dados para o projeto Laravel.
Instale e configure o Laravel Sanctum:
Você tem que realizar as seguintes tarefas para instalar e configurar o santuário do Laravel.
Execute o seguinte comando para baixar os arquivos necessários para instalar o pacote Laravel Sanctum.
$ compositor requer Laravel/santuário
Execute o seguinte comando para publicar a configuração do santuário.
$ php artesan fornecedor: publish -provider = "Laravel \ santum \ santumServiceProvider"
A saída a seguir aparecerá após a publicação do Santuário pacote com sucesso.
O arquivo de migração para o Usuários A tabela é criada por padrão ao criar o projeto Laravel. Execute o seguinte comando migrar para criar o Usuários Tabela usada para autenticação.
Middleware de configuração:
Para usar o santuário, você deve adicionar a seguinte linha no 'API'Seção do Núcleo.php arquivo. Abra o Núcleo.php arquivo do local, app/http/kernel.php, e adicione a linha.
\ Laravel \ santum \ http \ middleware \ garantemfrondendRequestSarest Aputado :: Classe,O 'API'A seção deste arquivo será parecida com a seguinte imagem.
Crie a API:
Vá para a pasta do projeto e execute o seguinte comando para criar o controlador para a autenticação da API. Authcontroller.O arquivo php será criado dentro da pasta App/Http/Controllers após a execução do comando.
$ php artesan make: controller authcontrollerAbra o Authcontroller.php e substitua o conteúdo pelo seguinte script. O função registring () foi usado no script para validar os dados do usuário enviado e inserir os dados válidos na tabela de usuários. A função login () foi usada no script para autenticar o usuário, verificando as credenciais enviadas para o login.
namespace app \ http \ controladores;Adicionar rota para a API:
Abra o API.arquivo php de rotas pasta e adicione as seguintes linhas. A primeira linha foi usada para adicionar as informações do AuthController. A segunda linha foi usada para adicionar a rota da API para registrar o usuário. A terceira linha foi usada para adicionar a rota da API para autenticar o usuário registrado.
use app \ http \ controladores \ authcontroller;Testando a autenticação da API usando o Postman:
Execute o aplicativo Postman. Defina o tipo de solicitação como PUBLICAR e escreva o seguinte URL.
http: // 127.0.0.1: 8000/registro
Depois de adicionar os parâmetros necessários para registrar uma nova conta de usuário, clique no botão Enviar. Se as novas informações do usuário forem inseridas com sucesso na tabela de usuários, uma informação Access_Token será exibida como a seguinte imagem.
Abra o Tabela de usuários do banco de dados, logando no servidor MySQL ou abrindo o Phpmyadmin do navegador para verificar qualquer novo registro foi inserido ou não no Tabela de usuários. A imagem a seguir mostra que um novo registro de usuário foi inserido no Usuários tabela depois de enviar os dados usando o carteiro aplicativo.
Agora, você pode verificar a autenticação da API usando o Postman. Escreva a seguinte URL no aplicativo Postman depois de selecionar a postagem como o tipo de solicitação. Digite o endereço de email e a senha válidos para autenticar o usuário existente e clique no Enviar botão. Se as informações do usuário fornecidas forem válidas, o Access_token As informações aparecerão como a seguinte imagem. A mensagem de erro será exibida para as informações do usuário inválido.
Conclusão:
A maneira simples de implementar a autenticação da API no projeto Laravel usando o Santuário o pacote foi mostrado neste tutorial. Os usuários da Laravel receberão o conceito de autenticação da API e poderão implementar e verificar a autenticação usando o Postman depois de ler este tutorial.