例えばJavaScriptからParseのREST APIを呼ぶ場合、API KEYは第三者から参照可能になるので、REST APIでできることを制限しておく必要がある。
新規テーブルを作れないようにする
ParseではClassというけど、テーブルというほうが個人的にわかりやすいので、ここではテーブルということにする。
デフォルトではREST APIからテーブルを作ることができる。これをできないようにするにはParseのダッシュボードでアプリケーションのSettingから「App Permissions」の「Allow client class creation」をOFF
にする。
これでREST API KEYの権限では新規テーブルを作成できなくする。
ダッシュボードのData BrowserやMaster keyの権限では作成可能。
テーブルの権限設定
Data Browserでテーブルを選択してMore
からSet Permissions
を選ぶと、以下の項目ごとにパーミッションを設定できる。
- Get
- Find
- Update
- Create
- Delete
- Add fields
デフォルトで全部Public
になっているので、操作されたくないものは権限を変更する。
例えば、大抵のテーブルはユーザーがカラム追加できるのは嬉しくないのでAdd fields
を禁止するとか、データ固定のマスターデータみたいなものはCreate
、Update
、Delete
をできないようにするとか、管理者だけが利用するログみたいなデータはCreate
だけできて他はできないようにするとかが考えられる。
行ごとの権限設定
テーブルのそれぞれの行に対しても権限が設定できて、ACLというカラムに権限のデータを設定する。データを作ったユーザーだけ読み書きできるとか、そういう設定をするときに主に使う。
ACLを設定したデータの作成についてはこちらも参照のこと。