Patent ID: 12210654

Throughout the description, similar reference numbers may be used to identify similar elements.

DETAILED DESCRIPTION

It will be readily understood that the components of the embodiments as generally described herein and illustrated in the appended figures could be arranged and designed in a wide variety of different configurations. Thus, the following more detailed description of various embodiments, as represented in the figures, is not intended to limit the scope of the present disclosure, but is merely representative of various embodiments. While the various aspects of the embodiments are presented in drawings, the drawings are not necessarily drawn to scale unless specifically indicated.

The present invention may be embodied in other specific forms without departing from its spirit or essential characteristics. The described embodiments are to be considered in all respects only as illustrative and not restrictive. The scope of the invention is, therefore, indicated by the appended claims rather than by this detailed description. All changes which come within the meaning and range of equivalency of the claims are to be embraced within their scope.

Reference throughout this specification to features, advantages, or similar language does not imply that all of the features and advantages that may be realized with the present invention should be or are in any single embodiment of the invention. Rather, language referring to the features and advantages is understood to mean that a specific feature, advantage, or characteristic described in connection with an embodiment is included in at least one embodiment of the present invention. Thus, discussions of the features and advantages, and similar language, throughout this specification may, but do not necessarily, refer to the same embodiment.

Furthermore, the described features, advantages, and characteristics of the invention may be combined in any suitable manner in one or more embodiments. One skilled in the relevant art will recognize, in light of the description herein, that the invention can be practiced without one or more of the specific features or advantages of a particular embodiment. In other instances, additional features and advantages may be recognized in certain embodiments that may not be present in all embodiments of the invention.

Reference throughout this specification to “one embodiment”, “an embodiment”, or similar language means that a particular feature, structure, or characteristic described in connection with the indicated embodiment is included in at least one embodiment of the present invention. Thus, the phrases “in one embodiment”, “in an embodiment”, and similar language throughout this specification may, but do not necessarily, all refer to the same embodiment.

FIG.1is a high-level block diagram100of a network node101. A computing device in the form of a computer configured to interface with controllers, peripheral devices, and other elements disclosed herein may include one or more processors114, memory102, removable storage115, and non-removable storage116. The memory102may include volatile memory108and/or non-volatile memory109. The network node101may include or have access to a computing environment that includes a variety of transitory and non-transitory computer-readable media such as the volatile memory108, the non-volatile memory109, the removable storage115and the non-removable storage116. Computer storage includes, for example, random access memory (RAM), read only memory (ROM), erasable programmable read-only memory (EPROM) and electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, compact disc read-only memory (CD-ROM), Digital Versatile Disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage, or other magnetic storage devices, or any other medium capable of storing computer-readable instructions as well as data including image data.

The network node101may include, or have access to, a computing environment that includes an input device113, an output device111, and a communications subsystem117. The network node101may operate in a networked environment using the communications subsystem117to connect to one or more remote computers, remote sensors and/or controllers, detection devices, hand-held devices, multi-function devices (MFDs), speakers, mobile devices, tablet devices, mobile phones, Smartphone, or other such devices. The remote computer may also be a personal computer (PC), server, router, network PC, radio frequency identification (RFID) enabled device, a peer device, other common network node, or the like. The communication connection may include a local area network (LAN), a wide area network (WAN), Bluetooth connection, or other networks.

The output device111is most commonly provided as a computer monitor, but may include any output device. The output device111and/or the input device113may include a data collection apparatus associated with the network node101. In addition, the input device113, which commonly includes a computer keyboard and/or pointing device such as a computer mouse, computer track pad, touch screen, or the like, allows a user to select and instruct the network node101. A user interface can be provided using the output device111and the input device113. The output device111may include a display112for displaying data and information for a user, or for interactively displaying a graphical user interface (GUI)110. A GUI is typically responsive of user inputs entered through the input device113and typically displays images and data on the display112.

As described herein, “GUI” generally refers to a type of environment that represents programs, files, options, and so forth by means of graphically displayed icons, menus, and dialog boxes on a computer monitor screen or smart phone screen. A user can interact with the GUI to select and activate such options by directly touching the screen and/or pointing and clicking with the input device113such as, for example, a pointing device such as a mouse, and/or with a keyboard. A particular item can function in the same manner to the user in all applications because the GUI provides standard software routines (e.g., the application module103can include program code in executable instructions, including such software routines) to handle these elements and report the user's actions.

Computer-readable instructions, for example, program code in the application module103, can include or be representative of software routines, software subroutines, software objects, etc. described herein, are stored on a computer-readable medium and are executable by the processor device (also called a processing unit)114of the network node101. The application module103can include computer code such as networking code104, server code105, software defined wide area network (SD-WAN) code106, and Internet Protocol Security (IPSEC) code107. A hard drive, CD-ROM, RAM, Flash Memory, and a Universal Serial Bus (USB) drive are just some examples of articles including a computer-readable medium.

FIG.2is a high-level block diagram of a software system200.FIG.2illustrates a software system200, which may be employed for directing the operation of the data-processing systems such as the network node101. Software applications may be stored in the memory102, on the removable storage115, or on the non-removable storage116, and generally include and/or are associated with a kernel or operating system210and a shell or interface215. One or more application programs may be “loaded” (i.e., transferred from the removable storage115or the non-removable storage116into the memory102) for execution by the network node101. A software application205can include software components225such as software modules, software subroutines, software objects, network code, user application code, server code, user interface (UI) code, SD-WAN code, IPSEC code, SD-WAN measurement code, etc. The software system200can have multiple software applications each containing software components. The network node101can receive user commands and data through the interface215, which can include the input device113, the output device111, and the communications subsystem117accessible by a user220or a remote device230. These inputs may then be acted upon by the network node101in accordance with instructions from the operating system210and/or the software application205and any software components225thereof.

