驗證 Access Token

路由設定 OAuth middleware

在我們想要保護的資源中,我們可以加入 oauth 的 middleware 中介層,這樣

// 保護的資源設定 oauth middleware
Route::get('/user-private-resource', ['middleware'=>'oauth', function()
{
    // 取得資源擁有者編號,若經過 Password Grant 驗證的 Token 則為使用者的編號
    $user_id = Authorizer::getResourceOwnerId();
    $data = [
        'user_id'=> $user_id
    ];
    // 回傳受保護的資源
    return Response::json($data);
}]);

透過 Access Token 取的受保護的資源

在我們取得受保護資源的請求 Header 中填入,這樣 OAuth2 就會取得我們傳入的 Access Token,並驗證我們有沒有存取權限,若有存取權限,則會直接回傳該受保護的資源

欄位名稱 資料
Authorization Bearer rXXoWMg5UXzQpxAynCnYYOQiZQ0xDcAjT0ywGvke

透過 Access Token 取的受保護的資源

路由設定包含 Scope 的 OAuth middleware

若我們限制此路由需要有特定 Scope 的存取權限的 Access Token 才可以存取,我們可以在 middleware 後面加上允許的 Scope 名稱,若同時需要擁有多個 Scope 權限,則用 加號(+) 把 Scope 連接起來即可

e.g. ‘oauth:user_profile+user_likes’

// 保護的資源設定 oauth middleware
Route::get('/user-private-resource', ['middleware'=>'oauth:user_profile+user_likes', function()
{
}]);

這樣這個路由就會被指定的 Scope 所保護著了~

參考資料

KeJyun 最新新書推薦
- Laravel 5 for beginner 新手道場:優雅運用框架快速開發 PHP 網站
- Laravel框架开发详解:从零基础到运用框架快速开发PHP网站

Laravel 是 PHP 的框架(Framework),提供了很多開發網站或 API 所需的工具及環境,經過簡單的設定就可以完成資料的處理及顯示,使開發者可以很優雅且快速的開發出各個不同的產品。本書適合有 PHP 基礎的人,但不知道要怎麼選擇框架,或者不用框架的人也能夠明白它的好處。

雖然 WordPress 也能夠架站,但如果有客製化需求,要開發各式各樣的網站,或提供 App 使用的 API,如此一來你只能選擇用框架,而 Laravel 是目前最受歡迎的。

本書將解說為什麼要使用框架,以及理解框架的優缺點後,要怎麼選擇框架,並用框架快速建構一個網站。除非必要,否則書中會避免專業技術用語,盡量使用最生活化易懂的例子及語氣,讓大家更容易進入 Laravel 的世界。

Laravel 5 for beginner 新手道場:優雅運用框架快速開發 PHP 網站

購書連結

Laravel框架开发详解:从零基础到运用框架快速开发PHP网站

購書連結

comments powered by Disqus