我尝试使用基于Web的SPARQL endpoints (http://localhost:8890/sparql/)在Virtuoso中为RDF三元组执行 INSERT
语句:
INSERT DATA
{
GRAPH <http://my.graph>
{
<http://test.com/someid> <http://namespace.ref#someVar> 123
}
}
但我明白了
Virtuoso 42000错误SR186:安全:无权执行具有用户ID 107,组ID 107的过程DB.DBA.SPARQL_INSERT_DICT_CONTENT
我能够通过我的DB编辑器运行相同的语句,该编辑器使用 DBA
登录端口 1111
上的JDBC驱动程序 .
在我通过端口 1111
作为 DBA
运行以下后,Web界面/服务插入成功:
grant execute on DB.DBA.SPARQL_INSERT_DICT_CONTENT to "SPARQL";
grant execute on DB.DBA.SPARQL_INSERT_DICT_CONTENT to SPARQL_UPDATE;
但是,我想从用户 SPARQL
撤消这些权限,我理解这些权限与Web界面相关联,并使用摘要式身份验证发送带有提供的用户凭据的HTTP POST
/ PUT
/ DELETE
请求 . 这可能吗?怎么样?我去了this page of the manual但它是空的 .
2 回答
OP的目标在他们最初试图访问的_1541352中进行了讨论 . (更多详细信息在产品网站上,而不是在下面复制 . )
这个程序,我选择here,对我有用:
在系统管理>用户帐户下以dba身份登录,