ユーザーが登録して電子メール/パスワードでサインインするシンプルなiPhoneアプリケーションを開発しています。これらの値は、リモートデータベースに格納されます。iPhoneアプリケーションで安全にリモートデータベースの資格情報を保存する
私はCloudantを使用してこの情報を保存しています(CouchDBは素晴らしい)。新しいユーザー(作成されたAPIキー/パス)に読み取り専用の権限を与えました。 Cloudantと通信するには、アクセスするためのURL(例:https://user:[email protected])が必要です。アプリ内には文字列として格納されています。
これはかなり安全ではないことはわかっていますが、db URLを安全に保つために他の選択肢は考えられません(特にユーザー名/パスワード)。私は人々が信任状を得るためにプロキシを介して別のサーバーを使用することについて話をしてきましたが、少し厄介なようです。
ご意見やご感想は本当にありがとうございます。
これは私がそうだと思ったことです。私は、Webサービスを持っている別のレイヤー(別のサーバー)を追加するという面では意味がありませんでした。しかし、それが(そして他人が同じことをする方法である)方法であれば、それでいいです!私はベストプラクティスのアプローチ、歓声より後になった! – crawf
これは、ストレージ(データベース)を抽象化するのがベストプラクティスです。 Webサービスは、アプリケーションに「ユーザー/パスの組み合わせOK」または「無効なログイン」としか応答しません。これに関しては、実際にはプロキシではなく、HTTPでアクセスできるサーバー機能と考えてください; – shapecatcher
いいですね! WebサービスのURLは引き続きアプリ内にありますが、ユーザーの資格情報はPOST経由で送信されます。これは、データベースに直接アクセスするよりも優れています。あなたの洞察に感謝します! – crawf