

ウェブアプリがあり、画面からできる操作を、自分で作ったスマホアプリからもできるようにしたいので、ウェブアプリで行っている操作を API
化して、スマホからの操作を受け付けるようにしたいです。その際、認証まわりの設計のベストプラクティスなどはありますか? アプリで user/pass
を覚えておいて、 毎回 user/password で Basic 認証させる api 、がパッと思いつきますが、毎回 password
送ることに若干の気持ち悪さを覚えています。


CC BY-SA 3.0
2017-12-12T11:48:56.993
40224
2020-03-11T07:01:50.233
754
question
ios android api 認証認可
スマホアプリから api 化した操作を実行する際の認証設計


ベストプラクティスかは知りませんが、OAuthで認可を得て通信を行うのが一般的だと思います。  
ざっくり流れを言うと、API通信を行う前に認可サーバーにusername/passwordを送信し、API通信を許可するためのアクセストークンを得ます。  
そして、そのアクセストークンをAPIリクエストのヘッダなどに乗せて通信を行うことで、そのリクエストが認められたものなのかを判別する、という感じです。

詳しくは調べてみてください。(このあたりは言葉の使い方が難しいので説明が間違っているかもしれませんが、「OAuth
2.0」で調べるとより詳細に分かるかと思います。)


CC BY-SA 3.0
2017-12-12T12:02:49.100
40226
2017-12-12T12:02:49.100
7655
40224
answer