Generally, the software components225can include, but are not limited to, routines, subroutines, software applications, programs, objects, modules, objects (used in object-oriented programs), executable instructions, data structures, etc., that perform particular tasks or implement particular abstract data types and instructions. Moreover, those skilled in the art will appreciate that elements of the disclosed methods and systems may be practiced with other computer system configurations such as, for example, hand-held devices, mobile phones, smartphones, tablet devices, multi-processor systems, microcontrollers, printers, copiers, fax machines, multi-function devices, data networks, microprocessor-based or programmable consumer electronics, networked personal computers, minicomputers, mainframe computers, servers, medical equipment, medical devices, and the like.

Note that the terms “component” and “module” as utilized herein may refer to one of or a collection of routines and data structures that perform a particular task or implements a particular abstract data type. Applications and components may be composed of two parts: an interface, which lists the constants, data types, variables, and routines that can be accessed by other modules or routines; and an implementation, which is typically private (accessible only from within the application or component) and which includes source code that actually implements the routines in the application or component. The terms “application” or “component” may also simply refer to an application such as a computer program designed to assist in the performance of a specific task such as word processing, accounting, inventory management. Components can be built or realized as special purpose hardware components designed to equivalently assist in the performance of a task.

The interface215can include a graphical user interface110that can display results, whereupon a user220or remote device230may supply additional inputs or terminate a particular session. In some embodiments, the operating system210and the GUI110can be implemented in the context of a “windows” system. It can be appreciated, of course, that other types of systems are possible. For example, rather than a traditional “windows” system, other operation systems such as, for example, a real-time operating system (RTOS) more commonly employed in wireless systems may also be employed with respect to the operating system210and the interface215. The software application205can include, for example, the software components225, which can include instructions for carrying out steps or logical operations such as those shown and described herein.

The description herein is presented with respect to embodiments that can be embodied in the context of, or require the use of, a data-processing system such as the network node101, in conjunction with program code in the application module103, in the memory102, the software system200, or the network node101. The disclosed embodiments, however, are not limited to any particular application or any particular environment. Instead, those skilled in the art will find that the system and method of the present invention may be advantageously applied to a variety of system and application software including database management systems, word processors, and the like. Moreover, the present invention may be embodied on a variety of different platforms including Windows, Macintosh, UNIX, LINUX, Android, Arduino, and the like. Therefore, the descriptions of the exemplary embodiments, which follow, are for purposes of illustration and not considered a limitation.

Network nodes101and software systems200can take the form of or run as virtual machines (VMs) or containers that run on physical machines. As discussed here, a VM can be different from a smart contract VM, and the two terms should not be used interchangeably. A VM or container typically supplies an operating environment, appearing to be an operating system, to program code in an application module and software applications205running in the VM or container. A single physical computer can run a collection of VMs and containers. In fact, an entire network data processing system including multitude of network nodes101, LANs and perhaps even WANs or portions thereof can all be virtualized and running within a single computer (or a few computers) running VMs or containers. Those practiced in cloud computing are practiced in the use of VMs, containers, virtualized networks, and related technologies.

In some embodiments, when a user of a client device (e.g., network node101) is browsing the World Wide Web (WWW), loading webpages, displaying webpages, downloading data, uploading data, etc. using applications which involve a browser loading content from remote and/or unsecure sources, the client device (and/or internal networks used by the client device) is subject to consequences such as harmful webpage code, malware infections, cyber-attacks, and the like. To protect the client device from experiencing such consequences, remote browser isolation (RBI) (sometimes referred to as “web isolation” or “browser isolation”) may be implemented to help the user avoid potentially risky activity.

As described herein, “RBI” may be defined as a technology that separates browsing activity from a client device by hosting and running a browsing application at a secure location (e.g., a designated server, a remote server, a remote cloud, a remote cloud-based container, etc.), such that the secure location renders and pushes the browsing application or a Uniform Resource Locator (URL) to the client device. Secure remote browsing is enabled by a security operations administrator, or an information technology (IT) administrator created configuration of a predefined user policy or a custom defined user policy (e.g., block uploads, preview downloads, read only, etc.) for an application, a URL, and/or a user. The secure location may be an RBI server that is connected to the client device and/or to the internet, and that protects the browsing, the client device, and/or the internal network(s) from cyber threats. As described herein, browsing that is protected by RBI may be referred to as “RBI protected browsing”, and may be displayed via a GUI of the client device. In an embodiment, the GUI of the client device may display the RBI protected browsing via a browser (e.g., GOOGLE CHROME, SAFARI, FIREFOX, INTERNET EXPLORER, etc.) that a user can use to access the WWW and that allows the user to search and view information via the internet. As described herein, a browser that displays RBI protected browsing may be referred to as an “RBI protected browser”. In some embodiments, the RBI protected browser may include a combination of websites or webpages that are protected by RBI protected browsing and that are not protected by the RBI protected browsing.

It is important for a user to be cognizant of the RBI protected browsing because the RBI protected browsing may involve certain limitations and/or restrictions that protect the user from being subject to cyber threats. However, conventional RBI protected browsers may not clearly indicate (to a user) that RBI protected browsing or restrictions associated with the RBI protected browsing are being triggered at a client device. Consequently, the user may be unaware of whether or not a current browsing session is protected by RBI protected browsing, which may expose the client device to harmful browsing activity.

