ホームページ  >  記事  >  バックエンド開発  >  Laravel 5.1 + OAuth2 PasswordGrant (パスワード認証モード)

Laravel 5.1 + OAuth2 PasswordGrant (パスワード認証モード)

WBOY
WBOYオリジナル
2016-06-23 13:24:141383ブラウズ

簡単な背景説明

この記事は、一般的なアプリケーション バックエンド サービス環境を構築することを目的としています。

OAuth2 は、次を使用して安全な検証環境を提供します。アクセス セキュリティ リソース トークンとしての access_token は、アプリケーションとバックエンド間の単一の対話方法として、Google、Facebook、または Sina Weibo のようなサードパーティのログイン プラットフォーム モデルを実装する場合は、より簡潔にするためにパスワード タイプを使用してください。認証コード付与を選択します。

OAuth タイプのリファレンスの説明: https://github.com/lucadegasperi/oauth2-server-laravel/wiki/Choosing-a-Grant

この記事で選択した OAuth2 認証方法は、パスワードです。 access_token の有効期限が切れた後は、refresh_token を使用して、再ログインせずに新しい access_token を申請します。これにより、アプリケーションに一度ログインした場合と同様の効果が得られます。ユーザーは再度ログインする必要があります。これは、ユーザーが長期間アプリケーションを使用していない場合に相当し、ユーザーは認証のために再度ログインする必要があります。一般的な時間は、実際のニーズに応じて設定できます。

環境:

Laravel 5.1 のインストールについてはブログ投稿を参照してください:

Laravel 用にカスタマイズされた OAuth2 実装 oauth2-server-laravel: https://github.com/lucadegasperi/oauth2-server-laravel/wiki

oauth2-server-laravel PasswordGrant のインストールと構成については、公式 Web サイトのドキュメントを参照してください。それはすでに非常に明確です:

インストール構成: https://github.com/lucadegasperi/oauth2 -server-laravel/wiki/Laravel-5-インストール

使用: https://github.com/lucadegasperi/oauth2-server-laravel/wiki/Implementing-an-Authorization-Server-with-the-Password-Grant

この記事の焦点:

公式ウェブサイト使用コードの設定と追加方法のみを説明していますが、コードの呼び出し方法については説明していないため、多くの初心者が立ち止まってしまう可能性があります。

ps: 公式 Web サイトのドキュメントにある「手動エラー」は次のとおりです:

'\App\PasswordVerifier@verify' 改成 '\App\PasswordGrantVerifier@verify' 与后面的类定义一致<br />

テスト データの準備

テストの前に、サードパーティのプラットフォームと同様に、特定のアプリケーションのアクセスを識別するために AppID と AppSecret が必要です

操作は次のとおりです: アプリ情報を oauth_clients テーブルに追加します。

HTTPリクエストをシミュレートします

ここではHTTPリクエストのプロセスをシミュレートし、画像を直接貼り付けます。誰もが理解しています
access_tokenの取得を承認します。パラメータのclient_idとclient_secretがoath_clientsのものと一致している必要があることに注意してください.


access_tokenの有効期限が切れたら、refresh_tokenで更新し、新しいaccess_tokenとrefresh_tokenを返します



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。