[Spice-devel] Brainstorming help with x11spice on socket permissions across users
Jeremy White
jwhite at codeweavers.com
Tue May 26 13:55:46 UTC 2020
Hi all,
I'm trying to get x11spice and spice-html5, at least as packaged for
Fedora, into a pretty much 'turn key' state.
I've got 3 use cases. The first is user A sharing their current
desktop, either for themselves, or to get help. That case is largely
done, imho, modulo some documentation and perhaps some streamlining.
The second is user A getting access to a new session for themselves. I
don't feel blocked on this case; the work should be straight forward, if
fiddly (I may regret those words; doing a secure 'su' like function out
of apache may be harder than I think).
The 3rd case, however, has me troubled. This is the case that user A
(potentially apache) starts x11spice which then does an xdmcp request to
gdm, and eventually supports a log in by user B. This makes it
challenging to provide a way for user B to launch a spice agent or a
pulseaudio daemon and have it securely connect back to the spice process
started by user A. The approach I've used in the past is to have a
privileged binary use information from an X atom to adjust socket
permissions. But that feels unsatisfying, and it seems to me that this
is an area with a lot of modern thinking that I've largely missed.
As an added complexity, in the ideal case, you have a vdagent running as
user A during the login process, which knows to reap itself and give way
to a vdagent launched by user B.
I was hoping that others would have modern instincts on how to more
correctly implement the third use case. Clue bats or other ideas welcome.
Cheers,
Jeremy
More information about the Spice-devel
mailing list