In accordance with an embodiment of the invention, a non-transitory computer readable medium that includes instructions to be executed in a computer system, where the instructions when executed in the computer system perform a method that includes displaying an RBI protected browser, displaying a border at least partially around the RBI protected browser, and displaying a security feature within the border, where the border and the security feature indicate to a user that the RBI protected browser is RBI protected. In an embodiment, the border is a colored border, and the security feature is security text, an icon, and/or a branding that is indicative of the security feature. In some embodiments, the security feature is displayed using a repeating pattern along the border.

By displaying an RBI protected browser with a border at least partially around the RBI protected browser and a security feature within the border, a user is readily aware of the status of RBI protected browsing. As such, a client device that displays an RBI protected browser with a border and a security feature within the border keeps the user informed of the RBI status in an unobstructive but easily recognizable manner. The displayed border and security feature do not interfere with browsing content of the RBI protected browser and do not require the user to check RBI status in a tool bar (e.g., a dropdown menu). In addition, the displayed border and security feature enable real-time notification of the RBI status to a user in a manner that is unobstructive to the content that is of primary interest to the user. Therefore, the RBI status may be known to the user with minimal eye movement and no cursor navigation by the user, all of which can greatly improve the user experience.

As described herein, a “border” may be a band or a strip that is located at or near an edge of one or more components of an RBI protected browser. Examples of the components of the RBI protected browser include, but are not limited to, a display window, an address bar, and a title bar. In some embodiments, the border may be partially around the RBI protected browser and/or the components of the RBI protected browser, such that a border that is partially around the RBI protected browser and/or its components may be referred to as a “partial border”. As described herein, “partially around” implies that the border may be along (e.g., adjacent to, colinear with, in parallel with, etc.) one or more edges (e.g., one to four edges of a rectangular browser window) of the RBI protected browser and/or its components. In some embodiments, the border is a colored border, such that the colored border may display one or more colors (e.g., green, red, blue, yellow, orange, etc.).

As described herein, a “security feature” may be security text, an icon, and/or a branding that is displayed in or near the border. The security text may be a security-related word or phrase that may indicate a security profile or a security policy that a user is subject to during RBI protected browsing. As an example, the security profile or the security policy may be a predetermined set of restrictions that are applied during the RBI protected browsing (e.g., remote browser protection, read only, preview downloads, allow downloads, block uploads, full interaction, and the like). Examples of the icon include a shield, a lock, a checkmark, another security-related icon, or a combination thereof. Examples of the branding include a company logo, a company marker, or other company indicator. In some embodiments, the security feature is displayed in a repeating pattern along the border, such that the security feature is repeated along the border.

FIG.3depicts a high-level diagram of an RBI protected system300. In an embodiment, the RBI protected system300includes a client device302, an RBI server304, and internet306. The client device302may include the network node101and the software system200, and may be a laptop, a mobile device, a desktop, or the like. In addition, the client device302includes a user interface (e.g., a keyboard and/or a mouse) and a display308for interactively displaying a GUI. The RBI server304enables RBI protected browsing at the client device302and may be a remote server, a remote cloud, a remote cloud-based container, or the like.

The client device302is connected to the RBI server304via a first connection310-1, and the RBI server304is connected to the internet306via a second connection310-2. The first connection310-1and/or the second connection310-2may be a wireless connection (e.g., wireless LAN, wireless WAN, Bluetooth, etc.), a wired connection (e.g., ethernet), or a combination thereof. Although not shown, the client device302may also be connected to the internet306.

When the client device302initiates RBI protected browsing via the RBI server304, the RBI server304pushes the RBI protected browsing to the client device302(shown by dashed arrow312). Once the client device302receives the pushed RBI protected browsing from the RBI server304, the client device302renders the RBI protected browsing and displays an RBI protected browser, a border at least partially around the RBI protected browser, and a security feature within the border via a GUI (shown by “RBI Protected Browsing”).

FIG.4depicts a high-level diagram of communications within an RBI protected system400. In the embodiment ofFIG.4, the RBI protected system400includes a client device402, an RBI server404, and internet406as described with reference toFIG.3. The client device402, the RBI server404, and/or the internet406communicate to establish connection, initiate RBI protected browsing, and display an RBI protected browser that corresponds to the RBI protected browsing. In an embodiment, the client device402, the RBI server404, and the internet406communicate using a wireless connection, a wired connection, or a combination thereof.

The client device402connects to the RBI server404to establish a connection at step408. In an embodiment, the client device402connects to the RBI server404by transmitting a connection request that is accepted by the RBI server404, or by automatically connecting when the client device and the RBI server are within range of each other.

The client device402then initiates RBI protected browsing via the RBI server404at step410. In some embodiments, initiating the RBI protected browsing involves the client device402transmitting, to the RBI server404, an instruction to provide computer readable code that includes instructions to display the RBI protected browsing via a GUI of the client device. In some embodiments, initiating the RBI protected browsing involves the client device402transmitting, to the RBI server404, an instruction to provide computer readable code that includes instructions to indicate the RBI protected browsing by a partial border and a security feature.

The RBI server404then retrieves data that corresponds to the RBI protected browsing using the internet406. In an embodiment, retrieving the data involves the RBI server404requesting the data from the internet406at step412, and receiving a response that includes the requested data at step414. In such an embodiment, the RBI server404loads and executes the data collected during the RBI protected browsing.

The RBI server404then pushes the RBI protected browsing to the client device402at step416. In some embodiments, pushing the RBI protected browsing to the client device402involves the client device402receiving, from the RBI server404, the computer readable code that includes instructions to display the RBI protected browsing via the GUI of the client device. In some embodiments, pushing the RBI protected browsing to the client device402involves the client device402receiving, from the RBI server404, the computer readable code that includes instructions to indicate the RBI protected browsing by at least the partial border and the security feature. As an example, the computer readable code may be received via one or more packets transmitted by the RBI server404.

