Autenticação e Autorização (in portuguese)

67 %
33 %
Information about Autenticação e Autorização (in portuguese)
Technology

Published on October 2, 2008

Author: bpedro

Source: slideshare.net

Autenticação e autorização PHP Advanced - 17 de Setembro de 2008 Bruno Pedro <bpedro@tarpipe.com>

PHP Advanced Conteúdo • Basic HTTP Auth • Bases de Dados • PEAR::Auth() • OpenID • Projecto • Resumo Autenticação e autorização 2

PHP Advanced Basic HTTP Auth • Suportado pelo protocolo HTTP • Suportado pelo browser • Pode ser interceptado no PHP • Só funciona se o PHP estiver a correr como módulo Apache Autenticação e autorização 3

PHP Advanced Como funciona? • Para aparecer a caixa de autenticação é enviado um header HTTP “Unauthorized” • Os dados inseridos são capturados nos índices PHP_AUTH_USER, PHP_AUTH_PW, e AUTH_TYPE do array $_SERVER Autenticação e autorização 4

PHP Advanced Exemplo Autenticação e autorização 5

PHP Advanced Exemplo Autenticação e autorização 6

PHP Advanced Logout Autenticação e autorização 7

PHP Advanced Aproximação OO Auth username password login() logout() isAuth() HTTPAuth Autenticação e autorização 8

PHP Advanced Aproximação OO Autenticação e autorização 9

PHP Advanced Aproximação OO Autenticação e autorização 10

PHP Advanced Aproximação OO Autenticação e autorização 11

PHP Advanced Aproximação OO Autenticação e autorização 12

PHP Advanced Melhorias • Criação de uma Auth factory • Acoplamento de um Chain of Command para verificar se o utilizador se pode autenticar • Utilização de uma Strategy de acesso a um backend onde estão os dados dos utilizadores Autenticação e autorização 13

PHP Advanced Bases de Dados • Utilização de MySQL • Criação de base de dados para o projecto • Criação de tabela de utilizadores • Verificações • username existe • password é igual • Possível gravação de informação adicional Autenticação e autorização 14

PHP Advanced Tabela de utilizadores Auth username password CREATE TABLE auth ( username VARCHAR(50) default '' NOT NULL, password VARCHAR(32) default '' NOT NULL, PRIMARY KEY (username), KEY (password) ); Autenticação e autorização 15

PHP Advanced Criar utilizador • A password não pode ficar visível! • É utilizada a função MD5 INSERT INTO auth VALUES ('test', MD5('abc123')); Autenticação e autorização 16

PHP Advanced PEAR::DB • Biblioteca de abstracção ao acesso à base de dados • Portabilidade entre vários motores de BD • Várias formas de obter resultados • Automatismos na escrita de valores • Instalação: pear install DB Autenticação e autorização 17

PHP Advanced Exemplo Autenticação e autorização 18

PHP Advanced Modos de leitura • DB_FETCHMODE_ORDERED • DB_FETCHMODE_ASSOC • DB_FETCHMODE_OBJECT • DB_FETCHMODE_FLIPPED Autenticação e autorização 19

PHP Advanced PEAR::Auth • Biblioteca de gestão de autenticação • Permite autenticar contra uma série de backends • Possibilita o registo e a gravação de informação adicional em cada utilizador • Oferece capacidades de logging • Instalação: pear install Auth Autenticação e autorização 20

PHP Advanced PEAR::Auth • Containers: • Array: lista de utilizadores • Base de dados, através de PEAR::DB • Ficheiro em disco • POP3, IMAP • SOAP Autenticação e autorização 21

PHP Advanced Exemplo Autenticação e autorização 22

PHP Advanced Opções • Base de dados utilizada • Alteração do formulário de autenticação • Nomes dos campos username e password • Logging Autenticação e autorização 23

PHP Advanced Formulário • Desligar completamente o formulário de autenticação: • Definir uma função responsável por apresentar o formulário: Autenticação e autorização 24

PHP Advanced Nomes dos campos • Correspondem aos nomes dos campos utilizados no formulário de autenticação Autenticação e autorização 25

