関数と集計リソース
ユーザー定義関数および集計へのアクセスを許可するための構文。
cassandra.yaml
cassandra.yamlファイルの場所は、インストールのタイプによって異なります。パッケージ・インストール | /etc/dse/cassandra/cassandra.yaml |
tarボール・インストール | installation_location/resources/cassandra/conf/cassandra.yaml |
関数の構文は、ユーザー定義の関数と集計に適用されます。ユーザー定義の関数と集計はキースペースにありますが、関数のパーミッションは別のものであり、別々に適用する必要があります。 アクセスは、モデル化階層を使用して制御されます。最上位オブジェクトに権限の付与および取り消しを行うと、すべての祖先に対して同じパーミッションが自動的に適用されます。
関数には以下の階層があります。
構文
関数へのアクセスを制御するには、以下の構文を使用します。
- ALL FUNCTIONSの構文:
GRANT privilege_list ON ALL FUNCTIONS TO role_name;
権限はALL PERMISSIONS、ALTER、CREATE、DROP、EXECUTE - ALL FUNCTIONS IN KEYSPACEの構文:
GRANT privilege_list ON ALL FUNCTIONS IN KEYSPACE keyspace_name TO role_name;
権限はALL PERMISSIONS、ALTER、CREATE、DROP、EXECUTE - FUNCTIONの構文:
GRANT privilege_list ON FUNCTION function_name ( argument_types ) TO role_name;
関数名は完全修飾され、権限はALL PERMISSIONS、ALTER、DROP、EXECUTE
パーミッションの取り消しの構文:
REVOKE permission_list
ON resource
FROM role_name;
パーミッション・マトリックス
ロールに権限が付与されると、ユーザーは対応する操作を実行できます。
privilege_name | resource_name | パーミッション |
---|---|---|
ALL PERMISSIONS | ALL FUNCTIONS | すべてのキースペース内のすべての関数でのすべての操作(ALTER、CREATE、DROP、EXECUTEパーミッション)。 |
ALL PERMISSIONS | ALL FUNCTIONS IN KEYSPACE | 選択したキースペース内のすべての関数でのすべての操作(ALTER、CREATE、DROP、EXECUTE)。 |
ALL PERMISSIONS | FUNCTION | 選択した関数でのすべての操作(ALTER、DROP、EXECUTE)。 |
ALTER | ALL FUNCTIONS | すべてのキースペース内の既存の関数でのCREATE OR REPLACE FUNCTIONおよびCREATE OR REPLACE AGGREGATE。 |
ALTER | ALL FUNCTIONS IN KEYSPACE keyspace_name | 特定のキースペース内の既存の関数でのCREATE OR REPLACE FUNCTIONおよびCREATE OR REPLACE AGGREGATE。 |
ALTER | FUNCTION function_name | 既存の関数でのCREATE OR REPLACE FUNCTIONおよびCREATE OR REPLACE AGGREGATE。 |
CREATE | ALL FUNCTIONS | すべてのキースペース内のCREATE FUNCTIONおよびCREATE AGGREGATE。 |
CREATE | ALL FUNCTIONS IN KEYSPACE keyspace_name | 指定したキースペース内のCREATE FUNCTIONおよびCREATE AGGREGATE。 |
DROP | ALL FUNCTIONS | すべてのキースペース内のDROP FUNCTIONおよびDROP AGGREGATE。 |
DROP | ALL FUNCTIONS IN KEYSPACE keyspace_name | 指定したキースペース内のDROP FUNCTIONおよびDROP AGGREGATE。 |
DROP | FUNCTION function_name | 指定した関数でのDROP FUNCTIONまたはDROP AGGREGATE。 |
EXECUTE | ALL FUNCTIONS | すべてのキースペース内のSELECT、INSERT、およびUPDATEで関数または集計を使用します。関数を含む集約を作成します。 |
EXECUTE | ALL FUNCTIONS IN KEYSPACE keyspace_name | キースペース内のSELECT、INSERT、およびUPDATEで関数または集計を使用します。キースペース内の関数を含む集約を作成します。 |
EXECUTE | FUNCTION function_name | 指定した関数を使用したSELECT、INSERTおよびUPDATEと、CREATE AGGREGATEでの関数の使用。 |