WO2016106150A1 - Enforcement of proximity based policies - Google Patents

Enforcement of proximity based policies Download PDF

Info

Publication number
WO2016106150A1
WO2016106150A1 PCT/US2015/066891 US2015066891W WO2016106150A1 WO 2016106150 A1 WO2016106150 A1 WO 2016106150A1 US 2015066891 W US2015066891 W US 2015066891W WO 2016106150 A1 WO2016106150 A1 WO 2016106150A1
Authority
WO
WIPO (PCT)
Prior art keywords
location
proximity
policy
companion
companion device
Prior art date
Application number
PCT/US2015/066891
Other languages
French (fr)
Inventor
Joshua Grey Pelkey
Original Assignee
Airwatch, Llc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Airwatch, Llc filed Critical Airwatch, Llc
Publication of WO2016106150A1 publication Critical patent/WO2016106150A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/023Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/107Network architectures or network communication protocols for network security for controlling access to devices or network resources wherein the security policies are location-dependent, e.g. entities privileges depend on current location or allowing specific operations only from locally connected terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/065Continuous authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security
    • H04W12/084Access security using delegated authorisation, e.g. open authorisation [OAuth] protocol
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/02Access restriction performed under specific conditions
    • H04W48/04Access restriction performed under specific conditions based on user or terminal location or mobility data, e.g. moving direction, speed

