Permissions 如何在Virtuoso中编写SPARQL权限授予脚本

Permissions 如何在Virtuoso中编写SPARQL权限授予脚本,permissions,sparql,grant,virtuoso,Permissions,Sparql,Grant,Virtuoso,我需要在脚本中授予权限、加载RDF数据以及插入、修改和删除一些三元组(不是通过Virtuoso导体交互) 我授予Virtuoso版本7.1.0.3207的权限,它运行良好: isql VERBOSE=$VERB ERRORS=stdout ECHO=$VERB "exec=grant execute on DB.DBA.SPARQL_MODIFY_BY_DICT_CONTENTS to \"SPARQL\";" isql VERBOSE=$VERB ERRORS=stdout ECHO=$VE

我需要在脚本中授予权限、加载RDF数据以及插入、修改和删除一些三元组(不是通过Virtuoso导体交互)

我授予Virtuoso版本7.1.0.3207的权限,它运行良好:

isql VERBOSE=$VERB ERRORS=stdout ECHO=$VERB "exec=grant execute on DB.DBA.SPARQL_MODIFY_BY_DICT_CONTENTS to \"SPARQL\";"

isql VERBOSE=$VERB ERRORS=stdout ECHO=$VERB "exec=grant execute on DB.DBA.SPARQL_MODIFY_BY_DICT_CONTENTS to \"SPARQL_UPDATE\";"

isql VERBOSE=$VERB ERRORS=stdout ECHO=$VERB "exec=grant execute on DB.DBA.SPARQL_DELETE_DICT_CONTENT to \"SPARQL\";"

isql VERBOSE=$VERB ERRORS=stdout ECHO=$VERB "exec=grant execute on DB.DBA.SPARQL_DELETE_DICT_CONTENT to \"SPARQL_UPDATE\";"

isql VERBOSE=$VERB ERRORS=stdout ECHO=$VERB "exec=grant execute on DB.DBA.SPARQL_INSERT_DICT_CONTENT to \"SPARQL\";"

isql VERBOSE=$VERB ERRORS=stdout ECHO=$VERB "exec=grant execute on DB.DBA.SPARQL_INSERT_DICT_CONTENT to \"SPARQL_UPDATE\";"

isql VERBOSE=$VERB ERRORS=stdout ECHO=$VERB "exec=grant execute on DB.DBA.L_O_LOOK to \"SPARQL\";"

isql VERBOSE=$VERB ERRORS=stdout ECHO=$VERB "exec=grant execute on DB.DBA.L_O_LOOK to \"SPARQL_UPDATE\";"
但它似乎不适用于版本7.2.4.2.3217 我通过删除三元组得到错误消息

Virtuoso 42000错误CL.:安全性:没有SPARQL\u更新权限使用RDF加载程序

我怎样才能解决这个问题?请帮忙


谢谢,燕

这里的信息有限,我想这可能会解决你的问题--

如果没有,您可以通过或(对于商业版和/或VOS支持合同)通过获得更快的响应(对于开源版)


(免责声明:生产并雇佣我。)

问题的解决方案是授予删除权限:

grant execute on DB.DBA.SPARQL_DELETE_DICT_CONTENT to "SPARQL";
grant execute on DB.DBA.SPARQL_DELETE_DICT_CONTENT to "SPARQL";