リモート・プロシージャー・コール(RPC)の認証

ユーザーが、Javaメソッドおよびオブジェクトを呼び出すDSEおよびサードパーティのツールでコマンドを実行できるようにします。

DataStax Enterpriseは、Javaオブジェクトおよびメソッドに対するリモート・プロシージャー・コールの認証とロールベース・アクセス制御をサポートしています。

リモート・ホストに指定されているプロシージャのリモート・コールの構文は以下のとおりです。
CALL Object.Method(parameter1, parameter2)

RPCパーミッション

RPCパーミッションはロールベースで、どのロールがどのコマンドを実行できるかを詳細に制御します。CQLコマンドのGRANTおよびREVOKEを使用すると、オブジェクトとメソッドに対するアクセス権を付与したり、取り消したりできます。

DataStax Enterpriseは、RPCパーミッションを付与する以下のCQL構文をcqlshでサポートしています。
GRANT permission ON ALL REMOTE CALLS TO role;
GRANT EXECUTE ON REMOTE OBJECT object TO role;
GRANT EXECUTE ON REMOTE METHOD object.method TO role;
DataStax Enterpriseは、RPCパーミッションを取り消す以下のCQL構文をcqlshでサポートしています。
REVOKE EXECUTE ON ALL REMOTE CALLS FROM role;
REVOKE EXECUTE ON REMOTE OBJECT object FROM role;
REVOKE EXECUTE ON REMOTE METHOD object.method FROM role;
ここで、
  • EXECUTEは、RPCに適用される唯一のパーミッションです。
  • roleは、管理権限を付与または取り消すロールです。

多数のユーザーのパーミッションを管理する場合は、少数の上位のロールを再利用すると管理が大幅に容易になります。