Definitions

  • Computing devices such as smartphones, laptop computers, etc.
  • applications can be installed upon a computing device, such as a game application, enterprise application, or other type of software application.
  • Computing devices may also be equipped with one or more network interfaces that facilitate communication with other computing devices via a network.
  • FIG. 1 is a drawing of a networked environment according to various embodiments of the present disclosure.
  • FIG. 2 is a diagram illustrating an example scenario according to various embodiments of the present disclosure.
  • FIGS. 3A-3D are diagrams illustrating example scenarios according to various embodiments of the present disclosure.
  • FIGS. 4-6 are flowcharts illustrating examples of functionality implemented as portions of the policy server and agent application according to various embodiments of the present disclosure.
  • a proximity based policy in the context of the present disclosure, comprises a policy whereby proximity to a certain geographic location or proximity to a particular computing device is required in order for certain functionality to be enabled in a computing device.
  • a companion device or a slave device can be required to be in proximity to an anchor device or master device in order for certain functionality to be enabled on the companion device.
  • proximity, or lack thereof, to a companion device can also trigger the selection of a device management policy that can be imposed on or selected on behalf of the companion device.
  • An example of a scenario in which such a policy can be employed is the case of a parent wishing to facilitate the monitoring or metering of usage of a device by a child.
  • a parent may wish to impose a policy in which a device associated with the child is able to use a browser application only when the device associated with the child is in proximity to another device that is associated with the parent.
  • the parent's device can be designated as an anchor device and the child's device can be designated as a companion device.
  • embodiments of the disclosure can require proximity of the companion device to the anchor device.
  • Proximity can be determined by a policy server that receives location indications from the anc or device and the companion device.
  • location indications can comprise geolocation data obtained from a positioning system associated with the respective devices.
  • location indications can also include an indication of whether a particular device has received an acknowledgement or ping directly from the other device using a localized communication interface or a network connection.
  • a localized communication interface can comprise a Bluetooth capability, a near-field communication (NFC) interface, a radio-frequency identification (RFID) read or write capability, or any other localized communication interface as can be appreciated. If the devices are out of communication range via the localized communication interface, one or both of the anchor device or companion device can communicate a location indication the policy server that the devices are no longer in proximity to one another.
  • NFC near-field communication
  • RFID radio-frequency identification
  • the networked environment 100 includes a computing environment 103, an anchor device 106, and a companion device 107 which are in data communication with each other through a network 113.
  • the network 113 includes, for example, the Internet, one or more intranets, extranets, wide area networks (WANs), local area networks (LANs), wired networks, wireless networks, other suitable networks, or any combination of two or more such networks.
  • WANs wide area networks
  • LANs local area networks
  • wired networks wireless networks
  • wireless networks other suitable networks, or any combination of two or more such networks.
  • such networks may comprise satellite networks, cable networks, Ethernet networks, telephony networks, and other types of networks.
  • the computing environment 103 may comprise, for example, a server computer or any other system providing computing capability.
  • the computing environment 103 may employ multiple computing devices that may be arranged, for example, in one or more server banks, computer banks, or other arrangements. Such computing devices may be located in a single installation or may be distributed among many different geographical locations.
  • the computing environment 103 may include multiple computing devices that together form a hosted computing resource, a grid computing resource, and/or any other distributed computing arrangement.
  • the computing environment 103 may correspond to an elastic computing resource where the allotted capacity of processing, network, storage, or other computing-related resources may vary over time.
  • the computing environment 103 may also include or correspond to one or more virtualized server instances that are created in order to execute the functionality that is described herein.
  • Various systems and/or other functionality may be executed in the computing environment 103 according to various embodiments.
  • various data is stored in a data store 116 that is accessible to the computing environment 103.
  • the data store 116 may be representative of a plurality of data stores 116.
  • the data stored in the data store 116 is associated with the operation of the various systems and/or functional entities described below.
  • a device management system 119 and/or other systems may be executed in the computing environment 103.
  • the device management system 119 may be executed to manage and/or oversee the operation of multiple anchor devices 106 and/or companion devices 107.
  • an employer may operate the device management system 119 to ensure that the anchor devices 106 and/or companion devices 107 of its employees are operating in compliance with various compliance rules. By ensuring that the devices of its employees are operated in compliance with the compliance rules, the employer may control and protect access to various data.
  • a device manufacturer or software provider may operate the device management system 119 and provide device management capabilities for consumers. For example, a parent may wish to monitor or restrict usage of a device of a child or another user in a household.
  • the device management system 119 may also facilitate access to email, calendar data, contact information, documents, or other data to which an enterprise or other organization may wish to provide access by users via devices such as smartphones, computing devices, a device executing a browser application, mobile application, etc.
  • the device management system 119 may provide a management console 123 and/or other components.
  • the management console 123 may facilitate operation and control of the device management system 119.
  • the management console 123 may generate one or more user interfaces that are rendered on a display device (not shown) or accessible using a browser executed by another computing device.
  • Such user interfaces may facilitate entering commands or other information to facilitate configuration of the device management system 119.
  • a user may configure a proximity policy using a user interface generated by the management console 123.
  • the computing environment 103 may also execute a policy server 126 that facilitates the management of proximity based policies on behalf of users or organizations.
  • the policy server 126 can obtain an indication of a location of various devices that are managed by the device management system 119 as well as determine whether policies are in place with respect to proximity of a particular device relative to another device.
  • the policy server 126 can also transmit commands, or a security command 171, that specify a capability that can be enabled and/or disabled in a companion device 106 in response to detection of the proximity of a companion device 107 to an anchor device 106.
  • the policy server 126 can be implemented as functionality or logic that is embedded within the device management system 119.
  • the policy server 126 can also be implemented as a library for which an application programming interface (API) is provided and with which the functionality of the policy server 126 can be invoked by the device management system 119 or any other application or service. Some embodiments may also include the functionality of the policy server 126 being implemented within the anchor device 106 or the companion device 107 by an application executed therein.
  • API application programming interface
  • the computing environment 103 may also execute other applications to facilitate interactions with an anchor device 106 or companion device 107, such as an application distribution service that distributes applications and/or updates for applications to the devices, a mail server that provides email services and/or functionality, a document storage application that provides remote document storage capability for users, or other applications or services that can be deployed to provide services for its users. Description of such applications or services is not necessary for a complete understanding of embodiments of the disclosure.
  • the data stored in the data store 116 may include user account data 129, and/or other information.
  • the user account data 129 can include data associated with a user account, such as user profile information as well as information device identifiers 133, proximity policies 134 and other user account data.
  • User profile information can include information about a user's address or location, permissions, and/or privileges with respect to usage of an enterprise device.
  • User profile information can also include access settings such as authentication credentials, delegation settings (e.g., information about other users who may be provided access to the user account data 129 of a particular user), etc.
  • User account data 129 can also include information about a user account within the computing environment 103.
  • the user account may be associated with an email address or other identifier that is assigned by the computing environment 103.
  • User account data 129 can also include other account settings, such as biographical or demographic information about a user, password reset information, multi-factor authentication settings, and other data related to a user account as can be appreciated.
  • User account data 129 can also include other forms of data associated with users of an enterprise's computing resources that are not shown, such as a user's mailbox data, calendar data, contact data, and other user data.
  • mailbox data includes data associated with one or more mailboxes corresponding to a user account of a user.
  • the user account data 129 may also include information regarding one or more devices that are associated with a user's account, or device data 133.
  • Such information can be stored as device identifiers, which can comprise any information from which a particular computing device can be identified by the proxy server 126 and/or device management system 119.
  • a device identifier may be a unique hardware identifier such as a GUID (Globally Unique Identifier), UUID (Universally Unique Identifier), UDID (Unique Device Identifier), serial number, IMEI (Internationally Mobile Equipment Identity), Wi-Fi MAC (Media Access Control) address, Bluetooth MAC address, a CPU ID, and/or the like, or any combination of two or more such hardware identifiers.
  • a particular user account may be associated with multiple anchor devices 106 and/or companion devices 107 for which proximity policies 134 can be defined.
  • Device data 133 can also include, for example, the identification of the particular applications that are installed in the anchor devices 106 and/or companion devices 107, historical data regarding the operation of the anchor devices 106 and/or companion devices 107, and/or other information.
  • User account data 129 can also include proximity policies 134.
  • a proximity policy 134 can identify at least two devices associated with a particular user account.
  • the proximity policy 134 can identify one of the devices as an anchor device 106 and another of the devices as a companion device 107.
  • the proximity policy 134 can further specify a policy that can be placed upon the anchor device 106 and/or the companion device 107 when the devices are within proximity to one another.
  • the proximity policy 134 can also specify a different policy that can be placed upon the anchor device 106 and/or the companion device 107 when the devices are not within proximity to one another.
  • the proximity policy 134 can also define a level of proximity necessary in order for an anchor device 106 and companion device 107 identified by a proximity policy 134 to be considered in proximity to one another. For example, in one embodiment, proximity of an anchor device 106 to a companion device 107 may be detected through a respective Bluetooth interface of the anchor device 106 and companion device 107. Accordingly, the proximity policy 134 can specify that a periodic ping or acknowledgement must be exchanged by the devices and such a ping or acknowledgement must be associated with a minimum signal strength. As another example, the proximity policy 134 can specify that in order to be considered in proximity to one another, that a ping or acknowledgement must be exchanged by the companion device 107 and anchor device 106 within a certain threshold time period.
  • the proximity policy 134 can also specify that the anchor device 106 and companion device 107 be within a certain geographic distance of one another based upon geolocation data that is reported by respective positioning systems (e.g., global positioning system capability).
  • the proximity policy 134 can also specify that the anchor device 106 and companion device 107, in order to be considered in proximity with one another, should be associated with a common internet protocol (IP) address or an IP address within a certain range of one another.
  • IP internet protocol
  • the proximity policy 134 can also specify that the anchor device 106 and companion device 107 be connected to the same router, switch or Internet gateway device in order to be considered in proximity with one another.
  • a proximity policy 134 can also specify actions that should be taken in response to a determination that the anchor device 106 and companion device 107 identified by the proximity policy 134 are not in proximity with one another to a degree specified by the proximity policy 134.
  • a proximity policy 134 can specify that if the devices are in proximity with one another, then a particular application can be used or executed on the companion device 107 but that the particular application cannot be used or executed if the devices are not in proximity.
  • the proximity policy 134 can specify that a browser application, a particular game application, or any other application can only be launched by the companion device 107 when it is determined to be in proximity with the anchor device 106. Otherwise, the particular application can be disabled.
  • a proximity policy 134 can specify that if an anchor device 106 and companion device 107 are not in proximity with one another, that a hardware or software capability of the companion device 107 should be disabled.
  • the proximity rule 134 can specify that a network capability or an ability to access a local or wide area network should be disabled. In other words, the proximity rule 134 can specify that Internet access of the companion device 107 should be disabled.
  • a proximity policy 134 can specify that if the anchor device 106 and companion device 107 are not in proximity, that a security requirement can be imposed upon the user, such as locking the display of the companion device 107 and requiring a password or personal identification number (PIN) to be entered in order for the companion device 107 to be accessed by the user.
  • PIN personal identification number
  • one or more of various capabilities of the device can be disabled, such as a camera, Bluetooth interface, or other capabilities of the companion device 107.
  • the anchor device 106 and companion device 107 are representative of multiple client devices that may be coupled to the network 113.
  • the anchor device 106 may comprise, for example, a processor-based system such as a computer system.
  • a computer system may be embodied in the form of a desktop computer, a laptop computer, a personal digital assistant, a mobile phone (e.g., a "smartphone"), wearable computing device, a set-top box, a music player, a web pad, a tablet computer system, a game console, an electronic book reader, or any other device with like capability.
  • the anchor device 106 and companion device 107 may include a display that comprises, for example, one or more devices such as liquid crystal display (LCD) displays, gas plasma-based flat panel displays, organic light emitting diode (OLED) displays, LCD projectors or other types of display devices.
  • LCD liquid crystal display
  • OLED organic light emitting diode
  • the anchor device 106 and companion device 107 may be configured to execute one or more applications 141, an agent application 143, and/or other components.
  • An application 141 may comprise, for example, one or more programs that perform various operations when executed in the anchor device 106 or companion device 107. Such an operation may comprise, for example, storing data, reading data, controlling a component for an anchor device 106 and/or companion device 107, and/or other functionality.
  • An application 141 may perform some operations by initiating functions that are performed by an operating system in the anchor device 106 and/or companion device 107.
  • An application 141 may initiate operating system functions by, for example, performing API calls.
  • An application 141 can include any software that can be installed upon the anchor device 106 and companion device 107, such as a mail application, a browser application, a game, and other types of applications.
  • the agent application 143 may be executed on the anchor device 106 and companion device 107 to oversee, monitor, and/or manage at least a portion of the resources for the anchor device 106 and companion device 107.
  • the agent application 143 may be executed by the anchor device 106 and companion device 107 automatically upon startup of the respective device. Additionally, the agent application 143 may run as a background process in the anchor device 106 and companion device 107. In other words, the agent application 143 may execute and/or run without user intervention. Additionally, the agent application 143 may communicate with the device management system 119 and policy server 126 in order to facilitate the management of the respective devices by the policy server 126 and/or device management system 119.
  • the agent application 143 can enforce proximity policies 134 that are specified for a particular anchor device 106 and/or companion device 107 on behalf of the policy server 126.
  • the proximity policies 134 can be stored on an anchor device 106 or a companion device 107, which can enforce the proximity policy 134 by issuing a security command 171 through the agent application 143 in response to detecting that the companion device 107 is no longer in proximity to the anchor device 106.
  • a proximity policy 134 can be enforced upon an anchor device 106 or a companion device 107 without requiring a location indication 169 to be provided to a policy server 126 that is executed by the computing environment 103.
  • a proximity policy 134 can be defined that specifies a policy that can be applied to an anchor device 106 and/or companion device 107 when the anchor device 106 and companion device 107 are in proximity to one another.
  • the policy server 126 can rely upon location indications 169 that are received from the agent application 143 or any other application executed by the anchor device 106 and companion device 107.
  • the agent application 143 can be configured to periodically generate a location indication 169 that corresponds to a location of the anchor device 106 and/or companion device 107, respectively.
  • the location indication 169 can also comprise an indication of whether the anchor device 106 and companion device 107 are in proximity to one another irrespective of the geographic location of the anchor device 106 and companion device 107.
  • a location indication 169 can comprise geolocation data obtained by the agent application 143 from a positioning system associated with the anchor device 106 and companion device 107, respectively. Accordingly, the policy server 126 can determine whether the anchor device 106 and/or companion device 107 are in proximity to one another based upon whether the geolocation data reflects that the anchor device 106 and/or companion device 107 are within a threshold distance from one another. In some embodiments, the proximity policy 134 associated with the anchor device 106 and/or companion device 107 can also specify such a threshold distance.
  • a location indication 169 can also comprise a network location of the anchor device 106 and companion device 107, respectively, such as an IP address or IP address subnet, a service set identification (SSID) of a wireless network to which the anchor device 106 and companion device 107 are respectively connected.
  • a network location can also include any other aspects of a network interface or network connection of the anchor device 106 and companion device 107, respectively, to the network 113. Accordingly, the policy server 126 can determine whether the anchor device 106 and/or companion device 107 are in proximity to one another based upon the parameters of the network location of the anchor device 106 and/or companion device 107.
  • a location indication 169 can also include information about whether a ping or acknowledgement sent through a localized communication interface, such as Bluetooth, has been sent or received to or from the anchor device 106 and companion device 107, respectively.
  • the agent application 143 can be configured to generate a ping that is transmitted from the anchor device 106 to the companion device 107 and vice-versa. Such a ping can be answered by the anchor device 106 and companion device 107 by an acknowledgement.
  • Such a ping and/or acknowledgement can be transmitted by the agent application 143 using a localized communication interface such that they can only be successfully received by the anchor device 106 and/or companion device 107 when the devices are in proximity to one another.
  • a corresponding location indication 169 generated by the agent application 143 can include an indication of whether a previous ping generated by the agent application 143 executed by one of the anchor device 106 and/or companion device 107 was acknowledged by the other device.
  • the policy server 126 can determine whether the anchor device 106 and/or companion device 107 are in proximity to one another based upon whether a ping was not acknowledged by one or both of the anchor device 106 and/or the companion device 107.
  • the policy server 126 can also make this determination based upon whether a ping or acknowledgement of the anchor device 106 and/or companion device 107 has not been received for a threshold amount of time.
  • the policy server 126 can also make a determination regarding proximity of the anchor device 106 and companion device 107 based upon a signal strength of a received acknowledgement. For example, if a signal strength does not meet a signal strength threshold, the policy server 126 can determine that the anchor device 106 and companion device 107 are not in proximity to one another.
  • the agent application 143 executed by the anchor device 106 and/or companion device 107 can generate periodic transmissions that are sent to the other device using a localized communication interface. Accordingly, in the event that a transmission has not been received for a threshold amount of time, the agent application 143 can generate a location indication 169 that alerts the policy server 126 that the device from which the transmission was expected has not been received.
  • the policy server 126 can issue a security command 171 that instructs the agent application 143 to apply a policy that is specified by the proximity policy 134 associated with the anchor device 106 and companion device 107. For example, if the policy server 126 determines that the anchor device 106 and companion device 107 are within proximity to one another based upon location indicators 169 received from the anchor device 106 and companion device 107, the policy server 126 can issue a security command 171 to the companion device 107 with respect a functionality that is to be either enabled or disabled within the companion device 107 by the agent application 143. For example, the security command 171 can instruct the agent application 143 of the companion device 107 to enable access to a particular application if the anchor device 106 and companion device 107 are in proximity to one another.
  • the policy server 126 can issue a security command 171 to the agent application 143 as specified by a respective proximity policy 143.
  • a security command 171 can include a restriction that the agent application 143 can enforce upon the companion device 107 or a security requirement enforced upon the companion device 107 or the user of the companion device 107.
  • the security command 171 can restrict a capability of the companion device 107 as a result of a lack or proximity to the anchor device 106.
  • the security command 171 can instruct the agent application 143 to disable a particular application installed on the companion device 107.
  • the security command 171 can also instruct the agent application 143 to lock a display of the companion device 107 or impose any other type of security measure.
  • the security command 171 can also restrict access by a user of the companion device 107 to content that is stored on the companion device 107, such as mail, documents, media or other content. Additionally, the security command 171 can restrict the ability of companion device 107 to communicate with other devices through the network 113.
  • the policy server 126 can issue another security command 171 that removes a restriction or enables a particular disabled functionality of the companion device 107.
  • the agent application 143 executed by the anchor device 106 can be configured to issue a security command 171 directly to the companion device 107 or instruct the policy server 126 to issue a security command 171 that enables or disables certain restrictions or functionality irrespective of proximity of the anchor device 106 to the companion device 107.
  • the anchor device 106 in some embodiments, can override the policy server 126 with respect to proximity policies 134.
  • FIG. 2 shown is an example of an anchor device 106 and companion device 107 that are in proximity to one another. Such proximity is indicated visually in FIG. 2 by the overlapping circles 201 and 203.
  • the policy server 126 can determine that the anchor device 106 and companion device 107 are in proximity to one another based upon location indicators 169a and 169b received from the anchor device 106 and companion device 107.
  • the policy server 126 can determine that the anchor device 106 and companion device 107 are in proximity with one another and also determine whether a proximity policy 134 is associated with the anchor device 106 and companion device 107. If a proximity policy 134 is associated with the anchor device
  • the policy server 126 can identify an action associated with the proximity policy 134 and issue a security command 171 to the companion device 107 that enables or disables a particular restriction or capability of the companion device 107.
  • FIG. 3A illustrates a scenario in which the anchor device 106 and companion device 107 are no longer within the prescribed proximity as defined by the proximity policy 134.
  • the policy server 126 can determine whether the anchor device 106 and companion device 107 are in proximity based upon location indicators 169c and 169d that are received from the anchor device 106 and companion device 107.
  • the policy server 126 can issue a security command 171 to the companion device 107 that comprises an action specified by a corresponding proximity policy 134.
  • the proximity policy 134 can specify a capability of the companion device 107 that should be restricted or disabled now that the companion device 107 is no longer in proximity to the anchor device.
  • the proximity policy 134 can also identify content stored on the companion device 107 and/or any other device that should be unavailable to the companion device 107 as a result of the lack of proximity to the anchor device 106. Accordingly, in the example of FIG. 3B, the policy server 126 can issue a security command 171 to the agent application 143 executed by the companion device 107, which can restrict or remove a capability of the companion device 107 on behalf of the policy server 126.
  • FIG. 3C illustrates an alternative scenario in which the anchor device 106 can be associated with multiple companion devices 107a and 107b.
  • the policy server 126 can issue a security command 171 to the companion device 107b that comprises an action specified by a corresponding proximity policy 134.
  • the policy server 126 can avoid issuing a security command 171 to the companion device 107b.
  • the proximity policy 134 can specify a capability of the companion device 107a, 107b that should be restricted or disabled should either companion device 107a or 107b move to a location that is no longer in proximity to the anchor device 106. Accordingly, in the example of FIG. 3C, the policy server 126 can issue a security command 171 to the agent application 143 executed by the companion device 107b, which can restrict or remove a capability of the companion device 107b on behalf of the policy server 126.
  • FIG. 3D presents an alternative scenario in which the anchor device 106 and companion device 107 are in proximity with one another.
  • the policy server 126 has not determined that the anchor device 106 and companion device 107 are not out of proximity with respect to one another, a user, using the anchor device 106, can cause a security command 171 to be generated and transmitted to the agent application 143 executed by the companion device 107.
  • the anchor device 106 can override a proximity policy 134 that is defined for a particular anchor device 106 and companion device 107.
  • FIG. 4 shown is a flowchart that provides one example of the operation of a portion of the policy server 126 according to various embodiments.
  • FIG. 4 provides merely an example of the many different types of functional arrangements that may be employed to implement the operation of the portion of the policy server 126 as described herein.
  • the flowchart of FIG. 4 may be viewed as depicting an example of elements of a method implemented in the computing environment 103 (FIG. 1) according to one or more embodiments.
  • the policy server 126 can obtain a location indication 169 from an anchor device 106.
  • a location indication 169 can include geolocation data with respect to the anchor device 106, a network location of the anchor device 106 and/or an indication of proximity to the companion device 107 based upon data transmissions obtained from the companion device 107 using a localized communication interface.
  • the policy server 126 can obtain a location indication 169 from the companion device 107.
  • the policy server 126 can determine whether a proximity policy 134 exists that identifies the anchor device 106 and companion device 107.
  • a proximity policy 134 that is associated with the anchor device 106 and companion device 107 is identified, then at box 407 the policy server 126 determines whether the policy is violated. Otherwise, the process can proceed to completion at box 414.
  • a proximity policy 134 can be violated should the companion device 107 no longer be in proximity to the anchor device 106 as defined by the proximity policy 134 and as determined by the proximity server 126. If the proximity policy 134 is violated, then at box 409, the policy server 126 can issue a security command 171 to the companion device 107.
  • the security command 171 can comprise a command that instructs the companion device 107 and/or the agent application 143 to modify and/or restrict a functionality of the companion device 107.
  • the process can proceed to completion at box 414.
  • the policy server 126 can determine whether an additional proximity policy 134 is associated with the anchor device 106 and the companion device 107. If so, then the process can proceed to box 407. Otherwise, the process can proceed to completion at box 414.
  • FIG. 5 shown is a flowchart that provides one example of the operation of a portion of the agent application 143 executed by the anchor device 106 according to various embodiments. It is understood that the flowchart of FIG. 5 provides merely an example of the many different types of functional arrangements that may be employed to implement the operation of the portion of the anchor device 106 as described herein. As an alternative, the flowchart of FIG. 5 may be viewed as depicting an example of elements of a method implemented in the anchor device 106 (FIG. 1) according to one or more embodiments.
  • the agent application 143 can generate a location indication 169 indicating a location of the anchor device 106 and/or the proximity of the anchor device 106 to a companion device 107.
  • the agent application 143 can transmit the location indication 169 to the policy server 126.
  • FIG. 6 shown is a flowchart that provides one example of the operation of a portion of the agent application 143 executed by the companion device 107 according to various embodiments. It is understood that the flowchart of FIG. 6 provides merely an example of the many different types of functional arrangements that may be employed to implement the operation of the portion of the companion device 107 as described herein. As an alternative, the flowchart of FIG. 6 may be viewed as depicting an example of elements of a method implemented in the companion device 107 (FIG. 1) according to one or more embodiments.
  • the agent application 143 can generate a location indication 169 indicating a location of the companion device 106 and/or the proximity of the companion device 107 to an anchor device 106.
  • the agent application 143 can transmit the location indication 169 to the policy server 126.
  • the agent application 143 can determine whether a security command 171 is received from the policy server 126. If so, then at box 607, the agent application 143 can identify a particular restriction identified by the security command 171.
  • the agent application 143 can apply the restriction identified by the security command to the companion device 107.
  • the restriction specified by the security command 171 can alter or disable a particular capability of the companion device 107.
  • the anchor device 106, companion device 107 or devices comprising a computing environment can include at least one processor circuit, for example, having a processor and at least one memory device, both of which are coupled to a local interface, respectively.
  • a device may comprise, for example, at least one computer, a mobile device, smartphone, computing device or like device.
  • the local interface may comprise, for example, a data bus with an accompanying address/control bus or other bus structure as can be appreciated.
  • Stored in the memory device are both data and several components that are executable by the processor.
  • stored in the one or more memory device and executable by the processor of such a device can be the policy server 126, agent application 143 and potentially other applications.
  • Also stored in the memory may be a data store 113 and other data.
  • executable means a program file that is in a form that can ultimately be run by the processor.
  • executable programs may be, for example, a compiled program that can be translated into machine code in a format that can be loaded into a random access portion of one or more of the memory devices and run by the processor, code that may be expressed in a format such as object code that is capable of being loaded into a random access portion of the one or more memory devices and executed by the processor, or code that may be interpreted by another executable program to generate instructions in a random access portion of the memory devices to be executed by the processor, etc.
  • An executable program may be stored in any portion or component of the memory devices including, for example, random access memory (RAM), read-only memory (ROM), hard drive, solid-state drive, USB flash drive, memory card, optical disc such as compact disc (CD) or digital versatile disc (DVD), floppy disk, magnetic tape, or other memory components.
  • RAM random access memory
  • ROM read-only memory
  • hard drive solid-state drive
  • USB flash drive USB flash drive
  • memory card such as compact disc (CD) or digital versatile disc (DVD), floppy disk, magnetic tape, or other memory components.
  • CD compact disc
  • DVD digital versatile disc
  • Memory can include both volatile and nonvolatile memory and data storage components.
  • a processor may represent multiple processors and/or multiple processor cores, and the one or more memory devices may represent multiple memories that operate in parallel processing circuits, respectively.
  • Memory devices can also represent a combination of various types of storage devices, such as RAM, mass storage devices, flash memory, hard disk storage, etc.
  • a local interface may comprise additional systems designed to coordinate this communication, including, for example, performing load balancing.
  • the processor may be of electrical or of some other available construction.
  • the authenticator device 106 and/or computing device 107 may include a display upon which a user interface generated by the file storage application 216 or another application can be rendered.
  • the computing device 106 and/or computing device 107 may also include one or more input/output devices that may include, for example, a capacitive touchscreen or other type of touch input device, fingerprint reader, keyboard, etc.
  • file storage application 216 and other various systems described herein may be embodied in software or code executed by general purpose hardware as discussed above, as an alternative the same may also be embodied in dedicated hardware or a combination of software/general purpose hardware and dedicated hardware. If embodied in dedicated hardware, each can be implemented as a circuit or state machine that employs any one of or a combination of a number of technologies. These technologies may include, but are not limited to, discrete logic circuits having logic gates for implementing various logic functions upon an application of one or more data signals, application specific integrated circuits (ASICs) having appropriate logic gates, field-programmable gate arrays (FPGAs), or other components, etc. Such technologies are generally well known by those skilled in the art and, consequently, are not described in detail herein.
  • each block may represent a module, segment, or portion of code that comprises program
  • the program instructions may be embodied in the form of source code that comprises human-readable statements written in a programming language or machine code that comprises numerical instructions recognizable by a suitable execution system such as a processor in a computer system or other system.
  • the machine code may be converted from the source code, etc. If embodied in hardware, each block may represent a circuit or a number of interconnected circuits to implement the specified logical function(s).
  • any logic or application described herein that comprises software or code can be embodied in any non-transitory computer-readable medium for use by or in
  • a "computer-readable medium” can be any medium that can contain, store, or maintain the logic or application described herein for use by or in connection with the instruction execution system.
  • the computer-readable medium can comprise any one of many physical media such as, for example, magnetic, optical, or semiconductor media. More specific examples of a suitable computer-readable medium would include, but are not limited to, solid-state drives, flash memory, etc.
  • any logic or application described herein may be implemented and structured in a variety of ways. For example, one or more applications described may be implemented as modules or components of a single application. Further, one or more applications described herein may be executed in shared or separate computing devices or a combination thereof. For example, a plurality of the applications described herein may execute in the same computing device, or in multiple computing devices. Additionally, it is understood that terms such as “application,” “service,” “system,” “engine,” “module,” and so on may be interchangeable and are not intended to be limiting.

