PythonはIoT、機械学習をはじめ、幅広い分野で使われているプログラミング言語になります。JavaScriptと同様に、覚えておくと利用範囲の広いプログラミング言語といえるでしょう。
そんなPythonとNCMBを組み合わせる際に利用できる、Python SDKを開発しています(非公式)。まだまだ機能は少ないですが、徐々にバージョンアップしていきます。
今回はアクセス権限に関するACLの使い方です。
インストール
インストールはpipコマンドで行います。
pip install NCMB
初期化
初期化処理は次のように行います。
from NCMB.Client import NCMB ncmb = NCMB('YOUR_APPLICATION_KEY', 'YOUR_CLIENT_KEY')
ACLオブジェクトの作成
ACLはNCMBAclオブジェクトになります。 ncmb.Acl()
で呼び出します。
acl = ncmb.Acl()
アクセス権限の設定
アクセス権限は全体(ログイン、非ログイン状態問わず)、ユーザ単位、グループ単位で指定できます。
# 全体 acl.set_public_read_access(true) acl.set_public_write_access(true) # ユーザ単位 user = ncmb.User() acl.set_user_read_access(user, true) acl.set_user_write_access(user, true) # グループ acl.set_role_read_access('admin', true) acl.set_role_write_access('admin', true)
権限を設定したら、任意のオブジェクトに set メソッドでACLを適用します。
obj.set('acl', acl)
コードについて
Python SDKはオープンソース・ソフトウェア(MIT License)になります。GitHub - goofmint/ncmb_py: NCMBのPython SDKですにて公開されています。
まとめ
ACLを使うことで、データストアやファイルストアを安全に保存、利用できるようになります。
Python SDKはまだ機能は少ないですが、IoTや機械学習分野でmBaaSを活用するのに役立つはずです。ぜひ活用してください。