Controlling information disclosure during application streaming and publishing
AssigneeCitrix Systems, Inc.
InventorMichael Wookey
Life of this patent
Estimating the term…
Abstract
Various aspects as described herein are directed to systems, method, apparatuses, and software for intercepting requests to copy content, paste content, clip content, cut content, or perform a print screen operation, and either allowing the requested operation to occur or preventing the operation depending upon whether the content is sourced from a streamed application or a non-streamed application, and/or depending upon a streamed application-based policy. This may be performed by, for instance, hooking an appropriate function call to the operating system.
Claims16
A method, comprising:
- detecting, by a computing device, a request to obtain a copy of content displayed by a software application that is being executed by the computing device;
- determining, by the computing device, whether the software application is a software application that is streamed to the computing device from a source external to the computing device during local execution of the software application on the computing device;
- setting a global variable to contain either a first value responsive to the software application being determined to be a software application that is streamed or a second value responsive to the software application being determined to be a non-streamed software application;
- and
- selectively either pasting or not pasting, by the computing device in response to a request to paste, the content depending upon whether the global variable contains the first value or the second value.
A method, comprising:
- intercepting, by a computing device, a request directed to a software application for digital rights management (DRM) status of content displayed by the software application that is executing on the computing device;
- determining, by the computing device, whether the software application is a software application that is streamed to the computing device from a source external to the computing device during local execution of the software application on the computing device;
- setting a global variable to contain either a first value responsive to the software application being determined to be a software application that is streamed or a second value responsive to the software application being determined to be a non-streamed software application;
- and
- depending upon whether the software application is determined to be a software application that is streamed to the computing device from a source external to the computing device during local execution of the software application on the computing device, either (1) allowing the software application to respond to the request with a DRM status of the content, or (2) responding to the request that the content is DRM protected.
A non-transitory computer-readable medium storing computer-executable instructions for performing steps, the steps comprising:
- intercepting, by a computing device, a request directed to an operating system of the computing device to obtain a copy of content displayed by a software application that is executing on the computing device;
- determining whether the software application is a software application that is streamed to the computing device from a source external to the computing device during local execution of the software application on the computing device;
- setting a global variable to contain either a first value responsive to the software application being determined to be a software application that is streamed or a second value responsive to the software application being determined to be a non-streamed software application;
- and
- selectively either allowing the operating system to perform a paste operation or preventing the paste operation, depending upon whether the global variable contains the first value or the second value.
A method, comprising:
- detecting, by a computing device, a request to copy content that is displayed on a display of the computing device by a software application that is being locally executed by the computing device;
- determining, by the computing device, whether the software application being executed by the computing device is streamed to the computing device from a source external to the computing device during local execution of the software application on the computing device;
- setting a global variable to contain either a first value responsive to the software application being determined to be a software application that is streamed or a second value responsive to the software application being determined to be a non-streamed software application;
- and
- preventing, by the computing device, pasting of the content responsive to determining that the global variable contains the first value.
Dependencies are inferred from the claim text.