データストア(Kotlin)
アクセス権限設定
概要
このページでは、データストアのACL機能を利用して各データのアクセス権限を
会員やロールごとに設定する方法を解説していきます。
データごとのACL設定
アプリ側でACLを設定する
NCMBAclクラスを利用してaclを設定することが可能です。
import com.nifcloud.mbaas.core.NCMBAcl
<省略>
//データの読み込み・検索のみ許可したNCMBAclを作成
val acl = NCMBAcl()
acl.publicReadAccess = true
//オブジェクトにAclを設定
val obj = NCMBObject("TestClass")
obj.setAcl(acl)
// オブジェクトの値を設定
obj.put("key", "value")
obj.save()
上のサンプルコードでは、全会員に対してのACL設定を行っていますが、
会員やロールを対象にACLを設定することも可能です。
val obj = NCMBObject("TestClass")
val userId = "会員のObjectId"
val acl = NCMBAcl()
acl.setUserReadAccess(userId, true)
obj.setAcl(acl)
obj.put("key", "value")
obj.save()
許可権限を設定する場合は、必ずtrue値の設定が必要となります。
false値の設定は反映されません。
一つの権限でもtrue値を設定されますと、他の権限はすべてfalseとなります。
デフォルトACLについてはREST APIにてご確認ください。
管理画面でACLを設定する
管理画面からパーミッションを設定するにはデータストアを開きます。
各レコードの右側にあるパーミッション編集ボタンをクリックします。
パーミッション設定画面が表示されますので、「+新しいパーミッション」ボタンをクリックして、パーミッションを設定してください。
レコードのパーミッションは、各行の左側にあるチェックボックスをクリックし、削除ボタンをクリックすると削除できます。
クラスのACLを設定する
管理画面からの操作のみ、クラス単位でACLを設定することが可能です。
クラスの編集画面で、右上の「パーミッションの設定」ボタンをクリックします。
ポップアップが表示されるので、「+新しいパーミッション」をクリックしてパーミッションの設定を追加してください。
対象を会員やロールに限定することで、パーミッションを一部の会員に限定することが可能です。
クラスのパーミッションは、各行の左側にあるチェックボックスをクリックし、削除ボタンをクリックすると削除できます。
お探しの内容が見つからなかった場合はユーザーコミュニティ
もご活用ください。(回答保証はいたしかねます)
なお、 Expertプラン以上のお客様はテクニカルサポートにてご質問を承らせて頂きます。
推奨画面サイズ1024×768px以上