私はプロジェクトに取り組んでおり、現在バックエンドを書いています。私はWebアプリとモバイルアプリを書く必要があるので、残りのAPIとして実装することに決めました。私は残りのAPIがステートレスなので、私はどのようにユーザーにログインするのかを理解している問題を抱えています。私は、各要求またはOauth2.0で基本認証(ログイン資格情報の送信)について述べた資料を読んでいます。基本認証は推奨されていません。なぜ私は、サードパーティが自分のAPIを使用しないため、Oauth2.0を使用すべきか理解していません。私の質問は、どのように私はログイン機能を実装する必要があり、何が標準ですか?ログインApiを使用して
答えて
Usersテーブルに一意のapi_token
列を追加する必要があります。 Laravel 5.4で
$table->string('api_token', 60)->unique();
、api.php
はあなたがすぐにミドルウェア認証を使用する必要があります、APIのルートを保持している:あなたはapi_tokenで要求を認証することができますので、APIを。
私はあなたがJSONウェブトークンにCRUD操作を提供していますREST APIを作成することができますね http://bootstrapdojo.com/rest-api-laravel-5-4-with-token-authentication/
ありがとうございますが、私はいくつかの質問があります。認証を必要とするすべてのリクエストでapiトークンを送信する必要がありますか?いつトークンを更新する必要がありますか? Httpsを使用する必要がありますか?それ以来、httpを使用することは人間につながるように思われるので、それは中間の攻撃です。 – khan
@khanええ、トークンはその要求を許可するすべての要求で送られるべきです。セキュリティ上の問題については、誰かがあなたの質問に答えている可能性があります。http://stackoverflow.com/questions/38322835/is-using-a-api-token-in-url-or-post-curl-safe – dexterb
続きを読みます。
- トークン
使用の改造や
Laravel APIを呼び出すために別のパッケージを使用して新しいユーザーを作成- パスワードグラントクライアントを作成詳細はこれを参照https://laravel.com/docs/5.4/passport
- 、プロジェクトにパスポートのパッケージを追加
/* prepare httpClient */ httpClient.addInterceptor(new Interceptor() { @Override public Response intercept(Chain chain) throws IOException { Request orginal = chain.request(); Request.Builder builder = orginal.newBuilder(); builder.addHeader("Accept", "application/json"); if (tools.isAuthorized()) { builder.addHeader("Authorization", "Bearer " + tools.getAccessToken()); } builder.method(orginal.method(), orginal.body()); Request build = builder.build(); return chain.proceed(build); }});
5を呼び出して応答を取得し、ユーザートークンを保存します。
- 1. facebook apiを使用してログイン
- 2. Android、Rest APIを使用してログイン
- 3. TwitterログインAPIを使用
- 4. APIを使用したユーザーのログイン
- 5. DjangoのREST APIを使用したログイン
- 6. Furk.net APIを使用してもログインしていません
- 7. NetAppがOSSVアカウントを使用してAPIを使用してログインする
- 8. GoogleでRuby on Rails APIを使用してログインし、反応を
- 9. Codeigniterを使用してLinkedIn APIでログインしますか?
- 10. バックエンドとしてJava Rest APIを使用したAngular JSログイン
- 11. rest APIを使用してAndroidでfacebookをログインする方法
- 12. JS APIを使用してLinkedInログインを統合
- 13. .NET CORE API OpenIDict/Identityを使用してFacebookログインを行う
- 14. Googleのログインを使用してYouTubeデータAPIを承認する
- 15. ログインの検証にAPIを使用しています
- 16. DocSignサンドボックスアカウントでログインしてCoSign APIを使用できません
- 17. Eclipse Developer Toolsを使用してAPIマネージャーにログイン
- 18. SonarQube Web APIを使用してログインするには
- 19. Azure ADにSymfony3 APIを使用してログイン
- 20. Firebase APIを使用してログイン中にタイムアウトエラーが発生する
- 21. リアシティーネイティブのAxios APIを使用してログインできません
- 22. 複数のプロジェクトでASP.NET Web-Apiを使用してログインする
- 23. ウェブAPIのIDを使用してログインできない
- 24. sharekit APIを使用してFacebookにログインする方法は?
- 25. 古いグラフAPIを使用してFacebookにログイン
- 26. 残りのAPIを使用してAndroidのDrupalにログイン
- 27. ClientLoginとPHP/cURLを使用してGoogle Spreadshet APIにログイン
- 28. DockerリモートAPIを使用してレジストリにログインする
- 29. Google、Facebookなどで独自のAPIを使用してログイン
- 30. PayPal APIを使用せずにCURLを使用してPayPalにログイン
Laravelのどのバージョンをお使いですか? – dexterb
Laravel version 5.4 – khan