Desenvolvimento Web II

Documentos relacionados
Desenvolvimento Web II

Desenvolvimento Web II

Desenvolvimento Web II

Desenvolvimento Web II

Manual One Pass. Thomson Reuters. Agosto Manual One Pass

Bem Vindo ao Sistema ISSMAP

Manual Sistema de Automação de Pedidos Data C

MANUAL DE USUÁRIO. Versão 1.0 Servidor

MANUAL DE ACESSO PORTAL DO CLIENTE EMPRESA Saiba como acessar essa importante ferramenta.

1. ACESSO MENU PRINCIPAL Página Inicial Botões no Topo da Tela Campos para Exibição... 4

D igitação de Eventos

MANUAL Credenciados SGMC Sistema de Gestão de Modalidades de Credenciamento

Gestão Unificada de Recursos Institucionais GURI

Sistema de Gestão de Recursos Humanos

Cotação Web. Compatibilidade. Autenticação

Manual do Usuário RESULTWEB. Módulo Controle de acesso (Agendamento de acesso de visitantes) Versão 1.0

Desenvolvimento Web II

BAND PAULISTA. Guia de Utilização do Sistema de Envio de Arquivos. Data: 18/09/2018 S.E.A v2.2 Autor: Tecnologia da Informação

MANUAL DE ACESSO PORTAL DO CLIENTE CONTRATANTE DE PLANO FAMILIAR Saiba como acessar essa importante ferramenta.

MINICURSO LARAVEL 5.5 Gil Eduardo de Andrade

PROCAD Sistema Eletrônico de Processos Administrativos

Manual. Portal de Seminovos

Manual de Utilização Autorizador Web 3.1

Índice. Parte I Informações Iniciais 1 Sobre o documento. Apresentação Home. Parte II. Nota Premiada. Cadastro. Entrar. Sorteio. Dúvidas.

Vagas do website GRHRC Para localizar as vagas em aberto no website do GRHRC, procure pelo menu PROCURE VAGAS, no canto superior direito do website.

SAA Cesurg. SAA Professor

PROGRAMA ESPECIAL DE FORMAÇÃO PEDAGÓGICA DE PROFESSORES PARA EDUCAÇÃO PROFISSIONAL MANUAL DO AMBIENTE VIRTUAL DE APRENDIZAGEM (AVA) TUTOR

Avante Instruções de Acesso ao AVANT Aluno STM

Manual de Acesso ao Ambiente Usuário: Aluno

Desenvolvimento Web II

Manual. Portal de Seminovos

Gerência de Tecnologia da Informação de Comunicação. Gestão Integrada de Demandas

MANUAL DO SISTEMA WEBDIÁRIO PERFIL COORDENADOR. Diário Eletrônico do Sistema Nambei

MANUAL DE NAVEGAÇÃO UNICURITIBA VIRTUAL PROFESSOR

Relaciona Multibanco 1.0

Manual Telemetria - Horímetro

Sumário 1 CADASTRO DE USUÁRIO COMO ACESSAR O MAZK COMO FAZER UMA ALTERAÇÃO DE PERFIL RECUPERAÇÃO DE SENHA...

TUTORIAL DO PORTAL DO ALUNO. Equipe da Diretoria de Tecnologia da Informação e Comunicação 30/08/2012

Schaeffler Online. Manual de Operação

Manual de Utilização PrintScout

Manual: Sistema Perfil

Manual Telemetria - Odômetro

MANUAL. Via Portal do Cidadão

SUMÁRIO. Como entrar no Portal de Serviços 02. Solicitar Autenticação do Livro 03. Editar solicitação 14. Assinar Solicitação 15

MINISTÉRIO DA EDUCAÇÃO Universidade Federal do Amapá UNIFAP Núcleo De Tecnologia Da Informação NTI WORDPRESS INSTITUCIONAL UNIFAP MANUAL DE USO

TRIBUNAL SUPERIOR ELEITORAL

SGCD 2.0 Sistema Gerenciador de Conteúdo Dinâmico

TUTORIAL PLATAFORMA PHILA - ORIENTADOR

SGCD 2.0 Sistema Gerenciador de Conteúdo Dinâmico

Portal Integrado de Informação. Manual do usuário