Abstract

Embodiments of the disclosure are related to enforcing a policy on a computing device, or a companion device, based upon its proximity to another computing device, or an anchor device. In one example, the anchor device and companion device can report their location with respect to one another to a policy server. The policy server can determine whether the anchor device and proximity device are in proximity to one another as well as determine whether a policy should be applied to the companion device based upon whether it is in proximity to the anchor device.

Description

ENFORCEMENT OF PROXIMITY BASED POLICIES
By: Joshua Pelkey
BACKGROUND
[0001] Computing devices, such as smartphones, laptop computers, etc., can be equipped with various functionalities and capabilities. For example, applications can be installed upon a computing device, such as a game application, enterprise application, or other type of software application. Computing devices may also be equipped with one or more network interfaces that facilitate communication with other computing devices via a network.
BRIEF DESCRIPTION OF THE DRAWINGS
[0002] Many aspects of the present disclosure can be better understood with reference to the following drawings. The components in the drawings are not necessarily to scale, with emphasis instead being placed upon clearly illustrating the principles of the disclosure. Moreover, in the drawings, like reference numerals designate corresponding parts throughout the several views.
[0003] FIG. 1 is a drawing of a networked environment according to various embodiments of the present disclosure.
[0004] FIG. 2 is a diagram illustrating an example scenario according to various embodiments of the present disclosure.
[0005] FIGS. 3A-3D are diagrams illustrating example scenarios according to various embodiments of the present disclosure. [0006] FIGS. 4-6 are flowcharts illustrating examples of functionality implemented as portions of the policy server and agent application according to various embodiments of the present disclosure.
DETAILED DESCRIPTION
[0007] The present disclosure is directed to enforcing proximity based policies on computing devices such as smartphones, laptop computers, desktop computers, wearable computing devices, or any other computing device. A proximity based policy, in the context of the present disclosure, comprises a policy whereby proximity to a certain geographic location or proximity to a particular computing device is required in order for certain functionality to be enabled in a computing device. In other words, a companion device or a slave device can be required to be in proximity to an anchor device or master device in order for certain functionality to be enabled on the companion device. In some embodiments, proximity, or lack thereof, to a companion device can also trigger the selection of a device management policy that can be imposed on or selected on behalf of the companion device.
[0008] An example of a scenario in which such a policy can be employed is the case of a parent wishing to facilitate the monitoring or metering of usage of a device by a child. For example, a parent may wish to impose a policy in which a device associated with the child is able to use a browser application only when the device associated with the child is in proximity to another device that is associated with the parent. In such a scenario, the parent's device can be designated as an anchor device and the child's device can be designated as a companion device. In order for a particular functionality to be enabled within the companion device, embodiments of the disclosure can require proximity of the companion device to the anchor device. Proximity can be determined by a policy server that receives location indications from the anc or device and the companion device. [0009] Such location indications can comprise geolocation data obtained from a positioning system associated with the respective devices. Such location indications can also include an indication of whether a particular device has received an acknowledgement or ping directly from the other device using a localized communication interface or a network connection. For example, a localized communication interface can comprise a Bluetooth capability, a near-field communication (NFC) interface, a radio-frequency identification (RFID) read or write capability, or any other localized communication interface as can be appreciated. If the devices are out of communication range via the localized communication interface, one or both of the anchor device or companion device can communicate a location indication the policy server that the devices are no longer in proximity to one another.
[0010] With reference to FIG. 1 , shown is a networked environment 100 according to various embodiments. The networked environment 100 includes a computing environment 103, an anchor device 106, and a companion device 107 which are in data communication with each other through a network 113. The network 113 includes, for example, the Internet, one or more intranets, extranets, wide area networks (WANs), local area networks (LANs), wired networks, wireless networks, other suitable networks, or any combination of two or more such networks. For example, such networks may comprise satellite networks, cable networks, Ethernet networks, telephony networks, and other types of networks.
[0011] The computing environment 103 may comprise, for example, a server computer or any other system providing computing capability. Alternatively, the computing environment 103 may employ multiple computing devices that may be arranged, for example, in one or more server banks, computer banks, or other arrangements. Such computing devices may be located in a single installation or may be distributed among many different geographical locations. For example, the computing environment 103 may include multiple computing devices that together form a hosted computing resource, a grid computing resource, and/or any other distributed computing arrangement. In some cases, the computing environment 103 may correspond to an elastic computing resource where the allotted capacity of processing, network, storage, or other computing-related resources may vary over time. The computing environment 103 may also include or correspond to one or more virtualized server instances that are created in order to execute the functionality that is described herein.
[0012] Various systems and/or other functionality may be executed in the computing environment 103 according to various embodiments. Also, various data is stored in a data store 116 that is accessible to the computing environment 103. The data store 116 may be representative of a plurality of data stores 116. The data stored in the data store 116, for example, is associated with the operation of the various systems and/or functional entities described below.
[0013] A device management system 119 and/or other systems may be executed in the computing environment 103. The device management system 119 may be executed to manage and/or oversee the operation of multiple anchor devices 106 and/or companion devices 107. For example, an employer may operate the device management system 119 to ensure that the anchor devices 106 and/or companion devices 107 of its employees are operating in compliance with various compliance rules. By ensuring that the devices of its employees are operated in compliance with the compliance rules, the employer may control and protect access to various data. As another example, a device manufacturer or software provider may operate the device management system 119 and provide device management capabilities for consumers. For example, a parent may wish to monitor or restrict usage of a device of a child or another user in a household. The device management system 119 may also facilitate access to email, calendar data, contact information, documents, or other data to which an enterprise or other organization may wish to provide access by users via devices such as smartphones, computing devices, a device executing a browser application, mobile application, etc. [0014] In one embodiment, the device management system 119 may provide a management console 123 and/or other components. The management console 123 may facilitate operation and control of the device management system 119. For example, the management console 123 may generate one or more user interfaces that are rendered on a display device (not shown) or accessible using a browser executed by another computing device. Such user interfaces may facilitate entering commands or other information to facilitate configuration of the device management system 119. For example, a user may configure a proximity policy using a user interface generated by the management console 123.
[0015] The computing environment 103 may also execute a policy server 126 that facilitates the management of proximity based policies on behalf of users or organizations. The policy server 126 can obtain an indication of a location of various devices that are managed by the device management system 119 as well as determine whether policies are in place with respect to proximity of a particular device relative to another device. The policy server 126 can also transmit commands, or a security command 171, that specify a capability that can be enabled and/or disabled in a companion device 106 in response to detection of the proximity of a companion device 107 to an anchor device 106. In some embodiments, the policy server 126 can be implemented as functionality or logic that is embedded within the device management system 119. In some embodiments, the policy server 126 can also be implemented as a library for which an application programming interface (API) is provided and with which the functionality of the policy server 126 can be invoked by the device management system 119 or any other application or service. Some embodiments may also include the functionality of the policy server 126 being implemented within the anchor device 106 or the companion device 107 by an application executed therein.
[0016] The computing environment 103 may also execute other applications to facilitate interactions with an anchor device 106 or companion device 107, such as an application distribution service that distributes applications and/or updates for applications to the devices, a mail server that provides email services and/or functionality, a document storage application that provides remote document storage capability for users, or other applications or services that can be deployed to provide services for its users. Description of such applications or services is not necessary for a complete understanding of embodiments of the disclosure.
[0017] The data stored in the data store 116 may include user account data 129, and/or other information. The user account data 129 can include data associated with a user account, such as user profile information as well as information device identifiers 133, proximity policies 134 and other user account data. User profile information can include information about a user's address or location, permissions, and/or privileges with respect to usage of an enterprise device. User profile information can also include access settings such as authentication credentials, delegation settings (e.g., information about other users who may be provided access to the user account data 129 of a particular user), etc.
[0018] User account data 129 can also include information about a user account within the computing environment 103. For example, the user account may be associated with an email address or other identifier that is assigned by the computing environment 103. User account data 129 can also include other account settings, such as biographical or demographic information about a user, password reset information, multi-factor authentication settings, and other data related to a user account as can be appreciated. User account data 129 can also include other forms of data associated with users of an enterprise's computing resources that are not shown, such as a user's mailbox data, calendar data, contact data, and other user data. For example, mailbox data includes data associated with one or more mailboxes corresponding to a user account of a user.
[0019] The user account data 129 may also include information regarding one or more devices that are associated with a user's account, or device data 133. Such information can be stored as device identifiers, which can comprise any information from which a particular computing device can be identified by the proxy server 126 and/or device management system 119. For example, a device identifier may be a unique hardware identifier such as a GUID (Globally Unique Identifier), UUID (Universally Unique Identifier), UDID (Unique Device Identifier), serial number, IMEI (Internationally Mobile Equipment Identity), Wi-Fi MAC (Media Access Control) address, Bluetooth MAC address, a CPU ID, and/or the like, or any combination of two or more such hardware identifiers. Accordingly, a particular user account may be associated with multiple anchor devices 106 and/or companion devices 107 for which proximity policies 134 can be defined. Device data 133 can also include, for example, the identification of the particular applications that are installed in the anchor devices 106 and/or companion devices 107, historical data regarding the operation of the anchor devices 106 and/or companion devices 107, and/or other information.
[0020] User account data 129 can also include proximity policies 134. A proximity policy 134 can identify at least two devices associated with a particular user account. The proximity policy 134 can identify one of the devices as an anchor device 106 and another of the devices as a companion device 107. The proximity policy 134 can further specify a policy that can be placed upon the anchor device 106 and/or the companion device 107 when the devices are within proximity to one another. The proximity policy 134 can also specify a different policy that can be placed upon the anchor device 106 and/or the companion device 107 when the devices are not within proximity to one another.
[0021] The proximity policy 134 can also define a level of proximity necessary in order for an anchor device 106 and companion device 107 identified by a proximity policy 134 to be considered in proximity to one another. For example, in one embodiment, proximity of an anchor device 106 to a companion device 107 may be detected through a respective Bluetooth interface of the anchor device 106 and companion device 107. Accordingly, the proximity policy 134 can specify that a periodic ping or acknowledgement must be exchanged by the devices and such a ping or acknowledgement must be associated with a minimum signal strength. As another example, the proximity policy 134 can specify that in order to be considered in proximity to one another, that a ping or acknowledgement must be exchanged by the companion device 107 and anchor device 106 within a certain threshold time period.
[0022] The proximity policy 134 can also specify that the anchor device 106 and companion device 107 be within a certain geographic distance of one another based upon geolocation data that is reported by respective positioning systems (e.g., global positioning system capability). The proximity policy 134 can also specify that the anchor device 106 and companion device 107, in order to be considered in proximity with one another, should be associated with a common internet protocol (IP) address or an IP address within a certain range of one another. The proximity policy 134 can also specify that the anchor device 106 and companion device 107 be connected to the same router, switch or Internet gateway device in order to be considered in proximity with one another.
[0023] A proximity policy 134 can also specify actions that should be taken in response to a determination that the anchor device 106 and companion device 107 identified by the proximity policy 134 are not in proximity with one another to a degree specified by the proximity policy 134. For example, a proximity policy 134 can specify that if the devices are in proximity with one another, then a particular application can be used or executed on the companion device 107 but that the particular application cannot be used or executed if the devices are not in proximity. For example, the proximity policy 134 can specify that a browser application, a particular game application, or any other application can only be launched by the companion device 107 when it is determined to be in proximity with the anchor device 106. Otherwise, the particular application can be disabled. [0024] As another example, a proximity policy 134 can specify that if an anchor device 106 and companion device 107 are not in proximity with one another, that a hardware or software capability of the companion device 107 should be disabled. For example, the proximity rule 134 can specify that a network capability or an ability to access a local or wide area network should be disabled. In other words, the proximity rule 134 can specify that Internet access of the companion device 107 should be disabled. A proximity policy 134 can specify that if the anchor device 106 and companion device 107 are not in proximity, that a security requirement can be imposed upon the user, such as locking the display of the companion device 107 and requiring a password or personal identification number (PIN) to be entered in order for the companion device 107 to be accessed by the user. As another example of security requirement, one or more of various capabilities of the device can be disabled, such as a camera, Bluetooth interface, or other capabilities of the companion device 107.
[0025] The anchor device 106 and companion device 107 are representative of multiple client devices that may be coupled to the network 113. The anchor device 106 may comprise, for example, a processor-based system such as a computer system. Such a computer system may be embodied in the form of a desktop computer, a laptop computer, a personal digital assistant, a mobile phone (e.g., a "smartphone"), wearable computing device, a set-top box, a music player, a web pad, a tablet computer system, a game console, an electronic book reader, or any other device with like capability. The anchor device 106 and companion device 107 may include a display that comprises, for example, one or more devices such as liquid crystal display (LCD) displays, gas plasma-based flat panel displays, organic light emitting diode (OLED) displays, LCD projectors or other types of display devices.
[0026] The anchor device 106 and companion device 107 may be configured to execute one or more applications 141, an agent application 143, and/or other components. An application 141 may comprise, for example, one or more programs that perform various operations when executed in the anchor device 106 or companion device 107. Such an operation may comprise, for example, storing data, reading data, controlling a component for an anchor device 106 and/or companion device 107, and/or other functionality. An application 141 may perform some operations by initiating functions that are performed by an operating system in the anchor device 106 and/or companion device 107. An application 141 may initiate operating system functions by, for example, performing API calls. An application 141 can include any software that can be installed upon the anchor device 106 and companion device 107, such as a mail application, a browser application, a game, and other types of applications.
[0027] The agent application 143 may be executed on the anchor device 106 and companion device 107 to oversee, monitor, and/or manage at least a portion of the resources for the anchor device 106 and companion device 107. The agent application 143 may be executed by the anchor device 106 and companion device 107 automatically upon startup of the respective device. Additionally, the agent application 143 may run as a background process in the anchor device 106 and companion device 107. In other words, the agent application 143 may execute and/or run without user intervention. Additionally, the agent application 143 may communicate with the device management system 119 and policy server 126 in order to facilitate the management of the respective devices by the policy server 126 and/or device management system 119. For example, the agent application 143 can enforce proximity policies 134 that are specified for a particular anchor device 106 and/or companion device 107 on behalf of the policy server 126. In one scenario, the proximity policies 134 can be stored on an anchor device 106 or a companion device 107, which can enforce the proximity policy 134 by issuing a security command 171 through the agent application 143 in response to detecting that the companion device 107 is no longer in proximity to the anchor device 106. In this scenario, a proximity policy 134 can be enforced upon an anchor device 106 or a companion device 107 without requiring a location indication 169 to be provided to a policy server 126 that is executed by the computing environment 103.
[0028] Next, an additional description of the operation of the various components of the networked environment 100 is provided. To begin, a proximity policy 134 can be defined that specifies a policy that can be applied to an anchor device 106 and/or companion device 107 when the anchor device 106 and companion device 107 are in proximity to one another. In order to determine whether the anchor device 106 and companion device 107 are in proximity to one another, the policy server 126 can rely upon location indications 169 that are received from the agent application 143 or any other application executed by the anchor device 106 and companion device 107. The agent application 143 can be configured to periodically generate a location indication 169 that corresponds to a location of the anchor device 106 and/or companion device 107, respectively. The location indication 169 can also comprise an indication of whether the anchor device 106 and companion device 107 are in proximity to one another irrespective of the geographic location of the anchor device 106 and companion device 107.
[0029] A location indication 169 can comprise geolocation data obtained by the agent application 143 from a positioning system associated with the anchor device 106 and companion device 107, respectively. Accordingly, the policy server 126 can determine whether the anchor device 106 and/or companion device 107 are in proximity to one another based upon whether the geolocation data reflects that the anchor device 106 and/or companion device 107 are within a threshold distance from one another. In some embodiments, the proximity policy 134 associated with the anchor device 106 and/or companion device 107 can also specify such a threshold distance.
[0030] A location indication 169 can also comprise a network location of the anchor device 106 and companion device 107, respectively, such as an IP address or IP address subnet, a service set identification (SSID) of a wireless network to which the anchor device 106 and companion device 107 are respectively connected. A network location can also include any other aspects of a network interface or network connection of the anchor device 106 and companion device 107, respectively, to the network 113. Accordingly, the policy server 126 can determine whether the anchor device 106 and/or companion device 107 are in proximity to one another based upon the parameters of the network location of the anchor device 106 and/or companion device 107.
[0031] A location indication 169 can also include information about whether a ping or acknowledgement sent through a localized communication interface, such as Bluetooth, has been sent or received to or from the anchor device 106 and companion device 107, respectively. The agent application 143 can be configured to generate a ping that is transmitted from the anchor device 106 to the companion device 107 and vice-versa. Such a ping can be answered by the anchor device 106 and companion device 107 by an acknowledgement. Such a ping and/or acknowledgement can be transmitted by the agent application 143 using a localized communication interface such that they can only be successfully received by the anchor device 106 and/or companion device 107 when the devices are in proximity to one another.
[0032] Accordingly, a corresponding location indication 169 generated by the agent application 143 can include an indication of whether a previous ping generated by the agent application 143 executed by one of the anchor device 106 and/or companion device 107 was acknowledged by the other device. The policy server 126 can determine whether the anchor device 106 and/or companion device 107 are in proximity to one another based upon whether a ping was not acknowledged by one or both of the anchor device 106 and/or the companion device 107. The policy server 126 can also make this determination based upon whether a ping or acknowledgement of the anchor device 106 and/or companion device 107 has not been received for a threshold amount of time. The policy server 126 can also make a determination regarding proximity of the anchor device 106 and companion device 107 based upon a signal strength of a received acknowledgement. For example, if a signal strength does not meet a signal strength threshold, the policy server 126 can determine that the anchor device 106 and companion device 107 are not in proximity to one another.
[0033] In some embodiments, the agent application 143 executed by the anchor device 106 and/or companion device 107 can generate periodic transmissions that are sent to the other device using a localized communication interface. Accordingly, in the event that a transmission has not been received for a threshold amount of time, the agent application 143 can generate a location indication 169 that alerts the policy server 126 that the device from which the transmission was expected has not been received.
[0034] In response to determining that an anchor device 106 and companion device 107 are in proximity or not in proximity to one another, the policy server 126 can issue a security command 171 that instructs the agent application 143 to apply a policy that is specified by the proximity policy 134 associated with the anchor device 106 and companion device 107. For example, if the policy server 126 determines that the anchor device 106 and companion device 107 are within proximity to one another based upon location indicators 169 received from the anchor device 106 and companion device 107, the policy server 126 can issue a security command 171 to the companion device 107 with respect a functionality that is to be either enabled or disabled within the companion device 107 by the agent application 143. For example, the security command 171 can instruct the agent application 143 of the companion device 107 to enable access to a particular application if the anchor device 106 and companion device 107 are in proximity to one another.
[0035] Conversely, if the policy server 126 determines, based upon the location indicators 169, that the anchor device 106 and companion device 107 are no longer in proximity to one another, the policy server 126 can issue a security command 171 to the agent application 143 as specified by a respective proximity policy 143. Such a security command 171 can include a restriction that the agent application 143 can enforce upon the companion device 107 or a security requirement enforced upon the companion device 107 or the user of the companion device 107. In other words, the security command 171 can restrict a capability of the companion device 107 as a result of a lack or proximity to the anchor device 106. For example, the security command 171 can instruct the agent application 143 to disable a particular application installed on the companion device 107. The security command 171 can also instruct the agent application 143 to lock a display of the companion device 107 or impose any other type of security measure. The security command 171 can also restrict access by a user of the companion device 107 to content that is stored on the companion device 107, such as mail, documents, media or other content. Additionally, the security command 171 can restrict the ability of companion device 107 to communicate with other devices through the network 113.
[0036] Should proximity to the anchor device 106 be reestablished, the policy server 126 can issue another security command 171 that removes a restriction or enables a particular disabled functionality of the companion device 107. Additionally, in some embodiments, the agent application 143 executed by the anchor device 106 can be configured to issue a security command 171 directly to the companion device 107 or instruct the policy server 126 to issue a security command 171 that enables or disables certain restrictions or functionality irrespective of proximity of the anchor device 106 to the companion device 107. In other words, the anchor device 106, in some embodiments, can override the policy server 126 with respect to proximity policies 134.
[0037] Referring next to FIG. 2, shown is an example of an anchor device 106 and companion device 107 that are in proximity to one another. Such proximity is indicated visually in FIG. 2 by the overlapping circles 201 and 203. In the scenario illustrated in FIG. 2, the policy server 126 can determine that the anchor device 106 and companion device 107 are in proximity to one another based upon location indicators 169a and 169b received from the anchor device 106 and companion device 107. In the example shown in FIG. 2, the policy server 126 can determine that the anchor device 106 and companion device 107 are in proximity with one another and also determine whether a proximity policy 134 is associated with the anchor device 106 and companion device 107. If a proximity policy 134 is associated with the anchor device
106 and companion device 107, the policy server 126 can identify an action associated with the proximity policy 134 and issue a security command 171 to the companion device 107 that enables or disables a particular restriction or capability of the companion device 107.
[0038] Continuing the example of FIG. 2, reference is now made to FIG. 3A, which illustrates a scenario in which the anchor device 106 and companion device 107 are no longer within the prescribed proximity as defined by the proximity policy 134. As noted above, the policy server 126 can determine whether the anchor device 106 and companion device 107 are in proximity based upon location indicators 169c and 169d that are received from the anchor device 106 and companion device 107.
[0039] Therefore, referring to FIG. 3B, because the anchor device 106 and companion device
107 are no longer within proximity to one another as determined by the policy server 126, the policy server 126 can issue a security command 171 to the companion device 107 that comprises an action specified by a corresponding proximity policy 134. The proximity policy 134 can specify a capability of the companion device 107 that should be restricted or disabled now that the companion device 107 is no longer in proximity to the anchor device. The proximity policy 134 can also identify content stored on the companion device 107 and/or any other device that should be unavailable to the companion device 107 as a result of the lack of proximity to the anchor device 106. Accordingly, in the example of FIG. 3B, the policy server 126 can issue a security command 171 to the agent application 143 executed by the companion device 107, which can restrict or remove a capability of the companion device 107 on behalf of the policy server 126.
[0040] FIG. 3C illustrates an alternative scenario in which the anchor device 106 can be associated with multiple companion devices 107a and 107b. In the depicted scenario, because the anchor device 106 and companion device 107b are no longer within proximity to one another as determined by the policy server 126, the policy server 126 can issue a security command 171 to the companion device 107b that comprises an action specified by a corresponding proximity policy 134. However, because the anchor device 106 and companion device 107a are in proximity with one another, the policy server 126 can avoid issuing a security command 171 to the companion device 107b. As in the previous example, the proximity policy 134 can specify a capability of the companion device 107a, 107b that should be restricted or disabled should either companion device 107a or 107b move to a location that is no longer in proximity to the anchor device 106. Accordingly, in the example of FIG. 3C, the policy server 126 can issue a security command 171 to the agent application 143 executed by the companion device 107b, which can restrict or remove a capability of the companion device 107b on behalf of the policy server 126.
[0041] FIG. 3D presents an alternative scenario in which the anchor device 106 and companion device 107 are in proximity with one another. In the example of FIG. 3D, although the policy server 126 has not determined that the anchor device 106 and companion device 107 are not out of proximity with respect to one another, a user, using the anchor device 106, can cause a security command 171 to be generated and transmitted to the agent application 143 executed by the companion device 107. In this sense, the anchor device 106 can override a proximity policy 134 that is defined for a particular anchor device 106 and companion device 107. [0042] Referring next to FIG. 4, shown is a flowchart that provides one example of the operation of a portion of the policy server 126 according to various embodiments. It is understood that the flowchart of FIG. 4 provides merely an example of the many different types of functional arrangements that may be employed to implement the operation of the portion of the policy server 126 as described herein. As an alternative, the flowchart of FIG. 4 may be viewed as depicting an example of elements of a method implemented in the computing environment 103 (FIG. 1) according to one or more embodiments.
[0043] Beginning with box 401, the policy server 126 can obtain a location indication 169 from an anchor device 106. A location indication 169 can include geolocation data with respect to the anchor device 106, a network location of the anchor device 106 and/or an indication of proximity to the companion device 107 based upon data transmissions obtained from the companion device 107 using a localized communication interface. At box 403, the policy server 126 can obtain a location indication 169 from the companion device 107. Next, at box 405, the policy server 126 can determine whether a proximity policy 134 exists that identifies the anchor device 106 and companion device 107.
[0044] If a proximity policy 134 that is associated with the anchor device 106 and companion device 107 is identified, then at box 407 the policy server 126 determines whether the policy is violated. Otherwise, the process can proceed to completion at box 414. A proximity policy 134 can be violated should the companion device 107 no longer be in proximity to the anchor device 106 as defined by the proximity policy 134 and as determined by the proximity server 126. If the proximity policy 134 is violated, then at box 409, the policy server 126 can issue a security command 171 to the companion device 107. The security command 171 can comprise a command that instructs the companion device 107 and/or the agent application 143 to modify and/or restrict a functionality of the companion device 107. Otherwise, if the proximity policy 134 is not violated, then the process can proceed to completion at box 414. At box 411, the policy server 126 can determine whether an additional proximity policy 134 is associated with the anchor device 106 and the companion device 107. If so, then the process can proceed to box 407. Otherwise, the process can proceed to completion at box 414.
[0045] Referring next to FIG. 5, shown is a flowchart that provides one example of the operation of a portion of the agent application 143 executed by the anchor device 106 according to various embodiments. It is understood that the flowchart of FIG. 5 provides merely an example of the many different types of functional arrangements that may be employed to implement the operation of the portion of the anchor device 106 as described herein. As an alternative, the flowchart of FIG. 5 may be viewed as depicting an example of elements of a method implemented in the anchor device 106 (FIG. 1) according to one or more embodiments.
[0046] First, at box 501, the agent application 143 can generate a location indication 169 indicating a location of the anchor device 106 and/or the proximity of the anchor device 106 to a companion device 107. At box 503, the agent application 143 can transmit the location indication 169 to the policy server 126.
[0047] Referring next to FIG. 6, shown is a flowchart that provides one example of the operation of a portion of the agent application 143 executed by the companion device 107 according to various embodiments. It is understood that the flowchart of FIG. 6 provides merely an example of the many different types of functional arrangements that may be employed to implement the operation of the portion of the companion device 107 as described herein. As an alternative, the flowchart of FIG. 6 may be viewed as depicting an example of elements of a method implemented in the companion device 107 (FIG. 1) according to one or more embodiments.
[0048] First, at box 601, the agent application 143 can generate a location indication 169 indicating a location of the companion device 106 and/or the proximity of the companion device 107 to an anchor device 106. At box 603, the agent application 143 can transmit the location indication 169 to the policy server 126. At box 605, the agent application 143 can determine whether a security command 171 is received from the policy server 126. If so, then at box 607, the agent application 143 can identify a particular restriction identified by the security command 171. At box 609, the agent application 143 can apply the restriction identified by the security command to the companion device 107. The restriction specified by the security command 171 can alter or disable a particular capability of the companion device 107.
[0049] The anchor device 106, companion device 107 or devices comprising a computing environment can include at least one processor circuit, for example, having a processor and at least one memory device, both of which are coupled to a local interface, respectively. Such a device may comprise, for example, at least one computer, a mobile device, smartphone, computing device or like device. The local interface may comprise, for example, a data bus with an accompanying address/control bus or other bus structure as can be appreciated.
[0050] Stored in the memory device are both data and several components that are executable by the processor. In particular, stored in the one or more memory device and executable by the processor of such a device can be the policy server 126, agent application 143 and potentially other applications. Also stored in the memory may be a data store 113 and other data.
[0051] A number of software components are stored in the memory and are executable by a processor. In this respect, the term "executable" means a program file that is in a form that can ultimately be run by the processor. Examples of executable programs may be, for example, a compiled program that can be translated into machine code in a format that can be loaded into a random access portion of one or more of the memory devices and run by the processor, code that may be expressed in a format such as object code that is capable of being loaded into a random access portion of the one or more memory devices and executed by the processor, or code that may be interpreted by another executable program to generate instructions in a random access portion of the memory devices to be executed by the processor, etc. An executable program may be stored in any portion or component of the memory devices including, for example, random access memory (RAM), read-only memory (ROM), hard drive, solid-state drive, USB flash drive, memory card, optical disc such as compact disc (CD) or digital versatile disc (DVD), floppy disk, magnetic tape, or other memory components.
[0052] Memory can include both volatile and nonvolatile memory and data storage components. Also, a processor may represent multiple processors and/or multiple processor cores, and the one or more memory devices may represent multiple memories that operate in parallel processing circuits, respectively. Memory devices can also represent a combination of various types of storage devices, such as RAM, mass storage devices, flash memory, hard disk storage, etc. In such local interface may be an appropriate network that facilitates communication between any two of the multiple processors, between any processor and any of the memory devices, etc. A local interface may comprise additional systems designed to coordinate this communication, including, for example, performing load balancing. The processor may be of electrical or of some other available construction.
[0053] The authenticator device 106 and/or computing device 107 may include a display upon which a user interface generated by the file storage application 216 or another application can be rendered. The computing device 106 and/or computing device 107 may also include one or more input/output devices that may include, for example, a capacitive touchscreen or other type of touch input device, fingerprint reader, keyboard, etc.
[0054] Although the file storage application 216 and other various systems described herein may be embodied in software or code executed by general purpose hardware as discussed above, as an alternative the same may also be embodied in dedicated hardware or a combination of software/general purpose hardware and dedicated hardware. If embodied in dedicated hardware, each can be implemented as a circuit or state machine that employs any one of or a combination of a number of technologies. These technologies may include, but are not limited to, discrete logic circuits having logic gates for implementing various logic functions upon an application of one or more data signals, application specific integrated circuits (ASICs) having appropriate logic gates, field-programmable gate arrays (FPGAs), or other components, etc. Such technologies are generally well known by those skilled in the art and, consequently, are not described in detail herein.
[0055] The flowcharts show an example of the functionality and operation of an implementation of portions of components described herein. If embodied in software, each block may represent a module, segment, or portion of code that comprises program
instructions to implement the specified logical function(s). The program instructions may be embodied in the form of source code that comprises human-readable statements written in a programming language or machine code that comprises numerical instructions recognizable by a suitable execution system such as a processor in a computer system or other system. The machine code may be converted from the source code, etc. If embodied in hardware, each block may represent a circuit or a number of interconnected circuits to implement the specified logical function(s).
[0056] Although the flowcharts show a specific order of execution, it is understood that the order of execution may differ from that which is depicted. For example, the order of execution of two or more blocks may be scrambled relative to the order shown. Also, two or more blocks shown in succession may be executed concurrently or with partial concurrence. Further, in some embodiments, one or more of the blocks shown in the drawings may be skipped or omitted. In addition, any number of counters, state variables, warning semaphores, or messages might be added to the logical flow described herein, for purposes of enhanced utility, accounting, performance measurement, or providing troubleshooting aids, etc. It is understood that all such variations are within the scope of the present disclosure.
[0057] Also, any logic or application described herein that comprises software or code can be embodied in any non-transitory computer-readable medium for use by or in
connection with an instruction execution system such as, for example, a processor in a computer system or other system. In this sense, the logic may comprise, for example, statements including instructions and declarations that can be fetched from the computer- readable medium and executed by the instruction execution system. In the context of the present disclosure, a "computer-readable medium" can be any medium that can contain, store, or maintain the logic or application described herein for use by or in connection with the instruction execution system.
[0058] The computer-readable medium can comprise any one of many physical media such as, for example, magnetic, optical, or semiconductor media. More specific examples of a suitable computer-readable medium would include, but are not limited to, solid-state drives, flash memory, etc. Further, any logic or application described herein may be implemented and structured in a variety of ways. For example, one or more applications described may be implemented as modules or components of a single application. Further, one or more applications described herein may be executed in shared or separate computing devices or a combination thereof. For example, a plurality of the applications described herein may execute in the same computing device, or in multiple computing devices. Additionally, it is understood that terms such as "application," "service," "system," "engine," "module," and so on may be interchangeable and are not intended to be limiting.
[0059] It is emphasized that the above-described embodiments of the present disclosure are merely possible examples of implementations set forth for a clear understanding of the principles of the disclosure. Many variations and modifications may be made to the above- described embodiments without departing substantially from the spirit and principles of the disclosure. All such modifications and variations are intended to be included herein within the scope of this disclosure and protected by the following claims.

