Masking sensitive information while screensharing HTML elements
Abstract
Masking JavaScript in an embedded browser of an application display identifies areas within the embedded browser that are to be masked to a screensharing client, to enable the screensharing client to redact corresponding regions of the application display when the application display is transmitted on a screenshare session. A list of CSS selectors is provided to the masking script identifying HTML elements in the DOM that are to be masked. The masking script determines the locations and sizes of the HTML elements within the embedded browser and reports the masked areas to a screensharing client. The screensharing client correlates the masked areas within the embedded browser to regions of the application display containing the embedded browser. The screensharing client redacts the correlated regions from the screensharing data and does not transmit the redacted regions to prevent information appearing in the redacted regions from being transmitted on the screenshare session.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1. A method of enabling sensitive information to be masked while screensharing HTML elements, comprising the steps of:
loading masking script to an embedded browser, the embedded browser having a DOM containing a set of HTML elements, a display of the embedded browser forming a portion of visual content of an application display;
loading a list of CSS selectors identifying a subset of the HTML elements to be masked;
determining, by the masking script, locations and sizes of the subset of the HTML elements identified by the list of CSS selectors within the display of the embedded browser;
communicating a list of the locations and sizes of the subset of the HTML elements from the masking script to a screenshare client;
redacting corresponding regions of the application display by the screenshare client, when transmitting screensharing data on a screensharing session;
adding a mutation observer to the DOM to detect changes to the DOM;
observing the DOM by the mutation observer to detect changes to the DOM; and
responsive to a detected a change to the DOM:
loading an updated list of CSS selectors;
determining, by the masking script, new locations and sizes of the HTML elements identified by the updated list of CSS selectors within the display of the embedded browser;
communicating the new locations and sizes of the HTML elements from the masking script to the screenshare client; and
redacting new corresponding regions by the screenshare client when transmitting screensharing data on the screensharing session.
2. The method of claim 1 , wherein the locations and sizes of the HTML elements are each specified using two respective (x,y) coordinate values identifying opposite corners of a rectangular area encompassing the respective HTML element within coordinate space of the display of the embedded browser.
3. method of claim 2 , wherein the coordinate values are implemented as (x,y) offset values specifying locations relative to edge of the display of the embedded browser.
4. The method of claim 1 , further comprising:
capturing, by the screensharing client on the screensharing session, screenshare data describing visible content displayed on the application display, at least a portion of the visible content being generated by the embedded browser;
receiving, by the screensharing client, the list of locations and sizes of redacted regions within the embedded browser to be masked on the screensharing session;
correlating the list of locations and sizes within the embedded browser to redacted regions of the application display;
omitting content of the redacted regions, by the screensharing client from the screenshare data, to create redacted screenshare data, the redacted screenshare data describing visible content displayed on the application display outside of the redacted regions of the application display and not describing visible content displayed on the application display inside the redacted regions; and
transmitting the redacted screenshare data on the screensharing session.
5. The method of claim 4 , wherein correlating the list of locations and sizes to regions of the application display comprises determining a location of the embedded browser within the application display.
6. The method of claim 4 , wherein omitting content of the redacted regions comprises capturing screenshare data describing the visible content of the application display, and removing content of the redacted regions from the captured screenshare data.
7. The method of claim 4 , wherein omitting content of the redacted regions comprises determining the locations of the redacted regions, and capturing screenshare data describing the visible content of the application display outside of the redacted regions while not capturing screenshare data describing the visible content of the application display inside the redacted regions.
8. The method of claim 1 , further comprising:
responsive to detecting the change to the DOM, pausing the screenshare task.
9. A method of enabling sensitive information to be masked while screensharing HTML elements. comprising the steps of:
loading masking script to an embedded browser, the embedded browser having a DOM containing a set of HTML elements, a display of the embedded browser forming a portion of visual content of an application display:
loading a list of CSS selectors identifying a subset of the HTML elements to be masked;
determining, by the masking script, locations and sizes of the subset of the HTML elements identified by the list of CSS selectors within the display of the embedded browser;
communicating a list of the locations and sizes of the subset of the HTML elements from the masking script to a screenshare client;
redacting corresponding regions of the application display by the screenshare client, when transmitting screensharing data on a screensharing session;
adding a scroll event handler to the DOM to detect scroll operations in the embedded browser;
observing the embedded browser by the scroll event handler to detect scroll events; and
responsive to detecting occurrence of a scroll event, notifying the screensharing client of an offset value associated with the scroll event.
10. The method of claim 9 , further comprising:
responsive to detecting occurrence of the scroll event, pausing the screensharing task.
11. A method of enabling sensitive information to be masked while screensharing HTML elements, comprising the steps of:
loading masking script to an embedded browser, the embedded browser having a DOM containing a set of HTML elements, a display of the embedded browser forming a portion of visual content of an application display;
loading a list of CSS selectors identifying a subset of the HTML elements to be masked;
determining, by the masking script, locations and sizes of the subset of the HTML elements identified by the list of CSS selectors within the display of the embedded browser;
communicating a list of the locations and sizes of the subset of the HTML elements from the masking script to a screenshare client;
redacting corresponding regions of the application display by the screenshare client, when transmitting screensharing data on a screensharing session;
capturing, by the screensharing client on the screensharing session, screenshare data describing visible content displayed on the application display, at least a portion of the visible content being generated by the embedded browser;
receiving, by the screensharing client, the list of locations and sizes of redacted regions within the embedded browser to be masked on the screensharing session;
correlating the list of locations and sizes within the embedded browser to redacted regions of the application display;
omitting content of the redacted regions, by the screensharing client from the screenshare data, to create redacted screenshare data, the redacted screenshare data describing visible content displayed on the application display outside of the redacted regions of the application display and not describing visible content displayed on the application display inside the redacted regions;
transmitting the redacted screenshare data on the screensharing session;
determining that the embedded browser or CSS selectors has changed; and
responsive to determining that the embedded browser or CSS selectors has changed, pausing the screenshare task.
12. The method of claim 11 , wherein determining that the embedded browser or CSS selectors has changed is implemented by a mutation observer loaded to the embedded browser.
13. The method of claim 11 , further comprising:
observing, by a scroll event handler loaded to the embedded browser, to detect scroll events; and
responsive to detecting occurrence of the scroll event, pausing the screensharing task.
14. A method of enabling sensitive information to be masked while screensharing HTML elements comprising the steps of:
capturing, by a screensharing client on a screensharing session, screenshare data describing visible content displayed on an application display, at least a portion of the visible content being generated by an embedded browser;
receiving, by a screensharing client, a list of redacted regions within the embedded browser to be masked on the screensharing session, the list of redacted regions identifying locations of the redacted regions within the embedded browser using a coordinate system associated with the embedded browser;
correlating the list of locations and sizes within the embedded browser to redacted regions of the application display;
omitting content of the redacted regions by the screensharing client from the screenshare data to create redacted screenshare data, the redacted screenshare data describing visible content displayed on the application display with the exception of the redacted regions of the application display;
transmitting the redacted screenshare data on the screensharing session;
determining that the embedded browser or CSS selectors has changed; and
responsive to determining that the embedded browser or CSS selectors has changed, pausing the screenshare task.
15. The method of claim 14 , wherein correlating the list of locations and sizes to regions of the application display comprises determining a location of the embedded browser within the application display, and combining the location of the embedded browser within the application display with the locations of the redacted regions within the embedded browser.
16. The method of claim 14 , wherein omitting content of the redacted regions comprises capturing screenshare data describing the visible content of the application display, and removing content of the redacted regions from the captured screenshare data.
17. The method of claim 14 , wherein omitting content of the redacted regions comprises determining the locations of the redacted regions, and capturing screenshare data describing the visible content of the application display outside of the redacted regions while not capturing screenshare data describing the visible content of the application display inside the redacted regions.
18. The method of claim 14 , further comprising:
observing, by a scroll event handler loaded to the embedded browser, to detect scroll events; and
responsive to detecting occurrence of the scroll event, pausing the screensharing task.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.