`cryptsetup luksOpen` от имени пользователя без полномочий root (через polkit)

534

Я пытаюсь получить cryptsetup luksOpenразрешения, без рута (sudo) через polkit. Я написал это правило:

// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*- polkit.addRule(function(action, subject) { if (subject.isInGroup !== 'wheel') return undefined;  var actionMatches = (action.id === 'org.freedesktop.udisks.luks-unlock');  if (actionMatches) { if (subject.local) if (subject.isInGroup("wheel")) return polkit.Result.YES; else return 'auth_admin'; }  return undefined; }); 

Что должно позволить всем пользователям, которые являются локальными и находящимися в группе колес, делать «org.freedesktop.udisks.luks-unlock». Но когда я запускаю, pkaction -a org.freedesktop.udisks.luks-unlockя получаю сообщение об ошибке, что действие не указано в списке. Я сохранил правило в /etc/polkit-1/rules.d/, я использую Fedora и сделал restorecon -Rв папке polkit, чтобы убедиться, что применяются метки SELinux. journalctl -eu polkit.serviceне отображает ошибок, при перезапуске polkit, а также не во время работы pkexec --user $user cryptsetup -v luksOpen $crypted_container $preferred_mount_name. Выполнение этой команды также приводит к ошибкам разрешения. Какие-либо предложения?

1
Это, вероятно, принадлежит суперпользователю SE. Peter Harmann 5 лет назад 0

0 ответов на вопрос

Похожие вопросы