Claims

CLAIMS Therefore, the following is claimed:
1. A non-transitory computer-readable medium embodying program code executable in a computing device, the program code being configured to cause the computing device to at least:
obtain a first location indication associated with an anchor device, the first location indication being at least one of a geographic location or a network location of the anchor device;
obtain a second location indication associated with a companion device, the second location indication being at least one of a geographic location or a network location of the companion device;
identify a policy stored in a data store that associates the anchor device and the companion device;
determine whether the policy is violated based at least in part upon the first location indication and the second location indication; and
issue a command to the companion device in response to a determination that the policy is violated based at least in part upon the first location indication and the second location indication, the command comprising at least one of a restriction on a capability of the companion device or a security requirement imposed on a user of the companion device.
2. The non-transitory computer-readable medium of claim 1, wherein the restriction on the capability comprises a prohibition with respect to launching a particular application by the companion device.
3. The non- transitory computer-readable medium of claim 2, wherein the particular application comprises a browser application.
4. The non-transitory computer-readable medium of claim 1, wherein the first location indication or the second location indication comprises at least one of: location data obtained by a positioning system or a network address.
5. The non- transitory computer-readable medium of claim 1 , wherein the policy is determined to be violated based at least in part upon the difference between the first location indication and the second location indication when the second location is determined to be more than a threshold distance from the first location.
6. The non-transitory computer-readable medium of claim 1, wherein the first location or the second location comprise at least one communication between the anchor device and the companion device using a first localized communication interface associated with the anchor device and a second localized communication interface associated with the companion device.
7. The non-transitory computer-readable medium of claim 6, wherein the first localized communication interface and the second localized communication interface comprise at least one of a Bluetooth interface, a near-field communication (NFC) interface or a radio- frequency identification (RFID) interface.
8. The non- transitory computer-readable medium of claim 1, wherein the restriction on the capability comprises restricting access to content stored on the companion device.
9. The non-transitory computer-readable medium of claim 1, wherein the command comprises a command to lock a display device associated with the companion device.
10. A method comprising:
establishing a proximity policy for selectively enforcing a restriction upon at least one of an anchor device or a companion device, wherein the restriction is unrelated to enabling or disabling of communication between the anchor device and the companion device;
transmit a first location indicator to at least one of a policy server accessible using a network or an agent application executed by at least one of the anchor device or the companion device, the first location indicator indicating a location of the companion device relative to the anchor device; and
obtain a command from the at least one of the policy server or the agent application in response to the first location indicator, the command being related to a proximity of the computing device to an anchor device, the proximity being determined based upon the first location indicator, the command further specifying the restriction enforced upon at least one of the anchor device or the companion device.
11. The method of claim 10, wherein the command specifies a restriction with respect to executing a particular application installed on the companion device.
12. The method of claim 11, wherein the restriction disables launching of the particular application.
13. The method of claim 10, wherein the command enables a functionality of the companion device in response to the first location indicator.
14. The method of claim 10, wherein the command disables a networking capability of the computing device.
15. The method of claim 10, wherein the command is obtained further in response to a second location indicator associated with the anchor device.
16. A method, comprising:
obtaining, in at least one computing device, a first location indicator corresponding to a location of a first computing device relative to a second computing device;
determining, in the at least one computing device, whether a policy is associated with the first computing device and the second computing device, the policy specifying a restriction or a security requirement associated with the first computing device based upon a proximity of the first computing device to the second computing device;
determining, in the at least one computing device, whether the first computing device complies with the policy based upon the proximity; and
issuing, from the at least one computing device, a command specified by the policy.
17. The method of claim 16, wherein the command specifies the restriction or the security requirement associated with the first computing device based upon whether the first computing device complies with the policy based upon the proximity.
18. The method of claim 16, wherein the first location indicator comprises an indication that the first computing device is outside of a communication range of a localized communication interface of the first computing device.
19. The method of claim 16, wherein the command disables a communication interface associated with the first computing device.
20. The method of claim 16, wherein the command disables a particular application installed on the first computing device.
PCT/US2015/066891 2014-12-22 2015-12-18 Enforcement of proximity based policies WO2016106150A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/579,314 2014-12-22
US14/579,314 US9584964B2 (en) 2014-12-22 2014-12-22 Enforcement of proximity based policies

