Railsでアプリ開発をしていてセキュリティ観点から気になった点があったので相談させていただきたいです。
前提
クライアントを管理する管理画面を作ろうとしています。
client table id name email
RESTな設計でいくと
ruby
1/clients #一覧取得 2/client/1 #id=1のclientの詳細画面 3/client/new #新規作成画面 4/client/create #新規作成 5/client/1/edit #id=1のclientの編集画面 6/client/1/update #id=1のclientの更新
となると思います。
ここで疑問に思ったのが、idをauto incrementとすると、
外部からURLの推測が容易だと思います。
すると、セキュリティ上良くないのではと疑問がわきました。
もちろん管理画面の編集者用のアカウントを発行し、ログイン認証を行いますが、
以下のような対応も行ったほうがいいのでしょうか?
また以下はRESTの原則から外れるのでしょうか?
client tableにランダムに生成した8文字をclient_keyのようなcolumnを追加し、
/client/:client_key
のようなurl設計にする。
回答1件
あなたの回答
tips
プレビュー