Hi All,
(Please feel free to advise of appropriate mailing list if you think this
doesn't fit here)
I am looking into supporting CRD for GNOME/wayland. CRD would be leveraging
remote desktop APIs (along with screencast) as exposed by
xdg-desktop-portal{,-gnome}. While experimenting with remote desktop APIs, I
see that for enhanced security, an interactive dialog (relevant code:
https://gitlab.gnome.org/GNOME/xdg-desktop-portal-gnome/-/blob/main/src/screencast.c#L345-349)
is always presented to the user to select sources/devices they want to allow
to be remote controlled. Though this workflow would make perfect sense when a
user is directly connected to the machine and is allowing someone remote to
take control (e.g. to get help from IT) but it is less than ideal for a user
who is trying to access their own machine remotely (e.g. accessing their work
computer from home).
I would like to hear ideas from the GNOME community about how to best support
the latter use case for remote desktop. Is there a secure way to bypass the
dialog/prompt selectively for apps? There seems to be recent support for
restoring the capture streams (if persistence was demanded previously by the
user) using flatpak permission store:
https://gitlab.gnome.org/GNOME/xdg-desktop-portal-gnome/-/merge_requests/14 but
remembering streams for remote desktop session is explicitly disallowed in the
portal frontend
(https://github.com/flatpak/xdg-desktop-portal/blob/master/src/screen-cast.c#L589-L594
-- though this doesn't seem to be GNOME specific). Is it reasonable to extend
the stream restoration support to work for remote desktop sessions as well as
pre-populating the permission store to allow remote desktop session (so that
user intervention can be avoided)? Also, would pre-populating the permission
store work for system installation of CRD or would only work for
flatpak/sandboxed version of the app?
Looking at how other software/systems are supporting screen capture/remote
desktop, we see wlroots/sway allows for configuring the output screen to
capture in a config file
(https://github.com/emersion/xdg-desktop-portal-wlr/blob/master/xdg-desktop-portal-wlr.5.scd#description).
I believe Windows.Graphics.Capture APIs can also allow Win32 apps to capture a
window/screen without user interaction.
Would love to hear thoughts from the community about the best way forward.
Thanks,
Salman
_______________________________________________
desktop-devel-list mailing list
[email protected]
https://mail.gnome.org/mailman/listinfo/desktop-devel-list