首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用libvirt的polkit?

如何使用libvirt的polkit?
EN

Server Fault用户
提问于 2016-10-16 18:03:31
回答 1查看 1.6K关注 0票数 1

我刚刚看到了libvirt的polkit参考页面,并创建了以下规则

代码语言:javascript
复制
//content of /etc/polkit-1/rules.d/50-libvirt.rules
polkit.addRule(function(action, subject) {
if (action.id == "org.libvirt.api.domain.getattr" &&
    subject.user == "dravigon") {
      if (action.lookup("connect_driver") == 'QEMU' &&
          action.lookup("domain_name") == 'debian8') {
        return polkit.Result.YES;
      } else {
        return polkit.Result.NO;
      }
}

});

希望限制用户只从qemu/kvm驱动程序访问域debian8。

但这根本没用,有人能说出我哪里出了问题吗?

EN

回答 1

Server Fault用户

回答已采纳

发布于 2016-10-18 17:54:13

刚在弗多拉波尔基特页上找到了他的答案

我必须添加另一个块,似乎只有第二个块没有第一个块是无用的。

代码语言:javascript
复制
// Allow passwordless connection to qemu:///system
polkit.addRule(function(action, subject) {
  if (action.id == "org.libvirt.unix.manage" &&
      subject.user == "MY-USER") {
      return polkit.Result.YES;
  }
});
// Give full access to 'test-day-vm'
polkit.addRule(function(action, subject) {
    if (action.id.indexOf("org.libvirt.api.domain.") == 0 &&
        subject.user == "MY_USER") {
          if (action.lookup("connect_driver") == 'QEMU' &&
              action.lookup("domain_name") == 'test-day-vm') {
            return polkit.Result.YES;
          } else {
            return polkit.Result.NO;
          }
    }
});

参考资料:https://fedoraproject.org/wiki/QA:Testcase_维特_ACL

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/809378

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档