Laravel + OAuth 2.0 Server

  • Published on
    18-Jan-2017

  • View
    785

  • Download
    0

Transcript

Laravel + OAuth 2.0 Server

Quem sou eu?

Daniel Satiro da Rocha

Tecnlogo em Sistemas para InternetBacharel em Sistemas de InformaoAnalista e desenvolvedor de sistemas web desde 2007

PHP, JavaScript, CSS, HTML, MySql, PostgreSql, MVC, DTO, DAO, Singleton, Zend Framework, Laravel Framework, jQuery, UML, Ajax, API Restful, Elasticsearch

Protocolo Stateless

Em computao, um protocolo sem estado (do ingls stateless) um protocolo de comunicao que considera cada requisio como uma transao independente que no est relacionada a qualquer requisio anterior, de forma que a comunicao consista de pares de requisio e resposta independentes.

Link: https://pt.wikipedia.org/wiki/Protocolo_sem_estado

Autenticao com session

Autenticao com token

Instalao no Laravel 5

Partindo do princpio de que o Laravel j est instalado e configurado, adicione a seguinte linha em seu arquivo composer.json

"lucadegasperi/oauth2-server-laravel": "5.0.*"

Na sequncia execute o comando composer update para baixar o pacote.

Instalao no Laravel 5

Instalao no Laravel 5

Uma vez instalado o pacote adicione essas linhas ao array de providers em seu arquivo config/app.php:

LucaDegasperi\OAuth2Server\Storage\FluentStorageServiceProvider::class,LucaDegasperi\OAuth2Server\OAuth2ServerServiceProvider::class,

Ainda no mesmo arquivo, porm em aliases array:

'Authorizer' => LucaDegasperi\OAuth2Server\Facades\Authorizer::class,

Instalao no Laravel 5

Adicione a seguinte linha em seu arquivo app/Http/Kernel.php no array $middleware

\LucaDegasperi\OAuth2Server\Middleware\OAuthExceptionHandlerMiddleware::class

Isso vai pegar qualquer erro OAuth e responder apropriadamente. Ento adicione para $routeMiddleware

'oauth' => \LucaDegasperi\OAuth2Server\Middleware\OAuthMiddleware::class,'oauth-user' => \LucaDegasperi\OAuth2Server\Middleware\OAuthUserOwnerMiddleware::class,'oauth-client' => \LucaDegasperi\OAuth2Server\Middleware\OAuthClientOwnerMiddleware::class,'check-authorization-params' => \LucaDegasperi\OAuth2Server\Middleware\CheckAuthCodeRequestMiddleware::class

Instalao no Laravel 5

Remova a linha App\Http\Middleware\VerifyCsrfToken do array $middleware e coloque-a no array $routeMiddleware ficando assim:

'csrf' => App\Http\Middleware\VerifyCsrfToken::class,

Publicando Configuraes

Para publicar os pacotes de configurao e migrations execute o seguinte comando:

php artisan vendor:publish

Depois disso, voc pode editar o arquivo config/oauth2.php para atender s suas necessidades.

Migrations

Para criar as tabelas necessrias execute:

php artisan migrate

Cadastro de oauth_clients

Grant Types em config/oauth2.php

Mais opes de grant_types em: http://git.io/vJLAv

Mtodo callback verify em app/User.php

Rotas

Todas rotas protegidas por token devero estar dentro do grupo com middleware => oauth. As demais de acesso pblico devero estar fora ou em outro, assim como a rota responsvel por pegar um token.

.htaccess incluir linhas selecionadas

Pegando um access-token

Usando um token

Demo

Contatos

@dansatiro

danielsatiro.creativeitds.com.br

https://github.com/danielsatiro

Obrigado!

Clique para editar o formato do texto do ttuloClique para editar o estilo do ttulo mestre

Clique para editar o formato do texto da estrutura de tpicos2. Nvel da estrutura de tpicos3. Nvel da estrutura de tpicos4. Nvel da estrutura de tpicos5. Nvel da estrutura de tpicos6. Nvel da estrutura de tpicos

7. Nvel da estrutura de tpicosClique para editar os estilos do texto mestre

Segundo nvel

Terceiro nvel

Quarto nvel

Quinto nvel

05 de Dezembro