Publications (1)

Publication Number Publication Date
WO2016106150A1 true WO2016106150A1 (en) 2016-06-30

Family

ID=56131118

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2015/066891 WO2016106150A1 (en) 2014-12-22 2015-12-18 Enforcement of proximity based policies

Country Status (2)

Country Link
US (2) US9584964B2 (en)
WO (1) WO2016106150A1 (en)

Families Citing this family (131)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10491587B2 (en) * 2013-10-28 2019-11-26 Singou Technology Ltd. Method and device for information system access authentication
US10212136B1 (en) 2014-07-07 2019-02-19 Microstrategy Incorporated Workstation log-in
US10237309B2 (en) * 2015-11-25 2019-03-19 International Business Machines Corporation Managing virtual desktop infrastructure data sharing
US10231128B1 (en) 2016-02-08 2019-03-12 Microstrategy Incorporated Proximity-based device access
US10855664B1 (en) 2016-02-08 2020-12-01 Microstrategy Incorporated Proximity-based logical access
US20220164840A1 (en) 2016-04-01 2022-05-26 OneTrust, LLC Data processing systems and methods for integrating privacy information management systems with data loss prevention tools or other tools for privacy design
US11244367B2 (en) 2016-04-01 2022-02-08 OneTrust, LLC Data processing systems and methods for integrating privacy information management systems with data loss prevention tools or other tools for privacy design
US11004125B2 (en) 2016-04-01 2021-05-11 OneTrust, LLC Data processing systems and methods for integrating privacy information management systems with data loss prevention tools or other tools for privacy design
US10225740B2 (en) * 2016-05-12 2019-03-05 Zscaler, Inc. Multidimensional risk profiling for network access control of mobile devices through a cloud based security system
US10511607B2 (en) * 2016-05-12 2019-12-17 Zscaler, Inc. Multidimensional risk profiling for network access control of mobile devices through a cloud based security system
US11228620B2 (en) 2016-06-10 2022-01-18 OneTrust, LLC Data processing systems for data-transfer risk identification, cross-border visualization generation, and related methods
US10606916B2 (en) 2016-06-10 2020-03-31 OneTrust, LLC Data processing user interface monitoring systems and related methods
US10467432B2 (en) 2016-06-10 2019-11-05 OneTrust, LLC Data processing systems for use in automatically generating, populating, and submitting data subject access requests
US11727141B2 (en) 2016-06-10 2023-08-15 OneTrust, LLC Data processing systems and methods for synching privacy-related user consent across multiple computing devices
US11416589B2 (en) 2016-06-10 2022-08-16 OneTrust, LLC Data processing and scanning systems for assessing vendor risk
US11354435B2 (en) 2016-06-10 2022-06-07 OneTrust, LLC Data processing systems for data testing to confirm data deletion and related methods
US11475136B2 (en) 2016-06-10 2022-10-18 OneTrust, LLC Data processing systems for data transfer risk identification and related methods
US10949565B2 (en) 2016-06-10 2021-03-16 OneTrust, LLC Data processing systems for generating and populating a data inventory
US11200341B2 (en) 2016-06-10 2021-12-14 OneTrust, LLC Consent receipt management systems and related methods
US11366786B2 (en) 2016-06-10 2022-06-21 OneTrust, LLC Data processing systems for processing data subject access requests
US11675929B2 (en) 2016-06-10 2023-06-13 OneTrust, LLC Data processing consent sharing systems and related methods
US10740487B2 (en) 2016-06-10 2020-08-11 OneTrust, LLC Data processing systems and methods for populating and maintaining a centralized database of personal data
US10565161B2 (en) 2016-06-10 2020-02-18 OneTrust, LLC Data processing systems for processing data subject access requests
US10944725B2 (en) 2016-06-10 2021-03-09 OneTrust, LLC Data processing systems and methods for using a data model to select a target data asset in a data migration
US10607028B2 (en) 2016-06-10 2020-03-31 OneTrust, LLC Data processing systems for data testing to confirm data deletion and related methods
US10565236B1 (en) 2016-06-10 2020-02-18 OneTrust, LLC Data processing systems for generating and populating a data inventory
US11025675B2 (en) 2016-06-10 2021-06-01 OneTrust, LLC Data processing systems and methods for performing privacy assessments and monitoring of new versions of computer code for privacy compliance
US11418492B2 (en) 2016-06-10 2022-08-16 OneTrust, LLC Data processing systems and methods for using a data model to select a target data asset in a data migration
US10885485B2 (en) 2016-06-10 2021-01-05 OneTrust, LLC Privacy management systems and methods
US10878127B2 (en) 2016-06-10 2020-12-29 OneTrust, LLC Data subject access request processing systems and related methods
US10592648B2 (en) 2016-06-10 2020-03-17 OneTrust, LLC Consent receipt management systems and related methods
US11188862B2 (en) 2016-06-10 2021-11-30 OneTrust, LLC Privacy management systems and methods
US10896394B2 (en) 2016-06-10 2021-01-19 OneTrust, LLC Privacy management systems and methods
US11146566B2 (en) 2016-06-10 2021-10-12 OneTrust, LLC Data processing systems for fulfilling data subject access requests and related methods
US11222309B2 (en) 2016-06-10 2022-01-11 OneTrust, LLC Data processing systems for generating and populating a data inventory
US11410106B2 (en) 2016-06-10 2022-08-09 OneTrust, LLC Privacy management systems and methods
US11074367B2 (en) * 2016-06-10 2021-07-27 OneTrust, LLC Data processing systems for identity validation for consumer rights requests and related methods
US11151233B2 (en) 2016-06-10 2021-10-19 OneTrust, LLC Data processing and scanning systems for assessing vendor risk
US10909488B2 (en) 2016-06-10 2021-02-02 OneTrust, LLC Data processing systems for assessing readiness for responding to privacy-related incidents
US11222139B2 (en) 2016-06-10 2022-01-11 OneTrust, LLC Data processing systems and methods for automatic discovery and assessment of mobile software development kits
US10839102B2 (en) 2016-06-10 2020-11-17 OneTrust, LLC Data processing systems for identifying and modifying processes that are subject to data subject access requests
US10503926B2 (en) 2016-06-10 2019-12-10 OneTrust, LLC Consent receipt management systems and related methods
US11461500B2 (en) 2016-06-10 2022-10-04 OneTrust, LLC Data processing systems for cookie compliance testing with website scanning and related methods
US11520928B2 (en) 2016-06-10 2022-12-06 OneTrust, LLC Data processing systems for generating personal data receipts and related methods
US10678945B2 (en) 2016-06-10 2020-06-09 OneTrust, LLC Consent receipt management systems and related methods
US10169609B1 (en) 2016-06-10 2019-01-01 OneTrust, LLC Data processing systems for fulfilling data subject access requests and related methods
US11416590B2 (en) 2016-06-10 2022-08-16 OneTrust, LLC Data processing and scanning systems for assessing vendor risk
US11157600B2 (en) 2016-06-10 2021-10-26 OneTrust, LLC Data processing and scanning systems for assessing vendor risk
US11100444B2 (en) 2016-06-10 2021-08-24 OneTrust, LLC Data processing systems and methods for providing training in a vendor procurement process
US10510031B2 (en) 2016-06-10 2019-12-17 OneTrust, LLC Data processing systems for identifying, assessing, and remediating data processing risks using data modeling techniques
US11392720B2 (en) 2016-06-10 2022-07-19 OneTrust, LLC Data processing systems for verification of consent and notice processing and related methods
US11138242B2 (en) 2016-06-10 2021-10-05 OneTrust, LLC Data processing systems and methods for automatically detecting and documenting privacy-related aspects of computer software
US10685140B2 (en) 2016-06-10 2020-06-16 OneTrust, LLC Consent receipt management systems and related methods
US10997318B2 (en) 2016-06-10 2021-05-04 OneTrust, LLC Data processing systems for generating and populating a data inventory for processing data access requests
US11341447B2 (en) 2016-06-10 2022-05-24 OneTrust, LLC Privacy management systems and methods
US11354434B2 (en) 2016-06-10 2022-06-07 OneTrust, LLC Data processing systems for verification of consent and notice processing and related methods
US11416798B2 (en) 2016-06-10 2022-08-16 OneTrust, LLC Data processing systems and methods for providing training in a vendor procurement process
US10873606B2 (en) 2016-06-10 2020-12-22 OneTrust, LLC Data processing systems for data-transfer risk identification, cross-border visualization generation, and related methods
US11343284B2 (en) 2016-06-10 2022-05-24 OneTrust, LLC Data processing systems and methods for performing privacy assessments and monitoring of new versions of computer code for privacy compliance
US11366909B2 (en) 2016-06-10 2022-06-21 OneTrust, LLC Data processing and scanning systems for assessing vendor risk
US11222142B2 (en) 2016-06-10 2022-01-11 OneTrust, LLC Data processing systems for validating authorization for personal data collection, storage, and processing
US11188615B2 (en) 2016-06-10 2021-11-30 OneTrust, LLC Data processing consent capture systems and related methods
US11210420B2 (en) 2016-06-10 2021-12-28 OneTrust, LLC Data subject access request processing systems and related methods
US11416109B2 (en) 2016-06-10 2022-08-16 OneTrust, LLC Automated data processing systems and methods for automatically processing data subject access requests using a chatbot
US11294939B2 (en) 2016-06-10 2022-04-05 OneTrust, LLC Data processing systems and methods for automatically detecting and documenting privacy-related aspects of computer software
US11238390B2 (en) 2016-06-10 2022-02-01 OneTrust, LLC Privacy management systems and methods
US11057356B2 (en) 2016-06-10 2021-07-06 OneTrust, LLC Automated data processing systems and methods for automatically processing data subject access requests using a chatbot
US11336697B2 (en) 2016-06-10 2022-05-17 OneTrust, LLC Data processing systems for data-transfer risk identification, cross-border visualization generation, and related methods
US10997315B2 (en) 2016-06-10 2021-05-04 OneTrust, LLC Data processing systems for fulfilling data subject access requests and related methods
US11138299B2 (en) 2016-06-10 2021-10-05 OneTrust, LLC Data processing and scanning systems for assessing vendor risk
US11023842B2 (en) 2016-06-10 2021-06-01 OneTrust, LLC Data processing systems and methods for bundled privacy policies
US11087260B2 (en) 2016-06-10 2021-08-10 OneTrust, LLC Data processing systems and methods for customizing privacy training
US11277448B2 (en) 2016-06-10 2022-03-15 OneTrust, LLC Data processing systems for data-transfer risk identification, cross-border visualization generation, and related methods
US11403377B2 (en) 2016-06-10 2022-08-02 OneTrust, LLC Privacy management systems and methods
US10909265B2 (en) 2016-06-10 2021-02-02 OneTrust, LLC Application privacy scanning systems and related methods
US10284604B2 (en) 2016-06-10 2019-05-07 OneTrust, LLC Data processing and scanning systems for generating and populating a data inventory
US11562097B2 (en) 2016-06-10 2023-01-24 OneTrust, LLC Data processing systems for central consent repository and related methods
US11301796B2 (en) 2016-06-10 2022-04-12 OneTrust, LLC Data processing systems and methods for customizing privacy training
US11295316B2 (en) * 2016-06-10 2022-04-05 OneTrust, LLC Data processing systems for identity validation for consumer rights requests and related methods
US11227247B2 (en) 2016-06-10 2022-01-18 OneTrust, LLC Data processing systems and methods for bundled privacy policies
US11481710B2 (en) 2016-06-10 2022-10-25 OneTrust, LLC Privacy management systems and methods
US11544667B2 (en) 2016-06-10 2023-01-03 OneTrust, LLC Data processing systems for generating and populating a data inventory
US11636171B2 (en) 2016-06-10 2023-04-25 OneTrust, LLC Data processing user interface monitoring systems and related methods
US11438386B2 (en) 2016-06-10 2022-09-06 OneTrust, LLC Data processing systems for data-transfer risk identification, cross-border visualization generation, and related methods
US10318761B2 (en) 2016-06-10 2019-06-11 OneTrust, LLC Data processing systems and methods for auditing data request compliance
US10846433B2 (en) 2016-06-10 2020-11-24 OneTrust, LLC Data processing consent management systems and related methods
US11651104B2 (en) 2016-06-10 2023-05-16 OneTrust, LLC Consent receipt management systems and related methods
US11651106B2 (en) 2016-06-10 2023-05-16 OneTrust, LLC Data processing systems for fulfilling data subject access requests and related methods
US11134086B2 (en) 2016-06-10 2021-09-28 OneTrust, LLC Consent conversion optimization systems and related methods
US11144622B2 (en) 2016-06-10 2021-10-12 OneTrust, LLC Privacy management systems and methods
US10796260B2 (en) 2016-06-10 2020-10-06 OneTrust, LLC Privacy management systems and methods
US11586700B2 (en) 2016-06-10 2023-02-21 OneTrust, LLC Data processing systems and methods for automatically blocking the use of tracking tools
US11328092B2 (en) 2016-06-10 2022-05-10 OneTrust, LLC Data processing systems for processing and managing data subject access in a distributed environment
US10282559B2 (en) 2016-06-10 2019-05-07 OneTrust, LLC Data processing systems for identifying, assessing, and remediating data processing risks using data modeling techniques
US10783256B2 (en) 2016-06-10 2020-09-22 OneTrust, LLC Data processing systems for data transfer risk identification and related methods
US11625502B2 (en) 2016-06-10 2023-04-11 OneTrust, LLC Data processing systems for identifying and modifying processes that are subject to data subject access requests
US10803200B2 (en) 2016-06-10 2020-10-13 OneTrust, LLC Data processing systems for processing and managing data subject access in a distributed environment
US11038925B2 (en) 2016-06-10 2021-06-15 OneTrust, LLC Data processing systems for data-transfer risk identification, cross-border visualization generation, and related methods
US10853501B2 (en) 2016-06-10 2020-12-01 OneTrust, LLC Data processing and scanning systems for assessing vendor risk
US10592692B2 (en) 2016-06-10 2020-03-17 OneTrust, LLC Data processing systems for central consent repository and related methods
KR101715142B1 (en) * 2016-08-29 2017-03-14 주식회사 리얼야구존 A screen baseball game method using a mobile device
US11843577B2 (en) * 2016-12-13 2023-12-12 Zscaler, Inc. Fingerprinting to identify devices and applications for use in management and policy in the cloud
US11134386B2 (en) * 2016-12-13 2021-09-28 Zscaler, Inc. Device identification for management and policy in the cloud
US11140157B1 (en) 2017-04-17 2021-10-05 Microstrategy Incorporated Proximity-based access
US10771458B1 (en) 2017-04-17 2020-09-08 MicoStrategy Incorporated Proximity-based user authentication
US10657242B1 (en) * 2017-04-17 2020-05-19 Microstrategy Incorporated Proximity-based access
US10013577B1 (en) 2017-06-16 2018-07-03 OneTrust, LLC Data processing systems for identifying whether cookies contain personally identifying information
US10445487B2 (en) * 2017-07-20 2019-10-15 Singou Technology (Macau) Ltd. Methods and apparatus for authentication of joint account login
CN111492358B (en) 2017-12-22 2023-06-16 英国电讯有限公司 Device authentication
GB2569804A (en) * 2017-12-22 2019-07-03 British Telecomm Device authentication
US10803202B2 (en) 2018-09-07 2020-10-13 OneTrust, LLC Data processing systems for orphaned data identification and deletion and related methods
US11544409B2 (en) 2018-09-07 2023-01-03 OneTrust, LLC Data processing systems and methods for automatically protecting sensitive data within privacy management systems
US11144675B2 (en) 2018-09-07 2021-10-12 OneTrust, LLC Data processing systems and methods for automatically protecting sensitive data within privacy management systems
US11194374B2 (en) * 2019-07-30 2021-12-07 Dell Products L.P. Systems and methods for waking an information handling system from a wireless peripheral device
US11599683B2 (en) 2019-11-18 2023-03-07 Microstrategy Incorporated Enforcing authorization policies for computing devices
US11057702B1 (en) 2019-12-20 2021-07-06 Microsoft Technology Licensing, Llc Method and system for reducing audio feedback
US11797528B2 (en) 2020-07-08 2023-10-24 OneTrust, LLC Systems and methods for targeted data discovery
US11444976B2 (en) 2020-07-28 2022-09-13 OneTrust, LLC Systems and methods for automatically blocking the use of tracking tools
WO2022032072A1 (en) 2020-08-06 2022-02-10 OneTrust, LLC Data processing systems and methods for automatically redacting unstructured data from a data subject access request
US11436373B2 (en) 2020-09-15 2022-09-06 OneTrust, LLC Data processing systems and methods for detecting tools for the automatic blocking of consent requests
US20230334158A1 (en) 2020-09-21 2023-10-19 OneTrust, LLC Data processing systems and methods for automatically detecting target data transfers and target data processing
EP4241173A1 (en) 2020-11-06 2023-09-13 OneTrust LLC Systems and methods for identifying data processing activities based on data discovery results
US11687528B2 (en) 2021-01-25 2023-06-27 OneTrust, LLC Systems and methods for discovery, classification, and indexing of data in a native computing system
WO2022170047A1 (en) 2021-02-04 2022-08-11 OneTrust, LLC Managing custom attributes for domain objects defined within microservices
US20240111899A1 (en) 2021-02-08 2024-04-04 OneTrust, LLC Data processing systems and methods for anonymizing data samples in classification analysis
WO2022173912A1 (en) 2021-02-10 2022-08-18 OneTrust, LLC Systems and methods for mitigating risks of third-party computing system functionality integration into a first-party computing system
WO2022178089A1 (en) 2021-02-17 2022-08-25 OneTrust, LLC Managing custom workflows for domain objects defined within microservices
WO2022178219A1 (en) 2021-02-18 2022-08-25 OneTrust, LLC Selective redaction of media content
US11533315B2 (en) 2021-03-08 2022-12-20 OneTrust, LLC Data transfer discovery and analysis systems and related methods
US11562078B2 (en) 2021-04-16 2023-01-24 OneTrust, LLC Assessing and managing computational risk involved with integrating third party computing functionality within a computing system
US11620142B1 (en) 2022-06-03 2023-04-04 OneTrust, LLC Generating and customizing user interfaces for demonstrating functions of interactive user environments

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030020623A1 (en) * 2001-02-28 2003-01-30 International Business Machines Corporation Group notification system and method for implementing and indicating the proximity of individuals or groups to other individuals or groups
JP2007304009A (en) * 2006-05-12 2007-11-22 Yafoo Japan Corp Method and system for finding movement means from positional information
JP2011234084A (en) * 2010-04-27 2011-11-17 Kddi Corp Terminal control system, terminal control method and program
WO2013109040A1 (en) * 2012-01-16 2013-07-25 엘지전자 주식회사 Method and apparatus for providing proximity service in wireless communication system
EP2675137A1 (en) * 2012-06-13 2013-12-18 Apple Inc. System and method of determining location of wireless communication devices / persons for controlling / adjusting operation of devices based on the location

