我正在使用APOC 3.3.0.1。
dbms.security.procedures.unrestricted=algo.*, apoc*
不确定为什么我的Neo4j中缺少某些程序。
像 dbms.security.listUsers
dbms.security.changePassword
dbms.showCurrentUser
dbms.security.createUser
dbms.security.deleteUser
以下是我在CALL dbms.procedures()
中列出的dmb"dbms.components" "dbms.components() :: (name :: STRING?, versions :: LIST? OF STRING?, edition :: STRING?)" "List DBMS components and their versions."
"dbms.functions" "dbms.functions() :: (name :: STRING?, signature :: STRING?, description :: STRING?)" "List all user functions in the DBMS."
"dbms.listConfig" "dbms.listConfig(searchString = :: STRING?) :: (name :: STRING?, description :: STRING?, value :: STRING?)" "List the currently active config of Neo4j."
"dbms.procedures" "dbms.procedures() :: (name :: STRING?, signature :: STRING?, description :: STRING?)" "List all procedures in the DBMS."
"dbms.queryJmx" "dbms.queryJmx(query :: STRING?) :: (name :: STRING?, description :: STRING?, attributes :: MAP?)" "Query JMX management data by domain and name. For instance, "org.neo4j:*""
也缺少一些APOC程序。
特别是对于我只有以下程序的apoc.date *
"apoc.date.expire" "apoc.date.expire(node :: NODE?, time :: INTEGER?, timeUnit :: STRING?) :: VOID" "CALL apoc.date.expire(node,time,'time-unit') - expire node in given time by setting :TTL label and `ttl` property"
"apoc.date.expireIn" "apoc.date.expireIn(node :: NODE?, timeDelta :: INTEGER?, timeUnit :: STRING?) :: VOID" "CALL apoc.date.expire.in(node,time,'time-unit') - expire node in given time-delta by setting :TTL label and `ttl` property"
答案 0 :(得分:1)
您引用的安全和用户程序仅在企业版中提供,您无法在社区版本中访问它们。
至于日期,自APOC首次推出以来,已经添加了创建自定义用户功能的能力,并且许多程序(包括大多数日期和其他帮助程序)作为功能更有意义(你可以使用内联,而不需要CALL或YIELD)。
尝试使用CALL dbms.functions()
,您应该会看到您在那里寻找的内容。
您还可以使用CALL apoc.help()
并传递proc或过程名称的字符串部分,如果您无法确定它是程序还是函数,并找出参数和产生的值。< / p>
例如,CALL apoc.help('date')