Manual do Aplicativo de Configuração

Comunicador Interno (Mensagens Instantâneas)

Obs: O será enviado após a aprovação dos dados pela Escola. Este processo pode levar alguns dias.

Ambiente Virtual de Aprendizagem

Portal de Cotação da FCC S.A.

Introdução. Este manual foi construído de maneira a orientar na utilização do sistema, demonstrando passo-a-passo todas as suas funcionalidades.

Procedimentos para cadastro de tutores no SIGPET.

TRABALHO FINAL 20 Pontos

MANUAL DE ORIENTAÇÃO PARA SOLICITAÇÃO DE CERTIDÃO DE ADIMPLEMENTO SGPCCEE

APRESENTAÇÃO Tela da internet que permite a pesquisa ao Catálogo da Instituição. Acesse: Figura: Consulta Web

Manual de acesso aos exames pela internet. I - Acesso com o Protocolo

SUMÁRIO. Apresentação da Área do Professor. Capítulo 1 Home. Capítulo 2 Dados de Curso

MANUAL DE OPERAÇÕES SISTEMA SAI CHAVE DE ACESSO PERFIL ALGODOEIRA

GUIA PARA CONFIGURAÇÃO DE CORREIO ELETRÔNICO

MANUAL DO USUÁRIO Subunidade Acadêmica

Objetivo Com o objetivo melhorar a comunicação com o os clientes e dinamizar o atendimento aos usuários, criou-se o Help Desk.

PORTAL DE SERVIÇOS DA SECRETARIA MUNICIPAL DE EDUCAÇÃO MANUAL DE UTILIZAÇÃO PARA INSCRIÇÕES ONLINE ÍNDICE

Manual Q-Acadêmico 2.0 Módulo Web - Aluno

Painel Administrativo Westlock

Na parte superior do site, temos um menu com botões que utilizaremos para a navegação do site.

MANUAL DO USUÁRIO. Versão 1.0

Módulo Extranet. Manual do Usuário. Versão: 1.0 Data alteração: Autor: CY50

Seja bem vindo a sua AMP! AULA MODELO PROFESSOR- AMP

TUTORIAL PLATAFORMA PHILA - ALUNO CURSOS NESCON / GRUPO B

SCPO. Sistema de Comunicação Prévia de Obras

Manual do Usuário. Versão 1.0. Página 1 de 73

Manual Linx Postos Comanda Mobile

SFA Sistema de Fortalecimento das Aprendizagens - SFA Manual Módulo do Professor Versão 01

Tutorial de como criar um evento na Plataforma EVEN3

Desenvolvimento Web II

MANUAL DE INSTRUÇÕES Sistema de Plantões e Faltas GEPAF versão 2.1

1. No seu celular, acesse o App Store (caso possua iphone) ou o Play Store (caso possua celular com sistema Android); 2. Baixe o aplicativo ABC

MANUAL VTWEB CLIENT SUBURBANO

Sistema de Impressão

MANUAL DE ORIENTAÇÃO AOS SERVIÇOS DO PORTAL ECONOMUS (ACESSO EXCLUSIVO)

1. Acesso Portal do Discente Atualizar Foto e Perfil Meus Dados Pessoais Minhas Notas... 7

MANUAL DE ACESSO AOS SERVIÇOS CAFÉ Versão 3.0

Objetivo: Praticar a aplicação de acesso remoto via protocolo RDP (Remote Desktop) em ambientes Microsoft Windows.

MANUAL DE ORIENTAÇÃO AOS SERVIÇOS DO PORTAL ECONOMUS (ACESSO EXCLUSIVO)

Transcrição:

Desenvolvimento Web II Framework Laravel 5 Autenticação / Auth (https://laravel.com/docs/5.6/authentication) Gil Eduardo de Andrade

Introdução: O Laravel fornece, nativo, uma API de autenticação que permite registrar, autenticar, autorizar e recuperar senhas de usuários; Ao criarmos uma nova aplicação Laravel é disponibilizada uma migração create_users_table e um modelo User;

Introdução: O Laravel disponibiliza, ainda, um conjunto de rotas e visualizações (views) que permitem incorporar facilmente um sistema de autenticação a aplicação criada; Para adicionar esses recursos ao projeto basta executar o comando: php artisan make:auth;

Primeiros Passos: (Arquivo:.env ) Configuração para conexão da aplicação com o banco de dados permite efetuar a migração das tabelas de usuário e recuperação de senha. Configuração para envio de e-mails a partir da aplicação permite enviar o e-mail de recuperação de senha para o usuário.

Comando migrate (tabelas): Cria as tabelas de usuário e recuperação de senha necessárias para utilização da API de autenticação do Laravel.

Comando make:auth (Views e Controllers): Classes de visualização criadas após a execução do comando. Permitem registrar, autenticar e recuperar senha do usuário. Classes de controle criadas após a execução do comando.

Comando make:auth (Rotas): Após a execução do comando as rotas para páginas de visualização de registro, autenticação e recuperação de senha são adicionadas ao arquivo de rotas da aplicação web.php. Uma rota protegida por autenticação é definida, ela considera uma página inicial definida como home.

Funcionamento/Adaptação (exemplo básico): (Arquivo: web.php ) Configura a rota principal / para redirecionar para view home, criada quando executamos o comando php artisan make:auth. Duas formas diferentes de especificar que as rotas necessitam de autenticação. Na primeira abordagem especificamos apenas uma única rota, na segunda especificamos um grupo ou conjunto de rotas.

Funcionamento/Adaptação (exemplo básico): (Execução: 127.0.0.1:8000 rota /login Arquivo: auth/login.php ) Ao acessar a rota principal ( / ) da aplicação, que foi configurada ser acessível após autenticação do usuário, o Laravel redireciona o acesso para rota /login. Essa view é disponibilizada pela API Auth e foi criada quando executamos o comando make:auth.

Funcionamento/Adaptação (exemplo básico): (Execução: rota /register Arquivo: auth/register.php ) Ao selecionar a opção Register na view de login a aplicação é redirecionada para view de registro. Os dados informados pelo usuário são inseridos na tabela users criada anteriormente (slide 5) quando efetuamos a migração via comando php artisan migrate.

Funcionamento/Adaptação (exemplo básico): (Execução: rota /password/reset Arquivo: auth/password/reset.php ) Ao selecionar a opção Forgot Your Password?, na view de login, a aplicação é redirecionada para view de reset. Nela o usuário digita seu e- mail onde receberá um link para efetuar a troca da senha. Caso o e- mail não esteja cadastrado no sistema, tabela users, uma notificação de erro é apresentada.

Aplicação Exemplo Adaptada http://www.gileduardo.com.br/ifpr/dwii/downloads/dwii_exdoc12.zip

SETA Menu e Rotas Principais: (Adaptação: Exemplo Primeira Aula Laravel - Views API Autenticação)

SETA Adaptação Migration User: (Arquivo: 2014_10_12_000000_create_users_table.php) Foram adicionados, para o exemplo criado, o campo type: que permite identificar se o usuário registrado é um aluno (0) ou professor (1) - e o campo cpf: identificar a professor ou aluno o usuário registrado está viculado.

SETA Models / Migrations Aluno e Professor: (Arquivos: create_aluno_models_table.php / create_professor_models_table.php ) Duas classes de modelo e migrations foram criadas para armazenar as informações dos alunos e professores, no exemplo, para simplificar colocamos para a informação de CPF que permite vincular o aluno e o professor a um usuário (autenticação) registrado no sitema.

SETA Definição Rotas: Autenticação (Rotas Com Autenticação Arquivo web.php ) Define as rotas que só estarão acessíveis após a autenticação do usuário. São elas: a rota inicial, menu principal, e todos os sub-menus acessíveis a partir dela: Curso, Turma, Aluno, Disciplina, Conceito, Relatório, Importar e Exporta.

SETA Definição Rotas: Autenticação (Rotas Sem Autenticação Arquivo web.php ) Define as rotas que estarão acessíveis sem a necessidade de autenticação do usuário. São elas: todas as rotas pré-definidas pela API de autenticação login, logout, registro e recuperação de senha. A rota de logout foi redefinida para apontar para a tela de login. Observe que utilizamos a API Auth para indicar que usuário efetuou logout.

SETA Adaptação da API de Autenticação: (Acesso e Redirecionamento: login.blade.php) Tela de login, API de autenticação, após adaptação.

SETA Adaptação da API de Autenticação: (Acesso e Redirecionamento: login.blade.php) Além das adaptações estéticas na página de login, as mensagens de erro retornadas pela API de autenticação foram reescritas e apresentadas de maneira diferente.

SETA Adaptação da API de Autenticação: (Acesso e Redirecionamento: login.blade.php) Adaptação das mensagens de erro enviadas pela API.

SETA Adaptação da API de Autenticação: (Acesso e Redirecionamento: register.blade.php) Tela de registro, API de autenticação, após adaptação. Observe que no exemplo foram adicionados mais informações para o registro dos usuários. Como temos dois tipos de usuários também são solicitados os campos CPF e usuário. O tipo permitirá que implementemos níveis de privilégio.

SETA Adaptação da API de Autenticação: (Acesso e Redirecionamento: register.blade.php) Além das adaptações estéticas na página de registro, as mensagens de erro retornadas pela API de autenticação foram reescritas e apresentadas de maneira diferente. Observe que mesmo o CPF não sendo padrão da API também foi codificada uma verificação para ele, como apresentado na codificação do slide a seguir.

SETA Adaptação da API de Autenticação: (Adaptação: RegisterController.php) O método validator() da classe RegisterController, responsável por registrar novos usuários, permite especificar como os campos de entrada do formulário de registro devem ser validados. Observe que o campo CPF deve ser obrigatório (required), do tipo string, com um mínimo e um máxiom de 11 caracteres (min:11 max:11) e campo único na tabela aluno_models (unique) criada para receber os dados específicos dos alunos.

SETA Adaptação da API de Autenticação: (Acesso e Redirecionamento: register.blade.php) Adaptação das mensagens de erro enviadas pela API.

SETA Adaptação da API de Autenticação: (Arquivo: RegisterController.php) O método create() da classe RegisterController() é invocado no momento em que um usuário é registrado/criado. Adaptando a API: uma verificação sobre qual tipo de usuário será registrado é feita ele é adicionando a respectiva tabela. Um novo usuário é registrado. Obs.: a codificação apresentada é apenas um exemplo e pode ser melhorada.

SETA Adaptação Super Classe Controller: (Arquivo: Controller.php) A classe Auth contém as informações globais de autenticação (dados de sessão), permitindo verificar o campo type para o usuário que está autenticado no sistema. Um novo método foi criado para retornar o tipo de usuário (aluno ou professor) que está autenticado no sistema no momento. Esse método é invocado pelas subclasses de controle que recebem requisições para acessar as rotas definidas no arquivo web.php. De acordo com o tipo de usuário é possível definir privilégios, ou seja, quais rotas podem ser acessadas pelos alunos e quais podem ser acessadas pelos professores.

SETA Definição Privilégio, Sub Classes Controle: (Arquivos: CursoController.php e TurmaController) Quando a rota principal (listar) para os menus Curso e Turma são invocados, antes que a aplicação faça o redirecionamento, uma verificação é feita para identificar o tipo de usuário. Pelo exemplo, apenas os professores tem privilégio para visualizar os menus a partir da página inicial.

SETA Pós Registro/Autenticação: (Acesso e Redirecionamento: main.blade.php) Após a autenticação o menu principal da aplicação é liberada para acesso (tanto para alunos quanto para professores). Na parte superior da view são apresentados o nome do usuário autenticado e a opção sair/logout.

SETA Pós Registro/Autenticação: (Adaptação: principal.blade.php) A classe Auth contém as informações globais de autenticação (dados de sessão) e permite verificar se o usuário já efetuou ou não login na aplicação método check(). Na codificação o nome do usuário e a opção sair só são apresentadas caso o usuário esteja autenticado. Através da classe Auth é possível acessar os dados do usuário autenticado como, por exemplo, seunome atributo name.

Exemplos Utilizados no Documento http://www.gileduardo.com.br/ifpr/dwii/downloads/dwii_exdoc12.zip Exercício sobre o Conteúdo http://www.gileduardo.com.br/ifpr/dwii/downloads/dwii_pratica11.pdf