###前提
iOSアプリからMySQLデータベースに対し、POST、GETを使ってPHPファイルを介して操作するプログラムについて学んでいます。
現在、こちらのYoutube動画を参考に以下内容のプログラムを書きました。
<データの挿入>
0. iOSアプリで入力されたデータをSwiftプログラムからPOST送信でPHPファイル(https://exsample.com/insert.php)に受け渡す
0. insert.phpで受け取ったデータをMySQLデータベースにINSERT(PDO接続)
<データの取得>
0. iOSアプリでテーブルビューの表示または更新ボタンのプッシュがされるとPHPファイル(https://exsample.com/get.php)に接続する
0. PHPファイル(get.php)でMySQLデータベースからデータを取得し、json_encodeで吐き出す
0. PHPファイル(get.php)から吐き出されたデータをiOS上のテーブルビューに表示する
###最終的に実現したいこと
1 .会員制サイトのように、ユーザーごとに異なるデータをSELECTし、表示させたい。
2 . Swift上から、多くのテーブルを操作する必要性が出てきた場合にそなえ、Swift側のコードはもちろんのこと、php側のコードもクラス化して管理していきたい。
###質問内容
WEB APIはFacebookログインやTwitterログインなどの使い方が記されているようなメジャーなものしか使ったことがありません。
そのため、ふわっとした感じでしか理解ができていないので、学習している上で、たくさん疑問に感じたことがあり、理解を深めるために質問するに至りました。
<疑問点>
1 .現状のinsert.phpやget.phpは自分のアプリのみならず、どこからでもPOSTやGETがされてしまうと思うのですが、自分のアプリからのリクエストのみに制限するにはどうしたらよいのでしょうか?
2 .SSL通信を使用することを前提として、INSERT、SELECTする対象のテーブル名の指定方法は、HTTP_POSTで受け渡すデータにテーブル名を含めて渡す形で良いのでしょうか?
3 . データをリクエストしたユーザーに対し、個々人に必要なデータを返すような場合、どのようにユーザーの識別をするのでしょうか?
4 .いくつかのサイトでOauth認証を使ってセキュリティを強化すべきだと書いてあったのですが、Oauth認証の仕組み(アクセストークンの発行)自体を自分で作成し、ユーザーにアクセストークンを発行し、保持させ、リクエストがあるたびにアクセストークンで確認することでセキュリティを高めるということなのでしょうか?
ユーザー登録にLINE Login PlatformやFacebookログインを認証として使用する場合はLINEやFacebookのアクセストークンを利用すれば良いのでしょうか?
説明が下手で申し訳ありません。
説明でわかりづらい点がございましたら補足させて頂きます。
ご教授くださると幸いです。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/01/18 02:03