Once the client device402receives the pushed RBI protected browsing from the RBI server404, the client device402renders the RBI protected browsing and displays the RBI protected browsing via its GUI. In an embodiment, the RBI protected browsing is displayed by an RBI protected browser.

Examples of an RBI protected browser with a border and a security feature are described in further detail with reference toFIGS.5-13.

FIG.5depicts an example of an RBI protected browser500, a border502, and a security feature504within the border502. In the embodiment depicted inFIG.5, the RBI protected browser500includes various functional parts that allow users to perform corresponding functional operations (e.g., access a hyperlink, navigate a web page, download data, etc.). For example, the RBI protected browser500includes a display window506, an address bar508, a title bar510, a close tab button512, a new tab button514, a back button516, a forward button518, a refresh button520, a homepage button522, a menu button524, a scroll bar526, a close browser button528, a minimize browser button530, and a maximize browser button532.

The display window506is an area where a website or a page (e.g., web page) can be viewed and navigated by a user to access hyperlinks, downloads, or different pages of a website. The address bar508displays a URL, or a website address of the page shown in the display window506and can be used to search and/or to navigate to different URLs or websites. The title bar510displays a title of the URL, or the website shown in the display window506and the address bar508. The close tab button512can be used to close the current page from the RBI protected browser if more than one page is open, or to close the RBI protected browser if (only) one page is displayed. The new tab button514can be used to open a new page, where the new page can be subsequently displayed in the display window506and a title of the new page is shown in an additional title bar (not shown).

