Süper kullanıcı ayrıcalıkları ile bir daemon (Python ile yazılmış) çağırmak için gereken bir GUI uygulaması var. Bunu kullanıcıya şifre sormadan yapmak istiyorum.
Arka plan programı bir komut dosyası olduğundan, SUID bitini doğrudan ayarlayamıyorum. Bunun için bir C sarıcı yazabilirdim, ancak özellikle benim tarafımdaki bir hata sistemin güvenliğinin ciddi şekilde tehlikeye girmesine yol açtığında, tekerleği yeniden icat etmemeyi tercih ederim.
Bu durumda normalde yaptığım /etc/sudoers
şey, kullanıcıların NOPASSWD yönergesini kullanarak kullanıcıların arka plan programını şifre olmadan kök olarak yürütmesine izin veren bir satır eklemektir . Bu komut satırından iyi çalışır. Ancak, bunu GUI'den yaptığımda pkexec
, kullanıcının parolasını soran bir iletişim kutusu açılır. Ubuntu'da, GUI'den sudo
gelen çağrılar bir şekilde müdahale ediliyor gibi görünüyor pkexec
.
Bu konuda temiz bir yol var mı? Gerçekten setuid betiğinin zorluklarıyla uğraşmak istemem.
sudo somecommand
açılan iletişim kutusu bir pkexec
şifre iletişim kutusudur .