PHP Advanced OpenID • Solução de autenticação sem utilizar password • Utilização do mesmo identificador entre vários Websites • Obtenção de dados do utilizador • nome, email, nickname, etc. Autenticação e autorização 26

PHP Advanced OpenID Utilizador Utilizador é introduz o URL redireccionado para o OpenID OpenID server Utilizador é A identidade é redireccionado para a SIM confirmada? aplicação original NÃO Utilizador é autenticado Mensagem de erro na aplicação original Autenticação e autorização 27

PHP Advanced OpenID • Implementação • Eliminação dos campos username e password • Inserção do campo openid_url • Implementação da lógica de redireccionamento e validação Autenticação e autorização 28

PHP Advanced OpenID • Algumas regras • Convém separar o registo da autenticação, mesmo utilizando OpenID • É necessário validar a identidade no acto de registo • O openid_url passa a ser a chave que identifica um utilizador na aplicação Autenticação e autorização 29

PHP Advanced Base de Dados Auth openid_url firstName lastName ... • Podem ser acrescentados mais campos, relacionados com o utilizador Autenticação e autorização 30

PHP Advanced Bibliotecas • http://openidenabled.com/php-openid/ • Compatível com PHP 4.3.0 e superiores • Documentação, exemplos e testes • Tenta usar o Curl mas não é obrigatório • Live demos Autenticação e autorização 31

PHP Advanced Projecto • Funcionalidade de registo • Alteração da tabela de modo a albergar o nome do utilizador • Verificação da password • Gravação dos dados na tabela Autenticação e autorização 32

PHP Advanced Projecto • Autenticação • Utilização do PEAR::Auth para autenticar o utilizador contra a tabela • Obtenção do username e password a partir do formulário • Implementação da funcionalidade de logout Autenticação e autorização 33

PHP Advanced Resumo • Basic HTTP Auth • Aproximação OO • PEAR::DB • PEAR::Auth • OpenID Autenticação e autorização 34

PHP Summer School Questões? OOP em PHP 35

PHP Advanced Mais informação • O meu blog: http://unfoldingtheweb.com/ • Manual de PHP: http://www.php.net/ • PEAR: http://pear.php.net/ • OpenID: http://openid.net/ • Bibliotecas OpenID: http://openidenabled.com/ Autenticação e autorização 36

Add a comment

Related presentations

Related pages

Autenticação e Autorização (in portuguese) - Technology

Search; Home; Technology; Autenticação e Autorização (in portuguese)
Read more

Tópicos Especiais: Autenticação e Autorização | The ...

O Yii tem embutido um framework de autenticação/autorização (auth) que é fácil de usar e pode ser customizado para necessidades específicas.
Read more

Centrify - Autenticação e Autorização - YouTube

You're viewing YouTube in Portuguese (Brazil). You can change this preference below. ... Centrify - Autenticação e Autorização
Read more

Autenticação – Wikipédia, a enciclopédia livre

Autenticação (do grego : ... A autenticação normalmente depende de um ou mais "fatores de autenticação". O termo "autorização" é muitas vezes ...
Read more

ArqPod Brasil - Autorização e autenticação | luconde ...

... Luciano Condé discute sobre os princípios de autenticação e autorização dentro de arquitetura de ... Channel 9. Browse. Tags; Shows ...
Read more

Mastering Grails: Autenticação e Autorização

Como pode ver, diversas estratégias de autenticação e autorização estão disponíveis em Grails, pois os requisitos variam muito entre os aplicativos.
Read more

9 Autenticação de Documentos - Consulado Geral de ...

... por exemplo numa autorização de viagem , sem necessidade de passar pelo ... faça o seu pedido de autenticação com a necessária ...
Read more

c# - Dúvida quanto a Segurança, Autenticação e ...

Dúvida quanto a Segurança, Autenticação e Autorização. ... Sei que normalmente poderia utilizar a autorização baseada em Roles, ...
Read more

A autorização e autenticação

A autorização e autenticação Windows SharePoint Services 3 Outras versões SharePoint 2013; Windows SharePoint Services 3.0 ...
Read more

asp.net web api - Controle de visualização via ...

... usando o ASP.NET Identity já consegui implementar autenticação e autorização na ... Aqui na empresa nós colocamos toda a autenticação na ...
Read more