The back button516can be used to go back to a previous page viewed by the user and the forward button518can be used to go forward to a page viewed before the current page shown in the display window506. The refresh button520can be used to refresh the page shown in the display window506and the address bar508. The homepage button522can be used to navigate to a preset homepage (e.g., https://www.google.com/, https://www.yahoo.com/, https://www.bing.com/, etc.). The menu button524can be used to access settings, browser history, bookmarks, downloads, etc. and/or to zoom in or out on the page in the display window506, to open new tabs or windows, to print, etc. The scroll bar526can be used to navigate up or down on the page shown in the display window506. The close browser button528, the minimize browser button530, and the maximize browser button532can be used by the user to close the RBI protected browser500, minimize the RBI protected browser500, and maximize the RBI protected browser500, respectively.

In an embodiment, the border502is displayed around outer edges of the RBI protected browser500, such that the border502surrounds a perimeter of the RBI protected browser500. In some embodiments, the border502includes an inner border (e.g., an inner edge of the border502) that is directly adjacent to the outer edges of the RBI protected browser500and an outer border (e.g., an outer edge of the border502) that surrounds the inner border. In such an embodiment, the inner border is colinear with the outer edges of the RBI protected browser500. As an example, the border502has a thickness that is at least humanly visible (e.g., at least 1 pixel (px)) extending outward from the RBI protected browser500, and has squared corners or rounded corners (not shown). In some embodiments, the border502is displayed by a color (shown by diagonal lines), such that the color may be green, red, blue, yellow, orange, etc. In some embodiments, the border502may be displayed by a combination of two or more colors (e.g., black and yellow, green and white, green and black, etc.), such that the colors may be alternated in a repeating pattern within the border, or such that an inner portion (e.g., inner edge(s)) is colored, and an outer portion (e.g., outer edge(s)) is not colored. In some embodiments, the border502may be transparent, translucent, and/or opaque.

In an embodiment, the security feature504is displayed within the border502. The security feature504may be displayed using a repeating pattern along the border502, such that more than one security feature is displayed. For example, the security feature504is repeated around the outer edges of the RBI protected browser500, such that the security feature504is duplicated and surrounds the perimeter of the RBI protected browser500. In some embodiments, the security features may be separated by a distance that is at least humanly visible (e.g., at least 1 px) and may be separated from the inner border and the outer border of the border502by a distance that is at least humanly visible (e.g., at 1 px). In some embodiments, the security features may be transparent, translucent, and/or opaque. Although the border502is shown as including ten security features, the border502may also include less than ten or more than ten security features.

FIG.6depicts another example of an RBI protected browser600, a border602, and a security feature604within the border602. The RBI protected browser600includes the display window606, the address bar608, the title bar610, the close tab button612, the new tab button614, the back button616, the forward button618, the refresh button620, the homepage button622, the menu button624, the scroll bar626, the close browser button628, the minimize browser button630, and the maximize browser button632, the border602that includes the inner border and the outer border, and the security feature604that is repeated along the border602as described with reference toFIG.5.

In contrast toFIG.5, the border602shown inFIG.6is displayed around outer edges of the display window606of the RBI protected browser600, such that the border602surrounds a perimeter of the display window606. In some embodiments, the inner border (e.g., inner border edges) of the border602is directly adjacent to the outer edges of the display window606and the outer border (e.g., outer border edges) is directly adjacent to three outer edges (e.g., left edge, right edge, and bottom edge) of the RBI protected browser600. In such an embodiment, the inner border is colinear with the outer edges of the display window606and the outer border is colinear with the three outer edges of the RBI protected browser600.

Although not shown, in some embodiments, the border602may be an overlay or a watermark on the display window606, such that the border602is transparent or translucent, and such that the display window606extends to the edges of the RBI protected browser (similar to the display window506shown inFIG.5). Additionally, although the border602is shown as including eight security features, the border602may include less than eight or more than eight security features.

FIG.7depicts another example of an RBI protected browser700, a border702, and a security feature704within the border702. The RBI protected browser700includes the display window706, the address bar708, the title bar710, the close tab button712, the new tab button714, the back button716, the forward button718, the refresh button720, the homepage button722, the menu button724, the scroll bar726, the close browser button728, the minimize browser button730, and the maximize browser button732, the border702that includes the inner border and the outer border, and the security feature704that is repeated along the border702as described with reference toFIG.5.

In contrast toFIG.5, the border702shown inFIG.7is displayed partially around the RBI protected browser700, such that the border702is a partial border displayed along a top edge of the RBI protected browser700. In some embodiments, the inner border (e.g., bottom border edge) of the border702is directly adjacent to an outer edge (e.g., the top edge) of the RBI protected browser700, such that the inner border is colinear with the outer edge of the RBI protected browser700. Although the border702is shown along the top edge of the RBI protected browser700, the border702may also be along the left edge of the RBI protected browser, the right edge of the RBI protected browser, the bottom edge of the RBI protected browser, or a combination thereof. Additionally, although the border702is shown as including three security features, the border702may include less than three or more than three security features.

FIG.8depicts another example of an RBI protected browser800, a border802, and a security feature804within the border802. The RBI protected browser800includes the display window806, the address bar808, the title bar810, the close tab button812, the new tab button814, the back button816, the forward button818, the refresh button820, the homepage button822, the menu button824, the scroll bar826, the close browser button828, the minimize browser button830, and the maximize browser button832, the border802that includes the inner border and the outer border, and the security feature804that is repeated along the border802as described with reference toFIG.7.

In contrast toFIG.7, the border802shown inFIG.8is displayed partially around the display window806of the RBI protected browser800, such that the border802is a partial border displayed along a top edge of the display window806. In some embodiments, the inner border (e.g., bottom border edge) of the border802is directly adjacent to an outer edge (e.g., the top edge) of the display window806, such that the inner border is colinear with the outer edge of the display window806.

Although not shown, in some embodiments, the border802may be an overlay or a watermark on the display window806, such that the border802is transparent or translucent, and such that the display window806extends to the edges of the RBI protected browser (similar to the display window806shown inFIG.5). Additionally, although the border802is shown along the top edge of the display window806, the border802may also be along the left edge of the display window, the right edge of the display window, the bottom edge of the display window, or a combination thereof.

FIG.9depicts another example of an RBI protected browser900, a border902, and a security feature904within the border902. The RBI protected browser900includes the display window906, the address bar908, the title bar910, the close tab button912, the new tab button914, the back button916, the forward button918, the refresh button920, the homepage button922, the menu button924, the scroll bar926, the close browser button928, the minimize browser button930, and the maximize browser button932, the border902that includes the inner border and the outer border, and the security feature904that is repeated along the border902as described with reference toFIG.7.

In contrast toFIG.7, the security feature904within the border902shown inFIG.9includes security feature border902-1, an icon904-2, and branding904-3, such that the security feature904-1, the icon904-2, and the branding904-3are repeated in a repeating pattern along the border902. The security feature904-1may indicate RBI protected browsing, such that the security text may indicate a security profile and/or a security policy that a user is subject to during the RBI protected browsing.

Examples of the security feature904-1include, but are not limited to, “remote browser protection”, “read only”, “preview downloads”, “allow downloads”, “block uploads”, “full interaction”, or a combination thereof. Examples of the icon904-2include, but are not limited to, a shield, a lock, a checkmark, a security indicating icon, or a combination thereof. Examples of the branding904-3include, but are not limited to, a company logo, a company marker, or another company indicator. In some embodiments, the security feature904-1, the icon904-2, and the branding904-3may be transparent, translucent, and/or opaque.

Although not shown, in some embodiments, the security feature904includes a combination of the security feature904-1, the icon904-2, and/or the branding904-3. As an example, the security feature904may include the security feature904-1and the icon904-2without the branding904-3, the icon904-2and the branding904-3without the security feature904-1, the security feature904-1and the branding904-3without the icon904-2, etc. As another example, the security feature904includes varying numbers of the security feature904-1, the icon904-2, and/or the branding904-3, such that the security feature904may include two icons, one security text, and zero branding, two brandings, one security text, and one icon, etc. Additionally, although the security feature904is shown as including the security feature904-1, the icon904-2, and the branding904-3in a particular order, the security feature904-1, the icon904-2, and the branding904-3are not limited to the particular order shown inFIG.9.

FIG.10depicts another example of an RBI protected browser1000, a border1002, and a security feature1004within the border1002. The RBI protected browser1000includes the display window1006, the address bar1008, the title bar1010, the close tab button1012, the new tab button1014, the back button1016, the forward button1018, the refresh button1020, the homepage button1022, the menu button1024, the scroll bar1026, the close browser button1028, the minimize browser button1030, and the maximize browser button1032, the border1002that includes the inner border and the outer border, and the security feature1004that includes the security feature1004-1, the icon1004-2, and the branding1004-3and that is repeated within the border1002as described with reference toFIG.9.

In contrast toFIG.9, the border1002shown inFIG.10is displayed partially around the display window1006of the RBI protected browser1000similarly as described with reference toFIG.8.

FIG.11depicts another example of an RBI protected browser1100, a border1102, and a security feature1104within the border1102. The RBI protected browser1100includes the display window1106, the address bar1108, the title bar1110, the close tab button1112, the new tab button1114, the back button1116, the forward button1118, the refresh button1120, the homepage button1122, the menu button1124, the scroll bar1126, the close browser button1128, the minimize browser button1130, and the maximize browser button1132, the border1102that includes the inner border and the outer border, and the security feature1104that is repeated along the border1102as described with reference toFIG.5.

In contrast toFIG.5, the security feature1104shown inFIG.11includes the security feature1104-1, the icon1104-2, and the branding1104-3similarly as described with reference toFIG.9.

FIG.12depicts another example of an RBI protected browser1200, a border1202, and a security feature1204within the border1202. The RBI protected browser1200includes the display window1206, the address bar1208, the title bar1210, the close tab button1212, the new tab button1214, the back button1216, the forward button1218, the refresh button1220, the homepage button1222, the menu button1224, the scroll bar1226, the close browser button1228, the minimize browser button1230, and the maximize browser button1232, the border1202that includes the inner border and the outer border, and the security feature1204that is repeated along the border1202as described with reference toFIG.6.

In contrast toFIG.6, the security feature1204shown inFIG.12includes the security feature1204-1, the icon1204-2, and the branding1204-3similarly as described with reference toFIG.9.

FIG.13depicts another example of an RBI protected browser1300, a border, and a security feature1304within the border. The RBI protected browser1300includes the display window1306, the address bar1308, the title bar1310, the close tab button1312, the new tab button1314, the back button1316, the forward button1318, the refresh button1320, the homepage button1322, the menu button1324, the scroll bar1326, the close browser button1328, the minimize browser button1330, and the maximize browser button1332, the border that includes an inner border1302-1and an outer border1302-2, and the security feature1304that includes the security feature1304-1, the icon1304-2, and the branding1304-3and that is repeated within the border as described with reference toFIG.12.

In contrast toFIG.12, the inner border1302-1and the outer border1302-2shown inFIG.13are around the display window1306and the RBI protected browser1300, respectively. The inner border1302-1is indicated by the security feature1304that includes the security feature1304-1, the icon1304-2, and the branding1304-3and the outer border1302-2is a colored border (shown by diagonal lines). In an embodiment, the inner border1302-1is directly adjacent to the outer edges of the display window1306and the outer border1302-2is directly adjacent to the outer edges of the RBI protected browser1300. In such an embodiment, the inner border1302-1and the outer border1302-2are colinear along three edges (e.g., left edge, right edge, and bottom edge) of the RBI protected browser1300.

Although not shown, in some embodiments, the inner border1302-1is also a colored border. Additionally, although the inner border1302-1is indicated by the security features and the outer border1302-2is a colored border, in some embodiments, the inner border is a colored border, and the outer border is indicated by the security features. In some embodiments, the outer border is partially around the RBI protected browser1300and the inner border is partially around the display window1306(similarly as described with reference toFIG.7andFIG.8). In some embodiments, the outer border is around the RBI protected browser1300and the inner border is around (or partially around) the address bar1308and/or the title bar1310.

In some embodiments, RBI protected browsing triggers RBI protected browsing actions. Examples of the RBI protected browsing actions include, but are not limited to, remote browser protection, read only, preview downloads, allow downloads, block uploads, full interaction, or a combination thereof. The RBI protected browsing action(s) may be indicated and/or displayed via a security feature of an RBI protected browser. For example, the RBI protected browsing action(s) indicated and/or displayed by security text and/or an icon included in the security feature.

In an embodiment, when a user of a client device triggers an RBI protected browsing action during RBI protected browsing, an indication of the RBI protected browsing action is displayed via a security feature of an RBI protected browser. For example, if uploads are blocked during RBI protected browsing, and the user attempts to upload content, then the “block uploads” RBI protected browsing action is indicated by the displayed security feature.

In another embodiment, when a user of a client device triggers an RBI protected browsing action during RBI protected browsing, the RBI protected browsing action is blocked, and the blocked RBI protected browsing action is indicated by the GUI of the client device. For example, if uploads are blocked during RBI protected browsing, and the user attempts to upload content, then the upload is blocked, and the blocked RBI protected browsing action is indicated by the GUI of the client device.

In some embodiments, a first security feature is displayed within the border as the security feature that indicates the RBI protected browsing, an RBI protected browsing action is triggered, where the RBI protected browsing action is triggered by the RBI protected browsing, and a second security feature is displayed within the border as the security feature that indicates the RBI protected browsing action. In such an embodiment, the security feature changes from the first security feature to the second security feature when the RBI protected browsing action is triggered.

In some embodiments, a first security feature is displayed within the border as the security feature that indicates the RBI protected browsing, a block uploads RBI protected browsing action is triggered, where the block uploads RBI protected browsing action is triggered by the RBI protected browsing, and a second security feature is displayed within the border as the security feature that indicates the block uploads RBI protected browsing action.

In some embodiments, a first security feature is displayed within the border as the security feature that indicates the RBI protected browsing, a read only RBI protected browsing action is triggered, where the read only RBI protected browsing action is triggered by the RBI protected browsing, and a second security feature is displayed within the border as the security feature that indicates the read only RBI protected browsing action.

In some embodiments, a first security feature is displayed within the border as the security feature that indicates the RBI protected browsing, a preview downloads RBI protected browsing action is triggered, where the preview downloads RBI protected browsing action is triggered by the RBI protected browsing, and a second security feature is displayed within the border as the security feature that indicates the preview downloads RBI protected browsing action.

In some embodiments, RBI protected browsing action(s) may be indicated by a dynamic security feature and/or a dynamic border. As described herein, a “dynamic security feature” may be a security feature that changes (e.g., from a first security feature to a second security feature, from a first iconographic visualization to a second iconographic visualization, from a first font typeface to a second font typeface, from a first font size to a second font size, etc.) when an RBI protected browsing action is triggered. As described herein, a “dynamic border” may be a border that changes (e.g., from a first color to a second color or from a first iconographic visualization to a second iconographic visualization) when an RBI protected browsing action is triggered. In some embodiments, after an RBI protected browsing action is triggered, different RBI protected browsing actions may be triggered by the RBI protected browsing. For example, a first set of RBI protected browsing actions are changed to a second set of RBI protected browsing actions, such that the RBI protected browsing is subject to different protection.

Examples of an RBI protected browser with a dynamic security feature are described in further detail with reference toFIG.14AandFIG.14B.

FIG.14Adepicts an example of an RBI protected browser1400before an RBI protected browsing action is triggered. The RBI protected browser1400includes the display window1406, the address bar1408, the title bar1410, the close tab button1412, the new tab button1414, the back button1416, the forward button1418, the refresh button1420, the homepage button1422, the menu button1424, the scroll bar1426, the close browser button1428, the minimize browser button1430, and the maximize browser button1432, the border1402that includes the inner border and the outer border, and the security feature1404that is repeated along the border1402as described with reference toFIG.5.

In the embodiment ofFIG.14A, the security feature1404displays security text (shown by “Remote Browser Protection”) within the border1402during RBI protected browsing. In such an embodiment, the security feature1404may be referred to as a first security feature and may indicate the RBI protected browsing. In an embodiment, RBI protected browsing actions (e.g., remote browser protection, read only, preview downloads, allow downloads, block uploads, full interaction, etc.) may be triggered by the RBI protected browsing and may protect a client device from performing the RBI protected browsing action(s). The RBI protected browsing actions may be triggered, for example, by a user. When one or more of the RBI protected browsing actions is triggered, the RBI protected browsing action may be blocked, indicated, and/or displayed. The RBI protected browser1400may indicate and/or display the RBI protected browsing action via the security feature1404and/or the border1402.

Although not shown, the security feature1404may also include an icon, branding, or a combination thereof as described with reference toFIG.11. In addition, the security feature1404may be implemented in the RBI protected browsers shown inFIGS.6-13.

FIG.14Bdepicts an example of the RBI protected browser1400after the RBI protected browsing action is triggered. The RBI protected browser1400includes the display window1406, the address bar1408, the title bar1410, the close tab button1412, the new tab button1414, the back button1416, the forward button1418, the refresh button1420, the homepage button1422, the menu button1424, the scroll bar1426, the close browser button1428, the minimize browser button1430, and the maximize browser button1432, the border1402that includes the inner border and the outer border, and the security feature1404that is repeated along the border1402as described with reference toFIG.14A.

In contrast toFIG.14A, the security feature1404shown inFIG.14Bdisplays changed security text (shown by “Upload Blocked”) within the border1402. In an embodiment, the security feature1404changes after the RBI protected browsing action in triggered. In such an embodiment, when the security feature1404(e.g., security text, branding, and/or icon) changes, the security feature1404may be referred to as a second security feature. By changing the first security feature to the second security feature when the RBI protected browsing action is triggered, the RBI protected browser displays an indication of the RBI protected browsing action to the user.

Although not shown, other examples of displaying the indication of the RBI protected browsing action via the border or the security feature may include changing a color of part (or all) of the border, flashing the color of the border, displaying a pop-up security feature message, changing a color of a hyperlink corresponding to the RBI protected browsing action, changing font size/color, etc. In addition, other examples of displaying the indication of the RBI protected browsing action may include sliding the security feature in/out of the border or RBI protected browser, or having the security feature appear/disappear from the border or the RBI protected browser.

Examples of the RBI protected browsers shown inFIGS.11-13are described in further detail with reference toFIGS.15-19.

FIG.15depicts an example of the RBI protected browser1500shown inFIG.11. In the embodiment depicted inFIG.15, the RBI protected browser1500displays a border1502and a security feature1504that is displayed using a repeating pattern along the border1502. The security feature1504includes branding (shown by “Protected by Versa Networks”), security text (shown by “Remote Browser Protection”), and an icon (shown by a shield with a checkmark).

FIG.16depicts an example of the RBI protected browser1600shown inFIG.12. In the embodiment depicted inFIG.16, the RBI protected browser1600displays a border and a security feature1604. The border includes an inner border1602-1that is a colored border and that is around a display window of the RBI protected browser1600, and an outer border1602-2that is indicated by the security feature1604that is repeated in a repeating pattern and that is around the inner border1602-1. The security feature1604includes branding (shown by “Protected by Versa Networks”), security text (shown by “Remote Browser Protection”), and an icon (shown by a shield with a checkmark).

FIG.17depicts another example of the RBI protected browser1700shown inFIG.12. In the embodiment ofFIG.17, the RBI protected browser1700displays the border that includes the inner border1702-1and the outer border1702-2, and the security feature1704that is repeated in the repeating pattern as described with reference toFIG.16. The security feature1704includes branding (shown by “Lumen Powered by Versa”), security text (shown by “Block Uploads”), and icons (shown by shields with checkmarks). In an embodiment, the branding shown by “Lumen Powered by Versa” is partner co-branding.

FIG.18depicts another example of the RBI protected browser1800shown inFIG.12. In the embodiment ofFIG.18, the RBI protected browser1800displays the border that includes the inner border1802-1and the outer border1802-2, and the security feature1804that is repeated in the repeating pattern as described with reference toFIG.16. The security feature1804includes branding (shown by “Comcast Powered by Versa”), security text (shown by “Preview Downloads”), and icons (shown by shields with checkmarks). In an embodiment, the branding shown by “Comcast Powered by Versa” is partner co-branding.

FIG.19depicts an example of the RBI protected browser1900shown inFIG.13. In the embodiment depicted inFIG.19, the RBI protected browser1900includes a border and a security feature1904that is displayed using a repeating pattern. The border includes an inner border1902-1that is indicated by the security feature1904and that is around a display window of the RBI protected browser1900, and an outer border1902-2that is a colored border and that is around the RBI protected browser1900. The security feature1904includes branding (shown by “Protected by Versa Networks”), security text (shown by “Remote Browser Protection”), and an icon (shown by a shield with a checkmark).

In some embodiments, the examples shown inFIGS.15-19are example images that may be displayed via a display screen of an electronic device (e.g., the display308of the client device302shown inFIG.3).

FIG.20illustrates a flow diagram of a technique for displaying an RBI protected browser in accordance with an embodiment of the invention. At block2002, an RBI protected browser is displayed. At block2004, a border that is at least partially around the RBI protected browser is displayed. At block2006, a security feature within the border is displayed, where the border and the security feature indicate to a user that the RBI protected browser is RBI protected.

FIG.21illustrates a flow diagram of another technique for displaying an RBI protected browser in accordance with an embodiment of the invention. At block2102, a device initiate RBI protected browsing via an RBI server. At block2104, the device displays an RBI protected browser, a border at least partially around the RBI protected browser, and a security feature within the border, where the border and the security feature indicate the RBI protected browsing to a user.

In some embodiments, the technique for displaying an RBI protected browser includes a non-transitory computer readable medium including instructions to be executed in a computer system. For example, the instructions when executed in the computer system perform a technique that includes displaying an RBI protected browser, displaying a border at least partially around the RBI protected browser, and displaying a security feature within the border, where the border and the security feature indicate to a user that the RBI protected browser is RBI protected.

In some embodiments, the technique for displaying an RBI protected browser includes a non-transitory computer readable medium including instructions to be executed in a computer system. For example, the instructions when executed in the computer system perform a technique that includes displaying an RBI protected browser, displaying a border around the RBI protected browser, and displaying a security feature within the border, where the border and the security feature indicate to a user that the RBI protected browser is RBI protected.

In some embodiments, the technique for displaying an RBI protected browser includes a non-transitory computer readable medium including instructions to be executed in a computer system. For example, the instructions when executed in the computer system perform a technique that includes displaying an RBI protected browser, displaying a watermark at least partially around the RBI protected browser, and displaying a security feature within the watermark, where the watermark and the security feature indicate to a user that the RBI protected browser is RBI protected.

In some embodiments, the technique for displaying an RBI protected browser involves initiating, by a device, RBI protected browsing via an RBI server, and displaying, by the device, an RBI protected browser, a border at least partially around the RBI protected browser, and a security feature within the border, where the border and the security feature indicate the RBI protected browsing to a user.

In some embodiments, the technique for displaying an RBI protected browser includes a non-transitory computer readable medium including instructions to be executed in a computer system. For example, the instructions when executed in the computer system perform a technique that includes initiating RBI protected browsing via an RBI server, and displaying an RBI protected browser, a border at least partially around the RBI protected browser, and a security feature within the border, where the border and the security feature indicate the RBI protected browsing to a user.

In some embodiments, the technique for displaying an RBI protected browser includes a non-transitory computer readable medium including instructions to be executed in a computer system. For example, the instructions when executed in the computer system perform a technique that includes initiating RBI protected browsing via an RBI server, and displaying an RBI protected browser, a watermark at least partially around the RBI protected browser, and a security feature within the watermark, where the watermark and the security feature indicate the RBI protected browsing to a user.

It is understood that the scope of the protection for systems and methods disclosed herein is extended to such a program and in addition to a computer readable means having a message therein, such computer readable storage means contain program code means for implementation of one or more steps of the method, when the program runs on a server or mobile device or any suitable programmable device.

Although the operations of the method(s) herein are shown and described in a particular order, the order of the operations of each method may be altered so that certain operations may be performed in an inverse order or so that certain operations may be performed, at least in part, concurrently with other operations. In another embodiment, instructions or sub-operations of distinct operations may be implemented in an intermittent and/or alternating manner.

While the above-described techniques are described in a general context, those skilled in the art will recognize that the above-described techniques may be implemented in software, hardware, firmware, or a combination thereof. The above-described embodiments of the invention may also be implemented, for example, by operating a computer system to execute a sequence of machine-readable instructions. The instructions may reside in various types of computer readable media. In this respect, another aspect of the present invention concerns a programmed product, comprising computer readable media tangibly embodying a program of machine-readable instructions executable by a digital data processor to perform the method in accordance with an embodiment of the present invention.

The computer readable media may comprise, for example, random access memory (not shown) contained within the computer. Alternatively, the instructions may be contained in another computer readable media such as a magnetic data storage diskette and directly or indirectly accessed by a computer system. Whether contained in the computer system or elsewhere, the instructions may be stored on a variety of machine-readable storage media, such as a direct access storage device (DASD) storage (e.g., a conventional “hard drive” or a Redundant Array of Independent Drives (RAID) array), magnetic tape, electronic read-only memory, an optical storage device (e.g., CD ROM, WORM, DVD, digital optical tape), paper “punch” cards. In an illustrative embodiment of the invention, the machine-readable instructions may comprise lines of compiled C, C++, or similar language code commonly used by those skilled in the programming for this type of application arts.

The foregoing description of the specific embodiments will so fully reveal the general nature of the embodiments herein that others can, by applying current knowledge, readily modify and/or adapt for various applications such specific embodiments without departing from the generic concept, and, therefore, such adaptations and modifications should and are intended to be comprehended within the meaning and range of equivalents of the disclosed embodiments. It is to be understood that the phraseology or terminology employed herein is for the purpose of description and not of limitation. Therefore, while the embodiments herein have been described in terms of preferred embodiments, those skilled in the art will recognize that the embodiments herein can be practiced with modification within the spirit and scope of the claims as described herein.