银河麒麟操作系统"X防截图"功能是在自主创新平台上首次应用,该功能通过增加扩展协议实现,具有窗口截图、全屏截图和区域截图三种截图方式。当窗口显示敏感信息或者隐私数据时,银河麒麟操作系统"X防截图"功能根据上述三种情况可以对截图工具截图时的窗口及内容进行管控,具体包括敏感窗口截图管控、管控窗口查询和防截图功能查询。
银河麒麟操作系统"X防截图"功能基于X扩展框架,通过在X层增加私有协议实现,跟系统使用的窗口管理器、合成器无关,支持管控多窗口及管控窗口最小化等多种场景,具备更好的隐私性、灵活性和可扩展性,支持控制系统上常见的截图软件:kylin-screenshot、imagemagick、flameshot、QT grabWindow、蓝信截图等。
1
关闭窗管
关闭窗口管理器,意味着合成器也被关闭,将两个窗口设置管控,窗口区域全部被屏蔽,窗口标题栏无法显示,截图效果如下图,截图管控功能支持关闭窗口管理器。
关闭窗口管理器并设置管控窗口截图
2
开启窗管,关闭合成
打开窗口管理器,关闭合成器,将两个窗口设置管控,截图效果如下图,截图管控功能支持关闭合成器。
关闭合成器并设置管控窗口时截图
3
开启窗管,开启合成
开启窗口管理器及合成器,管控普通窗口(左)和浏览器窗口(右),浏览器由于标题栏在窗口内部导致无法显示,截图效果如下图。
多窗口管控场景时截图
4
管控浏览器窗口场景
(1) 管控浏览器窗口,当浏览器被显示时截图效果如下图。
浏览器管控场景时截图
(2) 两个浏览器窗口同时存在,设置其中一个被管控,截图效果如下图。
浏览器管控场景截图
(3) 浏览器全屏时被设置管控,截图效果如下图。
浏览器全屏管控场景截图
通过银河麒麟操作系统"X防截图"功能有效的防止了敏感信息的截屏泄露,在特定应用场景中保护了用户隐私数据安全。麒麟软件也将不断根据行业用户需求推出更多的特色功能,助力我国行业数字化转型。
银河麒麟操作系统"X防截图"技术详解
银河麒麟操作系统"X防截图"功能总框架图
银河麒麟操作系统"X防截图"功能基于X框架增加协议实现:防截图协议利用X11 C/S通信机制进行数据传输。client端提供截图接口供应用程序调用,实现应用程序管控设置;server端提供client端接口完成截图软件截图设置。该功能适用性广泛,不受CPU指令限制,适用于任何架构。
防截图协议通过X扩展机制注册到Xserver,在Xserver扩展初始化时,注册防截图协议,协议包括:扩展初始化函数、扩展处理函数。当Xserver收到数据时,会将数据分发给扩展处理函数,由其对数据进行防截图处理。
• X11协议提供三类截图接口:图像获取、基于共享内存的图像获取、区域拷贝,常见基于X实现的截图软件都使用这三个接口进行截图。"X防截图"功能也即对上述三个接口进行管控,分为应用程序管控设置及截图管控处理。
• 应用程序管控设置:作为client端,通过调用Screenshot接口,通知Xserver该应用程序窗口是否被管控。
• 截图管控处理:截图软件调用X11截图接口截图时,Xserver端根据注册的扩展协议判断截取的内容是否属于被管控窗口。
通讯员 | 陈琼、杜式薇
来 源 | 产品与生态中心、 研发中心
审 核 | 市场与政府事务部