Family Cites Families (252)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5666530A (en) 1992-12-02 1997-09-09 Compaq Computer Corporation System for automatic synchronization of common file between portable computer and host computer via communication channel selected from a plurality of usable channels there between
US6618668B1 (en) 2000-04-26 2003-09-09 Arrivalstar, Inc. System and method for obtaining vehicle schedule information in an advance notification system
US6748318B1 (en) 1993-05-18 2004-06-08 Arrivalstar, Inc. Advanced notification systems and methods utilizing a computer network
US6278936B1 (en) 1993-05-18 2001-08-21 Global Research Systems, Inc. System and method for an advance notification system for monitoring and reporting proximity of a vehicle
US5668876A (en) 1994-06-24 1997-09-16 Telefonaktiebolaget Lm Ericsson User authentication method and apparatus
US5574786A (en) 1995-02-06 1996-11-12 International Business Machines Corporation Securing trusted personal computer system against unauthorized movement
US6226622B1 (en) 1995-11-27 2001-05-01 Alan James Dabbiere Methods and devices utilizing a GPS tracking system
JPH10111727A (en) 1996-10-03 1998-04-28 Toshiba Corp Information equipment having telephone function and security rearising method therefor
US6021492A (en) 1996-10-09 2000-02-01 Hewlett-Packard Company Software metering management of remote computing devices
US6708221B1 (en) 1996-12-13 2004-03-16 Visto Corporation System and method for globally and securely accessing unified information in a computer network
US20060195595A1 (en) 2003-12-19 2006-08-31 Mendez Daniel J System and method for globally and securely accessing unified information in a computer network
US6131116A (en) 1996-12-13 2000-10-10 Visto Corporation System and method for globally accessing computer services
US6023708A (en) 1997-05-29 2000-02-08 Visto Corporation System and method for using a global translator to synchronize workspace elements across a network
US7287271B1 (en) 1997-04-08 2007-10-23 Visto Corporation System and method for enabling secure access to services in a computer network
US6085192A (en) 1997-04-11 2000-07-04 Roampage, Inc. System and method for securely synchronizing multiple copies of a workspace element in a network
US6766454B1 (en) 1997-04-08 2004-07-20 Visto Corporation System and method for using an authentication applet to identify and authenticate a user in a computer network
GB2361558B (en) 1997-05-28 2003-07-23 Ericsson Telefon Ab L M A method for securing access to a remote system
DE19722424C5 (en) 1997-05-28 2006-09-14 Telefonaktiebolaget Lm Ericsson (Publ) Method of securing access to a remote system
US6151606A (en) 1998-01-16 2000-11-21 Visto Corporation System and method for using a workspace data manager to access, manipulate and synchronize network data
US20030110084A1 (en) 1998-03-04 2003-06-12 Martin Forest Eberhard Secure content distribution system
US7792297B1 (en) 1998-03-31 2010-09-07 Piccionelli Greg A System and process for limiting distribution of information on a communication network based on geographic location
US6779118B1 (en) 1998-05-04 2004-08-17 Auriq Systems, Inc. User specific automatic data redirection system
US6233341B1 (en) 1998-05-19 2001-05-15 Visto Corporation System and method for installing and using a temporary certificate at a remote site
US6131096A (en) 1998-10-05 2000-10-10 Visto Corporation System and method for updating a remote database in a network
US6553375B1 (en) 1998-11-25 2003-04-22 International Business Machines Corporation Method and apparatus for server based handheld application and database management
US6078260A (en) * 1998-12-21 2000-06-20 Sony Corporation Method and apparatus for keeping track of children
US7430757B1 (en) 1999-01-08 2008-09-30 International Business Machines Corporation Oblivious proxying using a secure coprocessor
US7373517B1 (en) 1999-08-19 2008-05-13 Visto Corporation System and method for encrypting and decrypting files
US6560772B1 (en) 1999-10-15 2003-05-06 International Business Machines Corporation Method, system, and program for accessing data in different environments
US7363361B2 (en) 2000-08-18 2008-04-22 Akamai Technologies, Inc. Secure content delivery system
WO2001046833A2 (en) 1999-12-23 2001-06-28 Logistics.Com, Inc. Bid positioning system
US7739334B1 (en) 2000-03-17 2010-06-15 Visto Corporation System and method for automatically forwarding email and email events via a computer network to a server computer
US10552583B2 (en) 2000-03-21 2020-02-04 Gregory A. Piccionelli Secure portable computer and security method
WO2001091002A2 (en) 2000-05-22 2001-11-29 Manhattan Associates System, method and apparatus for integrated supply chain management
US10684350B2 (en) 2000-06-02 2020-06-16 Tracbeam Llc Services and applications for a communications network
US7991697B2 (en) 2002-12-16 2011-08-02 Irdeto Usa, Inc. Method and system to digitally sign and deliver content in a geographically controlled manner via a network
JP2002082917A (en) 2000-07-04 2002-03-22 Sony Computer Entertainment Inc Contents distribution method, contents distribution server, and client terminal in contents distribution infrastructure
US7225231B2 (en) 2000-09-20 2007-05-29 Visto Corporation System and method for transmitting workspace elements across a network
WO2002041661A2 (en) 2000-11-06 2002-05-23 Qualcomm Incorporated Method and apparatus for preventing access to information stored at a node
US7660902B2 (en) 2000-11-20 2010-02-09 Rsa Security, Inc. Dynamic file access control and management
US7512806B2 (en) 2000-11-30 2009-03-31 Palmsource, Inc. Security technique for controlling access to a network by a wireless device
US20030164853A1 (en) 2000-12-29 2003-09-04 Min Zhu Distributed document sharing
US7702785B2 (en) 2001-01-31 2010-04-20 International Business Machines Corporation Methods, systems and computer program products for selectively allowing users of a multi-user system access to network resources
US7603703B2 (en) 2001-04-12 2009-10-13 International Business Machines Corporation Method and system for controlled distribution of application code and content data within a computer network
US6996841B2 (en) 2001-04-19 2006-02-07 Microsoft Corporation Negotiating secure connections through a proxy server
US7228383B2 (en) 2001-06-01 2007-06-05 Visto Corporation System and method for progressive and hierarchical caching
US7284045B1 (en) 2001-06-01 2007-10-16 Visto Corporation Method and system for determining information to access an electronic mail account
US7444375B2 (en) 2001-06-19 2008-10-28 Visto Corporation Interactive voice and text message system
US7562112B2 (en) 2001-07-06 2009-07-14 Intel Corporation Method and apparatus for peer-to-peer services for efficient transfer of information between networks
US20030009595A1 (en) 2001-07-09 2003-01-09 Roger Collins System and method for compressing data using field-based code word generation
US7064688B2 (en) 2001-07-09 2006-06-20 Good Technology, Inc. System and method for compressing data on a bandwidth-limited network
US7308710B2 (en) 2001-09-28 2007-12-11 Jp Morgan Chase Bank Secured FTP architecture
EP1451718B1 (en) 2001-10-23 2012-08-08 Beechwood Limited Partnership System and method for merging remote and local data in a single user interface
US7752166B2 (en) 2001-11-15 2010-07-06 Visto Corporation System and methods for asynchronous synchronization
US8108687B2 (en) 2001-12-12 2012-01-31 Valve Corporation Method and system for granting access to system and content
US7496957B2 (en) 2002-01-02 2009-02-24 Hewlett-Packard Development Company, L.P. System and method for preventing use of a wireless device
US6741232B1 (en) 2002-01-23 2004-05-25 Good Technology, Inc. User interface for a data processing apparatus
JP2005539409A (en) 2002-03-01 2005-12-22 エンテラシス ネットワークス インコーポレイテッド Position recognition data network
US8094591B1 (en) 2002-03-19 2012-01-10 Good Technology, Inc. Data carrier detector for a packet-switched communication network
US7788382B1 (en) 2002-03-26 2010-08-31 Good Technology, Inc. Server initiated synchronization
US7310535B1 (en) 2002-03-29 2007-12-18 Good Technology, Inc. Apparatus and method for reducing power consumption in a wireless device
US7447506B1 (en) 2002-03-29 2008-11-04 Good Technology, Inc. Apparatus and method for reducing network congestion
US6726106B1 (en) 2002-04-02 2004-04-27 Good Technology, Inc. Power management and device illumination mechanisms for a personal digital assistant
US20030204716A1 (en) 2002-04-24 2003-10-30 Rockwood Troy Dean System and methods for digital content distribution
US7447799B2 (en) 2002-04-24 2008-11-04 Good Technology, Inc. System and method for automatically updating a wireless device
US6727856B1 (en) 2002-06-06 2004-04-27 Good Technology, Inc. Antenna system for a wireless device
JP3707449B2 (en) 2002-06-10 2005-10-19 ソニー株式会社 COMMUNICATION METHOD, COMMUNICATION SYSTEM, AND COMMUNICATION DEVICE
US7032181B1 (en) 2002-06-18 2006-04-18 Good Technology, Inc. Optimized user interface for small screen devices
CA2391717A1 (en) 2002-06-26 2003-12-26 Ibm Canada Limited-Ibm Canada Limitee Transferring data and storing metadata across a network
US7339484B2 (en) 2002-06-27 2008-03-04 Hewlett-Packard Development Company, L.P. Event-driven discovery method and apparatus
TW588243B (en) 2002-07-31 2004-05-21 Trek 2000 Int Ltd System and method for authentication
US8012219B2 (en) 2002-08-09 2011-09-06 Visto Corporation System and method for preventing access to data on a compromised remote device
US7437752B2 (en) 2002-09-23 2008-10-14 Credant Technologies, Inc. Client architecture for portable device with security policies
US20060190984A1 (en) 2002-09-23 2006-08-24 Credant Technologies, Inc. Gatekeeper architecture/features to support security policy maintenance and distribution
US7665125B2 (en) 2002-09-23 2010-02-16 Heard Robert W System and method for distribution of security policies for mobile devices
US7665118B2 (en) 2002-09-23 2010-02-16 Credant Technologies, Inc. Server, computer memory, and method to support security policy maintenance and distribution
EP1408391A1 (en) 2002-10-11 2004-04-14 Telefonaktiebolaget LM Ericsson (publ) Method of associating authentication information of a trusted device to an identifier of a non-trusted device
US7353533B2 (en) 2002-12-18 2008-04-01 Novell, Inc. Administration of protection of data accessible by a mobile device
US7308703B2 (en) 2002-12-18 2007-12-11 Novell, Inc. Protection of data accessible by a mobile device
US7363349B2 (en) 2003-01-31 2008-04-22 Visto Corporation Asynchronous real-time retrieval of data
US7203959B2 (en) 2003-03-14 2007-04-10 Symantec Corporation Stream scanning through network proxy servers
US6995749B2 (en) 2003-03-28 2006-02-07 Good Technology, Inc. Auto font magnification mechanism
GB0308991D0 (en) 2003-04-17 2003-05-28 Psion Digital Ltd A data access replication or communication system comprising a distributed software application
US7275073B2 (en) 2003-05-07 2007-09-25 Good Technology, Inc. System and method for notifying mobile devices based on device type and network capabilities
US7890091B2 (en) 2003-05-08 2011-02-15 Good Technology, Inc. Collaborative data and intelligent synchronization for mobile devices
US7840631B2 (en) 2003-05-09 2010-11-23 Good Technology, Inc. Multimedia control with one-click device selection
US20040224703A1 (en) 2003-05-09 2004-11-11 Takaki Steven M. Method and system for enhancing venue participation by venue participants
US7184801B2 (en) 2003-05-12 2007-02-27 Good Technology, Inc. Mobile application builder
US7676681B2 (en) 2003-06-17 2010-03-09 Veratad Technologies, Llc Method, system, and apparatus for identification number authentication
US20140143852A1 (en) 2008-08-21 2014-05-22 Ntrepid Corporation Secure network privacy system
US6977587B2 (en) 2003-07-09 2005-12-20 Hewlett-Packard Development Company, L.P. Location aware device
US7515717B2 (en) 2003-07-31 2009-04-07 International Business Machines Corporation Security containers for document components
US7735122B1 (en) 2003-08-29 2010-06-08 Novell, Inc. Credential mapping
ATE349039T1 (en) 2003-09-03 2007-01-15 France Telecom APPARATUS AND METHOD FOR DISTRIBUTING CONTENT ACCESS DATA
US20050081055A1 (en) 2003-10-10 2005-04-14 Bea Systems, Inc. Dynamically configurable distributed security system
US7421741B2 (en) 2003-10-20 2008-09-02 Phillips Ii Eugene B Securing digital content system and method
US20050097032A1 (en) 2003-10-29 2005-05-05 Lucent Technologies Inc. Network support for automatic credit for dropped calls
US7039394B2 (en) 2003-11-25 2006-05-02 Good Technology, Inc. Communication system and method for compressing information sent by a communication device to a target portable communication device
US8639819B2 (en) 2004-02-05 2014-01-28 Nokia Corporation Ad-hoc connection between electronic devices
US7194273B2 (en) 2004-02-12 2007-03-20 Lucent Technologies Inc. Location based service restrictions for mobile applications
US8843413B2 (en) 2004-02-13 2014-09-23 Microsoft Corporation Binding content to a domain
ATE349122T1 (en) 2004-02-13 2007-01-15 Sony Ericsson Mobile Comm Ab METHOD AND DEVICE FOR MESSAGE DELIVERY
CA2560271A1 (en) 2004-03-18 2005-09-29 Francisco Jauffred Transportation management system and method for shipment planning optimization
US7543146B1 (en) 2004-06-18 2009-06-02 Blue Coat Systems, Inc. Using digital certificates to request client consent prior to decrypting SSL communications
US8051292B2 (en) 2004-06-28 2011-11-01 Nds Limited System for proximity determination
JP4552540B2 (en) 2004-07-09 2010-09-29 ソニー株式会社 Content recording apparatus, content reproducing apparatus, content recording method, content reproducing method, and program
GB0420409D0 (en) 2004-09-14 2004-10-20 Waterleaf Ltd Online commercial transaction system and method of operation thereof
EP1792469A1 (en) 2004-09-17 2007-06-06 Koninklijke Philips Electronics N.V. Proximity check server
US7475152B2 (en) 2004-09-20 2009-01-06 International Business Machines Corporation Approach to provide self-protection function to web content at client side
US8270320B2 (en) 2004-09-30 2012-09-18 Avaya Inc. Method and apparatus for launching a conference based on presence of invitees
US7620001B2 (en) 2004-10-13 2009-11-17 Good Technology, Inc. Communication system and method with mobile devices
US8001082B1 (en) 2004-10-28 2011-08-16 Good Technology, Inc. System and method of data security in synchronizing data with a wireless device
GB0427643D0 (en) 2004-12-17 2005-01-19 Carnall Murat Method and apparatus for recording events
US7448023B2 (en) 2005-02-25 2008-11-04 Microsoft Corporation Method and system for verifying rule compliance of an application object
US7970386B2 (en) 2005-06-03 2011-06-28 Good Technology, Inc. System and method for monitoring and maintaining a wireless device
US7590403B1 (en) 2005-06-07 2009-09-15 Good Technology, Inc. Wireless device dormancy override
US9418040B2 (en) 2005-07-07 2016-08-16 Sciencelogic, Inc. Dynamically deployable self configuring distributed network management system
CA2615659A1 (en) 2005-07-22 2007-05-10 Yogesh Chunilal Rathod Universal knowledge management and desktop search system
IL171722A (en) 2005-11-01 2011-12-29 Eci Telecom Ltd Access system for the provisioning of different communication services and method for using same
US20070130473A1 (en) 2005-12-02 2007-06-07 Mazotas James S System and method for access control
US20070136492A1 (en) 2005-12-08 2007-06-14 Good Technology, Inc. Method and system for compressing/decompressing data for communication with wireless devices
US8006289B2 (en) 2005-12-16 2011-08-23 International Business Machines Corporation Method and system for extending authentication methods
US8621549B2 (en) 2005-12-29 2013-12-31 Nextlabs, Inc. Enforcing control policies in an information management system
US20070162417A1 (en) 2006-01-10 2007-07-12 Kabushiki Kaisha Toshiba System and method for selective access to restricted electronic documents
US7702322B1 (en) 2006-02-27 2010-04-20 Good Technology, Llc Method and system for distributing and updating software in wireless devices
US7620392B1 (en) 2006-02-27 2009-11-17 Good Technology, Inc. Method and system for distributing and updating software in wireless devices
WO2007106539A2 (en) 2006-03-14 2007-09-20 Internoded, Inc. Apparatus and method for provisioning wireless data communication devices
CA2647737A1 (en) 2006-03-31 2007-10-11 Visto Corporation System and method for searching disparate datastores via a remote device
US20070261099A1 (en) 2006-05-02 2007-11-08 Broussard Scott J Confidential content reporting system and method with electronic mail verification functionality
US8989778B2 (en) 2006-06-01 2015-03-24 Green Dot Corporation Secure and private location sharing for location-aware mobile communication devices
US8745227B2 (en) 2006-06-07 2014-06-03 Apple Inc. Distributed secure content delivery
US7917963B2 (en) 2006-08-09 2011-03-29 Antenna Vaultus, Inc. System for providing mobile data security
US20080065727A1 (en) 2006-09-13 2008-03-13 Majors Kenneth D Conferencing system with improved access
US20090298514A1 (en) 2006-09-14 2009-12-03 Shah Ullah Real world behavior measurement using identifiers specific to mobile devices
US8046823B1 (en) 2006-10-03 2011-10-25 Stamps.Com Inc. Secure application bridge server
US7769394B1 (en) 2006-10-06 2010-08-03 Sprint Communications Company L.P. System and method for location-based device control
US8538028B2 (en) 2006-11-20 2013-09-17 Toposis Corporation System and method for secure electronic communication services
GB2446199A (en) 2006-12-01 2008-08-06 David Irvine Secure, decentralised and anonymous peer-to-peer network
US9411976B2 (en) 2006-12-01 2016-08-09 Maidsafe Foundation Communication system and method
US20080160984A1 (en) 2006-12-30 2008-07-03 Motorola, Inc. Method and apparatus for altering mobile device behavior based on rfid tag discovery
US9324074B2 (en) * 2007-01-17 2016-04-26 Eagency, Inc. Mobile communication device monitoring systems and methods
WO2008103608A2 (en) 2007-02-19 2008-08-28 Ondeego, Inc. Methods and system to create applications and distribute applications to a remote device
US8687536B2 (en) 2007-02-23 2014-04-01 Qualcomm Incorporated Method and apparatus to create multicast groups based on proximity
US8181206B2 (en) 2007-02-28 2012-05-15 Time Warner Cable Inc. Personal content server apparatus and methods
US8472874B2 (en) 2007-03-14 2013-06-25 Apple Inc. Method and system for pairing of wireless devices using physical presence
US8225085B2 (en) 2007-06-05 2012-07-17 Blue Coat Systems, Inc. System and method for distributed SSL processing between co-operating nodes
US20080318548A1 (en) 2007-06-19 2008-12-25 Jose Bravo Method of and system for strong authentication and defense against man-in-the-middle attacks
US8060074B2 (en) 2007-07-30 2011-11-15 Mobile Iron, Inc. Virtual instance architecture for mobile device management systems
US8379867B2 (en) 2007-09-24 2013-02-19 Mymail Technology, Llc Secure email communication system
US8160247B2 (en) 2007-09-27 2012-04-17 Adobe Systems Incorporated Providing local storage service to applications that run in an application execution environment
US7890743B2 (en) 2007-09-28 2011-02-15 Avaya Inc. Method and apparatus for configuring a device based on proximity to another device
US8456293B1 (en) * 2007-10-22 2013-06-04 Alarm.Com Incorporated Providing electronic content based on sensor data
CN101965563A (en) 2007-11-05 2011-02-02 维斯托公司 Service management system & associated methodology of providing service related message prioritization in a mobile client
JP5172405B2 (en) 2007-11-15 2013-03-27 ソニー株式会社 Wireless communication apparatus, wireless communication system, program, and wireless communication method
US20090186633A1 (en) 2008-01-17 2009-07-23 Garmin Ltd. Location-based profile-adjusting system and method for electronic device
US11159909B2 (en) 2008-02-05 2021-10-26 Victor Thomas Anderson Wireless location establishing device
US8447303B2 (en) 2008-02-07 2013-05-21 Research In Motion Limited Method and system for automatic seamless mobility
US9185554B2 (en) 2008-02-15 2015-11-10 Appcentral, Inc. System and methods to store, retrieve, manage, augment and monitor applications on appliances
WO2009129337A1 (en) 2008-04-15 2009-10-22 Problem Resolution Enterprise, Llc Method and process for registering a device to verify transactions
US8209744B2 (en) 2008-05-16 2012-06-26 Microsoft Corporation Mobile device assisted secure computer network communication
US8910255B2 (en) 2008-05-27 2014-12-09 Microsoft Corporation Authentication for distributed secure content management system
US8763071B2 (en) 2008-07-24 2014-06-24 Zscaler, Inc. Systems and methods for mobile application security classification and enforcement
US8566961B2 (en) 2008-08-08 2013-10-22 Absolute Software Corporation Approaches for a location aware client
WO2010028194A1 (en) 2008-09-05 2010-03-11 Tim Collins System, apparatus and associated methodology for enriching contact of a remote client
US8555351B2 (en) 2008-09-29 2013-10-08 International Business Machines Corporation Trusted database authentication through an untrusted intermediary
US20100087144A1 (en) 2008-10-02 2010-04-08 Roni Korenshtein Short Range Exchange of Information
JP4730421B2 (en) 2008-10-10 2011-07-20 ソニー株式会社 Wireless communication method
US8346234B2 (en) 2008-11-08 2013-01-01 Absolute Software Corporation Secure platform management with power savings capacity
US8260320B2 (en) 2008-11-13 2012-09-04 Apple Inc. Location specific content
US8909925B2 (en) 2008-11-17 2014-12-09 Prakash Baskaran System to secure electronic content, enforce usage policies and provide configurable functionalities
US8156435B2 (en) 2008-11-25 2012-04-10 At&T Intellectual Property I, L.P. Systems and methods to select media content
US8219536B2 (en) 2008-11-25 2012-07-10 At&T Intellectual Property I, L.P. Systems and methods to select media content
US20100138667A1 (en) 2008-12-01 2010-06-03 Neil Patrick Adams Authentication using stored biometric data
US9557889B2 (en) 2009-01-28 2017-01-31 Headwater Partners I Llc Service plan design, user interfaces, application programming interfaces, and device management
US20100222645A1 (en) * 2009-02-27 2010-09-02 Verizon Patent And Licensing Inc. Health and wellness monitoring system
US8171292B2 (en) 2009-04-08 2012-05-01 Research In Motion Limited Systems, devices, and methods for securely transmitting a security parameter to a computing device
US8695058B2 (en) 2009-05-20 2014-04-08 Mobile Iron, Inc. Selective management of mobile device data in an enterprise environment
US20100299152A1 (en) 2009-05-20 2010-11-25 Mobile Iron, Inc. Selective Management of Mobile Devices in an Enterprise Environment
US8898748B2 (en) 2009-05-21 2014-11-25 Mobile Iron, Inc. Remote verification for configuration updates
US20100299362A1 (en) 2009-05-24 2010-11-25 Roger Frederick Osmond Method for controlling access to data containers in a computer system
US20100317371A1 (en) 2009-06-12 2010-12-16 Westerinen William J Context-based interaction model for mobile devices
US8032666B2 (en) 2009-06-12 2011-10-04 Microsoft Corporation Location enabled bookmark and profile
US8214862B1 (en) 2009-07-13 2012-07-03 Sprint Communications Company L.P. Conserving bandwidth by restricting videos communicated in a wireless telecommunications network
US8706272B2 (en) 2009-08-14 2014-04-22 Apple Inc. Adaptive encoding and compression of audio broadcast data
US8984657B2 (en) 2009-09-08 2015-03-17 Appcentral, Inc. System and method for remote management of applications downloaded to a personal portable wireless appliance
DE102009045684A1 (en) 2009-10-14 2011-04-21 Robert Bosch Gmbh Protection against electromagnetic interference
US8744490B2 (en) 2009-12-03 2014-06-03 Osocad Remote Limited Liability Company System and method for migrating agents between mobile devices
US8494142B2 (en) 2009-12-04 2013-07-23 International Business Machines Corporation Methods to improve fraud detection on conference calling systems based on observation of participants' call time durations
US9258715B2 (en) 2009-12-14 2016-02-09 Apple Inc. Proactive security for mobile devices
JP4746725B1 (en) 2009-12-14 2011-08-10 住友電工ネットワークス株式会社 Content receiving apparatus, content reproducing apparatus, content receiving / reproducing apparatus, content receiving method, and program
JP5370131B2 (en) 2009-12-22 2013-12-18 セイコーエプソン株式会社 Image display apparatus and control method
CN102111759A (en) 2009-12-28 2011-06-29 中国移动通信集团公司 Authentication method, system and device
US8825732B2 (en) 2010-02-15 2014-09-02 Unwired Planet, Llc Scripting/proxy systems, methods and circuit arrangements
US9135434B2 (en) 2010-04-19 2015-09-15 Appcentral, Inc. System and method for third party creation of applications for mobile appliances
US8411834B2 (en) 2010-04-27 2013-04-02 Cox Communications, Inc. Device-to-device call disposition
US8560151B2 (en) 2010-05-11 2013-10-15 Cartasite, Inc. Dynamic monitoring of mobile railway car undercarriage
US9350708B2 (en) 2010-06-01 2016-05-24 Good Technology Corporation System and method for providing secured access to services
US8447986B2 (en) 2010-06-23 2013-05-21 Microsoft Corporation Accessing restricted content based on proximity
US9558476B2 (en) 2010-07-01 2017-01-31 Good Technology Holdings Limited Method and device for editing workspace data objects
US20120011007A1 (en) 2010-07-07 2012-01-12 At&T Intellectual Property I, L.P. Mobile Payment Using DTMF Signaling
KR101814600B1 (en) 2010-08-26 2018-01-30 삼성전자주식회사 Method and apparatus for connecting communication
US20120094639A1 (en) 2010-10-15 2012-04-19 Mark Carlson Heat maps applying location-based information to transaction processing data
US9576068B2 (en) 2010-10-26 2017-02-21 Good Technology Holdings Limited Displaying selected portions of data sets on display devices
EP2448303B1 (en) 2010-11-01 2014-02-26 BlackBerry Limited Method and system for securing data of a mobile communications device
US20120203620A1 (en) 2010-11-08 2012-08-09 Douglas Howard Dobyns Techniques For Wireless Communication Of Proximity Based Marketing
US9037395B2 (en) 2010-12-20 2015-05-19 Tomtom International B.V. Mobile device that operates differently in different regions
US8566923B2 (en) 2011-02-01 2013-10-22 Rockwell Automation Technologies, Inc. Enhanced organization and automatic navigation of display screens facilitating automation control
US8577391B2 (en) 2011-03-31 2013-11-05 Verizon Patent And Licensing Inc. Providing a location-based service using real-time radio access network (RAN) modeling
EP2697996A4 (en) 2011-04-12 2014-10-29 Citrix Systems Inc Server remotely executing an application using geographic location data of a mobile device
GB2490310A (en) 2011-04-18 2012-10-31 Nearfield Comm Ltd Method and system for controlling access to a service.
US8789133B2 (en) 2011-04-20 2014-07-22 Cisco Technology, Inc. Location based content filtering and dynamic policy
US8958559B2 (en) 2011-06-03 2015-02-17 Apple Inc. System and method for secure instant messaging
US9119067B2 (en) 2011-06-03 2015-08-25 Apple Inc. Embodiments of a system and method for securely managing multiple user handles across multiple data processing devices
US9078128B2 (en) 2011-06-03 2015-07-07 Apple Inc. System and method for secure identity service
US9071518B2 (en) 2011-07-01 2015-06-30 Fiberlink Communications Corporation Rules based actions for mobile device management
US8423511B1 (en) 2011-07-07 2013-04-16 Symantec Corporation Systems and methods for securing data on mobile devices
WO2013007677A2 (en) 2011-07-10 2013-01-17 Blendology Limited An electronic data sharing device and method of use
EP2730080B1 (en) 2011-07-10 2018-03-07 Blendology Limited An electronic data sharing device and method of use
WO2013007683A1 (en) 2011-07-10 2013-01-17 Blendology Limited An electronic data sharing device and method of use
WO2013007682A1 (en) 2011-07-10 2013-01-17 Blendology Limited An electronic data sharing device and method of use
US8850536B2 (en) 2011-08-05 2014-09-30 Safefaces LLC Methods and systems for identity verification in a social network using ratings
US8571538B2 (en) 2011-08-10 2013-10-29 Qualcomm Incorporated Web-based parental controls for wireless devices
US8699998B2 (en) 2011-08-10 2014-04-15 Qualcomm Incorporated Controlling text messages on a mobile device
US8898750B2 (en) 2011-08-23 2014-11-25 Cisco Technology, Inc. Connecting remote and local networks using an identification device associated with the remote network
US9659165B2 (en) 2011-09-06 2017-05-23 Crimson Corporation Method and apparatus for accessing corporate data from a mobile device
MY183320A (en) 2011-09-19 2021-02-18 E Lock Corp Sdn Bhd Method of controlling access to an internet-based application
US8713646B2 (en) 2011-12-09 2014-04-29 Erich Stuntebeck Controlling access to resources on a network
US9171146B2 (en) 2011-12-14 2015-10-27 Intel Corporation Method and system for monitoring calls to an application program interface (API) function
US8622836B2 (en) 2011-12-22 2014-01-07 Igt Use of wireless signal strength to determine connection
US9009794B2 (en) 2011-12-30 2015-04-14 Rovi Guides, Inc. Systems and methods for temporary assignment and exchange of digital access rights
US20130226696A1 (en) 2012-02-24 2013-08-29 Meetme, Inc. Social discovery system using computing device proximity
US8774041B2 (en) 2012-03-02 2014-07-08 Qualcomm Incorporated Proximity-based wireless handshaking for connection establishment
US8769003B2 (en) 2012-05-09 2014-07-01 Qualcomm Innovation Center, Inc. Method for proximity determination between mobile peers while maintaining privacy
BR102012010913A2 (en) 2012-05-09 2014-05-13 Hangar 4 Projetos Ltda METHOD FOR DATA COMMUNICATION BETWEEN DEVICES THROUGH SOUND WAVES
CN103947151A (en) 2012-08-24 2014-07-23 索尼公司 Information processing device, information storage device, server, information processing system, information processing method, and program
US8862155B2 (en) 2012-08-30 2014-10-14 Time Warner Cable Enterprises Llc Apparatus and methods for enabling location-based services within a premises
KR101974820B1 (en) 2012-09-10 2019-08-23 삼성전자주식회사 Method for controlling a device and device performing the same
US10042603B2 (en) * 2012-09-20 2018-08-07 Samsung Electronics Co., Ltd. Context aware service provision method and apparatus of user device
US8770484B2 (en) 2012-09-21 2014-07-08 Alcatel Lucent Data exchange using streamed barcodes
US8990895B2 (en) 2012-09-23 2015-03-24 Farhad David Nosrati Method and apparatus for a portable wireless security device
US8904186B2 (en) 2012-09-28 2014-12-02 Intel Corporation Multi-factor authentication process
US20140096180A1 (en) * 2012-09-28 2014-04-03 Ansuya Negi System, devices, and methods for proximity-based parental controls
US9253811B2 (en) 2012-10-19 2016-02-02 Verizon Patent And Licensing Inc. Network-assisted device-to-device communication
US9252896B2 (en) 2012-12-10 2016-02-02 Qualcomm Incorporated Efficient means of broadcast and relaying information between wireless terminals
US9451551B2 (en) 2012-12-21 2016-09-20 Apple Inc. Controlling a power state of a cellular packet data subsystem in a portable electronic device
US9910499B2 (en) 2013-01-11 2018-03-06 Samsung Electronics Co., Ltd. System and method for detecting three dimensional gestures to initiate and complete the transfer of application data between networked devices
US20140213179A1 (en) 2013-01-29 2014-07-31 Einar Rosenberg System and Method for Establishing Communications between Two Devices
US9848276B2 (en) 2013-03-11 2017-12-19 Rovi Guides, Inc. Systems and methods for auto-configuring a user equipment device with content consumption material
US9432361B2 (en) 2013-03-13 2016-08-30 Lookout, Inc. System and method for changing security behavior of a device based on proximity to another device
US10754966B2 (en) 2013-04-13 2020-08-25 Airwatch Llc Time-based functionality restrictions
US10251059B2 (en) * 2014-01-21 2019-04-02 Everykey Inc. Authentication device and method
US10025612B2 (en) 2016-03-18 2018-07-17 Airwatch Llc Enforcing compliance rules against hypervisor and host device using guest management components

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030020623A1 (en) * 2001-02-28 2003-01-30 International Business Machines Corporation Group notification system and method for implementing and indicating the proximity of individuals or groups to other individuals or groups
JP2007304009A (en) * 2006-05-12 2007-11-22 Yafoo Japan Corp Method and system for finding movement means from positional information
JP2011234084A (en) * 2010-04-27 2011-11-17 Kddi Corp Terminal control system, terminal control method and program
WO2013109040A1 (en) * 2012-01-16 2013-07-25 엘지전자 주식회사 Method and apparatus for providing proximity service in wireless communication system
EP2675137A1 (en) * 2012-06-13 2013-12-18 Apple Inc. System and method of determining location of wireless communication devices / persons for controlling / adjusting operation of devices based on the location

