Tenho o NICE-DCV instalado no RHEL-8.10 e como root fazendo um dcv list-sessions
mostra todas as sessões no sistema. Mas se um usuário fizer dcv list-sessions
isso, a saída disso é apenas a sessão dele e não relata nenhuma outra sessão; isso é normal.
Ao escrever código C em um esforço administrativo para embelezar a saída list-session e permitir que todos os usuários vejam quais sessões ativas existem atualmente, tentei setuid no meu /usr/local/bin/dcvlist
executável c e ele mostra como -rwsrwxr-x. 1 root root dcvlist
. Como root, quando executo este dcvlist
executável, recebo a saída esperada de todas as sessões acontecendo, mas como uma conta de usuário regular isso ainda não acontece.
Estou fazendo algo errado com base no que expliquei? Estou enganado pensando que o setuid também deve ser aplicado ao system("dcv list-sessions")
dentro do meu código C, o que parece não ser? Tudo o que meu código C está fazendo é system("dcv list-sessions")
... na verdade, a popen
e então estou apenas reimprimindo essa saída.
Além disso, o dcv
programa aceita muitos parâmetros adicionais, list-sessions
então não quero permitir sudo
acesso para que os usuários o executem como root.