accumulo - 授予所有表的累积用户权限
问题描述
我正在尝试向新创建的用户帐户授予读/写/批量导入表权限。我在 accumulo shell 中使用通配符一次授予所有表的权限没有任何成功。
我尝试了以下授权命令变体:
grant Table.READ -t * ...
grant Table.READ -t '*' ...
grant Table.READ -t \\* ...
grant Table.READ -p * ...
grant Table.READ -p so_* ...
grant Table.* ...
对于 -t/-p 通配符,我收到以下错误之一:
WARN : No tables found that match your criteria
ERROR: java.util.regex.PatternSyntaxException: Dangling meta character '*' near index 0
ERROR: org.apache .accumulo.core.client.TableNotFoundException:表 * 不存在
对于 Table.*,我得到:
错误:java.lang.IllegalArgumentException:没有这样的表权限
我有很多表要授予权限,所以我真的希望通配符是一种选择。
解决方案
通配符目前不是一个选项。授予用户对表的权限应该是一个谨慎的操作。如果您必须授予用户对许多表的权限,您可以创建一个小型 Java 程序来列出这些表并授予权限。
如果事先知道很多表在同一个“安全域”,可以创建一个表“命名空间”,并授予该命名空间中所有表的权限。
如果您必须使用 shell(它不是主要的 API,并且仅提供用于分类和琐碎的小操作),您可以通过创建一个小脚本并将其作为批处理执行来完成。-?
使用or选项运行 shell--help
以查看可以从文件或 STDIN 执行命令的可用方法。
如果您希望提交添加通配符功能的请求,您应该联系开发人员或打开问题或创建新的拉取请求以提出更改。
推荐阅读
- sharepoint-2013 - SharePoint 2013 - 归档自动化?
- python - Discord.py 嵌入消息用户反应
- javascript - 代理在部署到 github 的反应项目中不起作用,但在本地工作
- javascript - 如何在 Django + JavaScript 中逐个元素地显示列表?
- ruby-on-rails - 从 oauth 应用程序登录时,Doorkeeper 授予断言扩展、刷新令牌问题
- javascript - JavaScript - 检查是否使用了对象 URL
- python - 如何使用 numpy 数组评估 Python 中的函数?
- c# - C# Specflow - 未调用 BeforeScenario 挂钩
- excel - 比较两个单词并返回字母差异的数量
- jquery - 事件处理程序未附加到在 forloop 中创建的 div 元素