Also Published As

Publication number Publication date
US20170155684A1 (en) 2017-06-01
US9584964B2 (en) 2017-02-28
US20160183164A1 (en) 2016-06-23
US10194266B2 (en) 2019-01-29

Similar Documents

Publication Publication Date Title
US10194266B2 (en) Enforcement of proximity based policies
US10445082B2 (en) Persistent mobile device enrollment
US10454942B2 (en) Managed clone applications
US9721112B2 (en) Passive compliance violation notifications
US11720393B2 (en) Enforcing compliance rules using guest management components
EP2973250B1 (en) Incremental compliance remediation
JP6412140B2 (en) Make sure to allow access to remote resources
EP2992702B1 (en) Location-based configuration profile toggling
US10025612B2 (en) Enforcing compliance rules against hypervisor and host device using guest management components
US10187425B2 (en) Issuing security commands to a client device
US20170134405A1 (en) Dynamic Honeypot System
US10505983B2 (en) Enforcing enterprise requirements for devices registered with a registration service
US11259235B2 (en) Blocking functionality on a smart device
US10440508B2 (en) Location-based organizational groupings for management services
US20180157457A1 (en) Enforcing display sharing profiles on a client device sharing display activity with a display sharing application
WO2015152894A1 (en) Device-type based content management
JPWO2014155498A1 (en) Electronics
US9569433B1 (en) Mobile application analytics
EP2992701B1 (en) Time-based configuration policy toggling

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15874210

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15874210

Country of ref document: EP

Kind code of ref document: A1