US20070039039A1 - Authorization of device access to network services - Google Patents

Authorization of device access to network services Download PDF

Info

Publication number
US20070039039A1
US20070039039A1 US11/201,232 US20123205A US2007039039A1 US 20070039039 A1 US20070039039 A1 US 20070039039A1 US 20123205 A US20123205 A US 20123205A US 2007039039 A1 US2007039039 A1 US 2007039039A1
Authority
US
United States
Prior art keywords
network
computing device
access
authorization
security
Prior art date
Legal status (The legal status 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 status listed.)
Abandoned
Application number
US11/201,232
Inventor
Mark Gilbert
Ron Mevissen
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Priority to US11/201,232 priority Critical patent/US20070039039A1/en
Assigned to MICROSOFT CORPORATION reassignment MICROSOFT CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: GILBERT, MARK, MEVISSEN, RON J.
Priority to PCT/US2006/029408 priority patent/WO2007021495A2/en
Publication of US20070039039A1 publication Critical patent/US20070039039A1/en
Priority to US13/752,665 priority patent/US9680810B2/en
Assigned to MICROSOFT TECHNOLOGY LICENSING, LLC reassignment MICROSOFT TECHNOLOGY LICENSING, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MICROSOFT CORPORATION
Priority to US15/595,830 priority patent/US10225256B2/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2101Auditing as a secondary aspect
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2129Authenticate client device independently of the user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2149Restricted operating environment

Definitions

  • Network security can be generally summarized as systems for controlling who can access what computing resources. For example, can a particular employee access a file with sensitive information? Will a software application or device with minimal built-in security safeguards be allowed to connect and retrieve data from a database?
  • An exemplary system might provide outsiders with some low level of access to network resources, for example through web pages hosted by one or more web servers.
  • outsiders e.g., employees within the various corporate departments
  • user groups may be defined who have access to, and control over, the computing resources they need.
  • an accounting group may have access to spreadsheet programs and all accounting data, but may not have access to product development data, and furthermore may not have administrative control over network connection settings.
  • Network security administration in such a setting may be carried out by an Information Technology (IT) department with a number of highly trained professionals.
  • IT Information Technology
  • the resources required by the IT department are justified by increased efficiency and loss prevention throughout the organization.
  • home networks and many other small business or less professionally managed networks, referred to herein as lightweight networks may not have any network security.
  • the lack of security in lightweight networks is a limiting factor in their development. Poor security erodes user confidence in allowing new devices to connect to their network, and in allowing operation of distributed applications.
  • Securing a lightweight network is difficult because there are less resources to devote to security procedures.
  • Most home network owners don't want to manage or organize their network in any way. Furthermore, they don't like leaving a computer on twenty-four hours a day to act as an authentication machine. They also shun network security because they don't want to take the chance of a computer reboot or malfunction stopping some other process or device in the network. For example, if a home user in an electronically advanced home employed corporate-style network security, they run the risk of interruption when watching a movie, because of a malfunctioning computer responsible for network security. Similarly, a security issue may render light controls or other systems unresponsive, which may demand immediate attention.
  • Another significant problem in providing usable network security for lightweight networks is that devices are continually entering, leaving, and rejoining the network. Devices are turned off, rebooted, brought to work, brought home, purchased and brought home for the first time, and so forth. Users do not want to endure any lengthy network configuration process each time such events occur. Moreover, users generally don't want to be forced to add users and explicitly restrict/enable permissions before using services in the lightweight network or adding a new device. Users may want to set security policies for specific areas, but normally after everything in the network is running properly, and not as a requirement.
  • systems and methods are provided for authorization of device access to network services. Once authorized, devices can access any allowed network services, and can leave and rejoin the network.
  • a new device entering a network sends an authorization request to a security service.
  • Another device in the network an authorizing device which provides the security service, may receive the request and display a User Interface (UI) which prompts a user to approve the new device.
  • the authorizing device may also broadcast the authorization request to other authorizing devices in the network.
  • the user can use a new device identifier in approving the new device. If the new device identifier provided by the device matches a new device identifier available to the security service, the user authorizes the new device.
  • a key is then generated for the new device, which allows access to an appropriate range of network services. Subsequent access to network services may be made by the new device so long as the key is valid.
  • Authorization decisions can be synchronized among the various devices in the network, so even if the original authorizing device leaves the network, the new device key can be validated by other authorizing devices. New devices entering the network may have the security service replicated in the new device, so that they can also serve as authorizing devices.
  • FIG. 1 illustrates a network 100 of computing devices in which the invention may be implemented.
  • computing devices 101 - 110 may be in the network 100
  • computing devices 120 - 122 may enter or rejoin the network 100
  • computing devices 131 - 133 may exit the network 100 .
  • Software 150 - 152 for obtaining and/or authorizing access to network services may be implemented on any of the computing devices.
  • FIG. 2 a is a flow diagram illustrating a process for authorizing a computing device to access network services.
  • FIG. 2 b is a flow diagram illustrating an alternative embodiment of a process for authorizing a computing device to access network services.
  • FIG. 3 is a flow diagram illustrating a process for an authorized computing device to access a network service.
  • FIG. 4 is a flow diagram illustrating a process for synchronizing security information among the various computing devices in a network.
  • FIG. 5 provides a flow diagram illustrating a process for authorizing a computing device to access a network service.
  • FIG. 6 illustrates a basic computing device to precisely point out the various elements of a computing device suitable for use in the context of the invention.
  • FIG. 7 illustrates various functional elements of a computing device which may be used in a process for obtaining authorization to access a network service.
  • the invention is a security mechanism and method that is designed around security and usability considerations for lightweight networks such as home and small business networks.
  • Lightweight networks have unique requirements compared to traditional corporate or IT supported networks. There is often no central computing device running at all times, devices may regularly enter, leave, and rejoin the network, and the available resources for network administration are low.
  • Web services are examples of network services, which may generally be understood as applications that may be accessed remotely by devices connected to a network.
  • a home lighting system may be controlled via an application on a networked computing device, and features and functions of the lighting system application may be accessible via the network.
  • the lighting system application in such a scenario is a network service.
  • a network service may be hosted or provided by a particular networked computing device, such as a server. It may also be hosted by a plurality of computing devices in a distributed computing configuration. Furthermore, it may be hosted by a number of computing devices that may synchronize with one another from time to time to ensure proper cooperation.
  • a security service contemplated for use in conjunction with the invention comprises a number of security functions accessible to devices connecting to a network.
  • the security service can provide a gateway through which devices must pass in order to access other network services. This is implemented by issuing a key that must be used to access secured network services.
  • Functions of the security service may comprise device authorization, device validation, synchronization of security information, and replication of security service functionality. These functions will be described in detail below.
  • FIG. 1 illustrates a network 100 of computing devices.
  • computers 101 and 102 , scanner 103 , television 104 , printer 105 , range 106 , lighting system 117 , computing device 108 , appliance 109 , refrigerator 110 , camera 120 , video camera 121 , cell phone 122 , computing device 123 , computing device 131 , cell phone 132 , and laptop 133 are all exemplary computing devices that may connect to lightweight network 100 .
  • Computing devices 108 , 123 , 131 are depicted generically to emphasize that devices connectable to a network can be any computing device that generally fits the description provided in FIG. 6 . For example, they could be a gaming consoles, DVD players, stereo systems, surveillance devices, Personal Digital Assistants (PDAs), or any other computing devices.
  • the devices of FIG. 1 may provide and consume network services.
  • Network security software 150 , 151 , and 152 is illustrated on devices 108 , 123 and 131 , respectively. Such security software may exist on any and all of the devices illustrated in FIG. 1 .
  • Software 150 , 151 , 152 implements aspects of the invention. In general, it allows for a security service that provides authorization and validation of devices connecting to a network 100 , synchronization of security information, and replication of the security service as will be described below.
  • Authorization refers to providing a device, e.g. 123 , with a key that allows access to network services.
  • Authorization may include functions for seeking authorization when a device 123 enters network 100 for the first time, or when a previously authorized device, e.g. 121 , loses its device key by virtue of key expiration or otherwise.
  • Authorization may also include functions for granting or denying such authorization. For example, when device 123 enters network 100 and requests authorization, device 108 may take certain steps, as will be described below, for granting or denying the request.
  • Authorization may also include functions for determining a scope of authorization. For example, a particular device 123 may be allowed to access some network services, or aspects of some network services, but not others.
  • a process of authorizing devices, e.g., 122 and 123 entering the network 100 for the first time, or after losing a key, is illustrated in FIG. 2 a and FIG. 2 b.
  • Validation refers to determining whether a device, e.g., 108 is authorized to access a particular network service.
  • Software 150 , 151 , 152 it may include functions for securely requesting a network service, e.g., by providing a key along with a network service request. It may also include functions for determining that a device 108 is authorized to access a network service, e.g., by checking whether a device key is valid, and checking that the service is within the scope of permitted network services.
  • a process for validating devices requesting network services is illustrated in FIG. 3 .
  • Synchronization of security information refers to communicating, among the various devices in network 100 , information about which devices are and are not authorized to access network services. Synchronization may comprise providing updates to a list of keys which may be used to access network services. Synchronization may further include providing updates to a disallow list for devices which are not permitted to access network services. Synchronization may further provide information regarding a scope of allowed access to network services by the various devices 101 - 110 in network 100 . Synchronization is illustrated in FIG. 4 .
  • security software 150 , 151 , 152 may provide for replication of a security service (replication). Because lightweight networks are unpredictable in terms of which devices will be in network 100 at any given time, it is usefull to allow a plurality of devices to provide a security service. If devices such as 123 that enter network 100 are capable of providing the security service for subsequent device authorization, device validation, and security information synchronization, they may be configured to do so by other devices, e.g. 108 , in the network 100 . Replication is referred to in FIGS. 2 a and 2 b.
  • any subset of the functions described above with reference to authorization, validation, synchronization, and replication, may be included on a particular computing device.
  • software 150 , 151 , and 152 may include different subsets of the functions described above.
  • one device e.g., 123 may include only software 152 for seeking authorization on a network 100 and for delivery of its key for validation when attempting to access a network service.
  • Another device 108 may include software 150 for seeking authorization and validation, as well as for performing other aspects of authorization, validation, synchronization and replication.
  • a computing device connects and requests authorization from the network 100 ‘cloud’ of devices 101 - 110 .
  • the new device 123 can be approved to enter the network 100 in one-click by a user at a UI displayed at one or more authorization devices, e.g. 101 - 110 within the network 100 .
  • the term “authorization device” is used herein to refer to a device within network 100 that performs authorization of a new device 123 .
  • the term “new device” refers to a device entering network 100 for the first time, or a device which has lost its key by virtue of key expiration or otherwise. Where a plurality of devices 101 - 110 serve as authorization devices, authorization is possible regardless of which individual computing devices 101 - 110 are available at any given time.
  • the new device 123 can gain access to secure network services.
  • Network 100 may be implemented using any of a variety of network topologies and configurations.
  • each entity 101 - 110 , 120 - 123 , 131 - 133 may contain discrete functional program modules that might make use of an API, or other object, software, firmware and/or hardware, to request network services of one or more of the other entities 101 - 110 , 120 - 123 , 131 - 133 .
  • a network infrastructure may enable a host of network topologies such as client/server, peer-to-peer, or hybrid architectures. Many lightweight networks are peer-to-peer, as that term is understood in the industry, and the invention is well suited for such topologies. Client/server topologies are also appropriate for some embodiments of the invention.
  • any entity 101 - 110 , 120 - 123 , 131 - 133 can be considered a peer in a peer-to-peer topology, or a client, a server, or both, depending on the circumstances.
  • HTTP Hyper Text Transfer Protocol
  • IP Internet Protocol
  • URL Universal Resource Locator
  • Communication can be provided over a communications medium, e.g., devices may be coupled to one another via TCP/IP connection(s) for high-capacity communication, or over a wireless connection, such as those supported by the popular 802.11b and 802.11g protocols.
  • a communications medium e.g., devices may be coupled to one another via TCP/IP connection(s) for high-capacity communication, or over a wireless connection, such as those supported by the popular 802.11b and 802.11g protocols.
  • Device communication and access to network services may be implemented using industry standard protocols.
  • network services including the device authorization service provided herein may be implemented using web services for which specific and standardized xml schemas have been created.
  • a standardized schema for may be used to exchange/synchronize security information.
  • Standardized exposed interfaces may allow device and software makers to make products that interoperate with the system provided herein. It will be appreciated that a number of such web service and other standards exist and are continuously updated and improved. Thus, where a specific web service or other industry standard is referenced herein, it should be understood that any version of such web service or other industry standard may be substituted.
  • Embodiments of the invention may also benefit from standardized interfaces for exchanging/synchronizing security information because this increases the availability and reliability of the security system.
  • the security services and replication services contemplated herein may have a web service interface, which enables different device types and platforms to all act as security service providers, as long as they can implement the web service.
  • Devices may use the WS-Discovery protocol when entering network 100 to conduct automatic security discovery and setup.
  • software 150 , 151 , 152 may interact with existing Universal Plug and Play (UPnP) security service interfaces, which enables the software to also securely interact with existing UPnP devices that support the UPnP security profile.
  • UPnP Universal Plug and Play
  • UPnP is becoming the most popular way for devices to interact in the home, and therefore such embodiments are considered likely.
  • the current UPnP security profile is very weak, making it almost useless on its own.
  • One advantage of an embodiment of the invention is thus to provide enhanced security to devices that interact using UPnP.
  • a system is depicted whereby devices such as 123 can be authorized to connect to a network 100 comprising a plurality of computing devices 101 - 110 .
  • device 123 can be validated when accessing one or more secure network services available via the other devices 101 - 110 in the network 100 .
  • Devices 101 - 110 in network 100 may perform synchronization and replication to ensure robust availability of a security service despite departure of some devices, e.g. 131 - 133 from the network 100 .
  • Techniques for authorizing, validating, synchronizing, and replicating will be explained in greater detail below.
  • FIG. 2 a is a flow diagram illustrating a process for authorizing a computing device to access network services.
  • a new device enters a network and asks to access a security service 200 .
  • an industry standard protocol such as WS-Discovery or UPnP Discovery may be used.
  • the new device then asks for authorization from the security service and sends its device identifier (ID) to one or more authorizing devices 201 .
  • ID device identifier
  • a security component on the authorizing device then checks if it recognizes the new device from a previous authorization 202 . If the new device is not recognized, the authorizing device may determine if the new device is on a disallow list 203 . If so, access to network services may be denied 204 . If the new device is not on a disallow list, then the authorizing device may broadcast the authorization request to all secure devices on the network 206 . Secure devices are generally to be understood as those that may serve as authorization devices.
  • the authorizing device may remove the current device listing and then proceed to step 206 .
  • the new device should not have sent an authorization request unless it lost its key. If the new device still had its key, it would typically avail itself of the validation procedure illustrated in FIG. 3 , rather than the authorization procedure illustrated in FIG. 2 a or 2 b.
  • a UI can be displayed on any or all secure devices.
  • the UI prompts the user to authorize the new device 207 .
  • the new device provides a device ID 208 .
  • the device ID may be provided in any number of ways, including, for example, displaying the ID on an electronically generated display, permanently inscribing the device ID on the device, for example on device housing, allowing the ID to be securely stored on removable media such as a Universal Serial Port (USB) flash drive, Compact Disk (CD), floppy disk, or other recordable media, including a Radio Frequency Identifier (RFID) tag in the device that is capable of communicating the device ID, and so forth as will be appreciated by those of skill in the art.
  • USB Universal Serial Port
  • CD Compact Disk
  • RFID Radio Frequency Identifier
  • the user may then compare the ID displayed in the UI with that provided by the new device.
  • the user may approve or disallow the device 209 .
  • the user would not approve a device if the device ID displayed in the authorization device UI does not match the ID provided locally by the device. If the IDs do not match, the user may be approving a device other than the intended device, which may be a malicious device. However, in this embodiment, the user would have the opportunity to approve the new device even if the IDs do not match.
  • the device is denied access to network services 210 . If the user approves the new device, the device is given a key to access network services 211 . In either case, the device ID and device status, such as “authorized” or “rejected,” may be communicated to the other secure devices on the network 213 . At this point, the new device, if authorized, is permitted to access various secure network services available on the network.
  • the services available to the new device may be restricted in some circumstances.
  • the new device may be given access to a subset of available services based on a device class, or based on privileges of a user of the new device.
  • the remaining steps illustrated in FIG. 2 a are directed to replication, i.e. further configuring the new device to act as an authorizing device for subsequent new devices requesting authorization or validation.
  • security information and optionally software for performing a device authorization can be downloaded to the new device in step 215 . If the new device cannot provide a security service, then as illustrated in step 214 , no further action is necessary.
  • FIG. 2 b is a flow diagram illustrating an alternative embodiment of a process for authorizing a computing device to access network services.
  • the new device can find available security services 200 b as in the FIG. 2 a embodiment.
  • the new device may ask for authorization 201 b .
  • no device ID is sent with the request.
  • steps 202 - 205 from FIG. 2 a may be skipped at this juncture, and instead performed later, in steps 202 b - 205 b.
  • step 206 b the request is broadcasted without a device ID.
  • the user sees the authorization request at an authorization device UI 207 b .
  • the device provides its device ID 208 b via any number of avenues as explained above with reference to step 208 in FIG. 2 a .
  • the user enters the new device ID in the authorization device 209 b .
  • the act of entering the device ID is considered to be using the device ID to approve the device. Entering the ID may be accomplished by typing the ID at an authorization device keyboard, plugging a USB flash drive into the authorization device, bringing a new device RFID tag within range of an RFID reader, and so forth.
  • Steps 202 b - 205 b generally mirror steps 202 - 205 from FIG. 2 a .
  • an authorization device Once an authorization device has the new device ID, it can determine whether authorization should be granted 202 b by checking against a disallow list 203 b . It can also remove a current device listing if one exists 205 b.
  • a key can be separately generated from the device ID in both the new device and the authorization device 211 b . This avoids sending the key over the network. This can be considered more secure than the FIG. 2 a embodiment in some situations, because the initial key is never transmitted over the network, preventing eavesdropping attacks.
  • the device ID and device status may be communicated to the other secure devices on the network 213 b . If authorized, the new device is permitted to access various secure network services available on the network. Replication and synchronization may be performed as illustrated in steps 212 b , 214 b , and 215 b and as explained above.
  • FIG. 3 is a flow diagram illustrating device validation. As such, FIG. 3 provides a process for an authorized computing device to access a network service. Once a device is authorized, the procedure illustrated in FIGS. 2 a or 2 b need not be repeated because the device has already obtained a key with which it may access network services. This is true even if the authorized device leaves and subsequently rejoins the network, for example by being turned off, or physically removed from a network connection or wireless network communication range. However, keys may be configured to expire after a predetermined time interval, requiring reauthorization of a device pursuant to FIG. 2 a or 2 b from time to time.
  • a device that has a key may simply request a network service 300 .
  • the device may use any standardized web service protocol, as discussed above, to make this request.
  • the network service may validate the device key and determine any device role, device user privileges, and the like with the security service 301 , such as a security service accessible via any of the devices in the network 100 displayed in FIG. 1 , and implemented using security software such as 150 . If the valid security key and appropriate role are verified in step 302 , then access to the requested service is granted 303 . If not, then access may be rejected 304 . Additional processes may be in place to troubleshoot situations in which access is rejected 304 .
  • FIG. 4 is a flow diagram illustrating a process for synchronizing security information among various computing devices in a network. The process of FIG. 4 is also discussed in U.S. Pat. Application No.________
  • synchronization allows device authorization to operate smoothly in a dynamic network. Synchronization allows authorization to be conducted by any computing device in a network that is capable of serving as an authorizing device, rather than exclusively at a centralized server.
  • one advantage of this aspect of the invention is that it provides an authorization and validation scheme that succeeds in providing a degree of security in peer-to-peer networks, because any of a variety of computing devices may authorize another device to enter the network or validate access to a network service.
  • Another advantage of the invention is that it provides an authorization and validation scheme that succeeds in dynamic networks, where computing devices may frequently enter, leave and rejoin the network.
  • Synchronization enables security decisions and current policies to be distributed around the network so authorizing devices can uniformly authorize and validate device access to network services.
  • the authorizing devices may optionally automatically synchronize security information. Synchronization between authorizing devices need not contain device state information. This makes security easy to handle when computing devices enter, leave, and rejoin a network. It also helps to ensure the efficiency of security information synchronization, by minimizing the amount of information that is synchronized. As a result, any type of device, even devices with a relatively low amount of memory and CPU power can act as authorizing devices.
  • Authorizing devices can be, but need not be Personal Computers (PCs) or equally powerful devices.
  • step 400 illustrates that a security device initiates a synchronization. It may come online, or experience some other event that triggers a synchronization.
  • One such event is an authorization decision as illustrated in FIGS. 2 a and 2 b .
  • a security device may use any protocol, such as WS-Discovery or UPnP Discovery, or a locally stored list of known network services, to determine information that should be synchronized 401 . This involves connecting to a another secure device that provides at least the security service. The security services on the two connected devices may then compare update times and determine whether a synchronization is necessary 402 . Depending on the result of the comparison, any of steps 403 , 404 , or 405 may follow.
  • the synchronizing devices may send each other identifiers for any added and / or removed devices, along with the times of such adding or removing 403 . If no updates have been made since a last synchronization, then no synchronization is necessary 404 . Finally, if one device has been off-line while the other remained on-line, then the device that remained on-line sends updates to the other device, including any identifiers for any added and / or removed devices, along with the times of such adding or removing, since the off-line device went off-line.
  • steps 401 - 405 may be repeated until the synchronizing device has synchronized will all available security devices. This ensures that a synchronizing device, and moreover all security devices, have the latest security information.
  • FIG. 5 provides a flow diagram illustrating a process for authorizing a computing device to access a network service.
  • the process of FIG. 5 may be carried out by any authorization device that provides the security service contemplated herein.
  • the security service is implemented as a software application, or a set of computer readable instructions to be followed by a device.
  • the process of FIG. 5 may be generally reflected in computer readable instructions available to a networked security device.
  • a broadcast signal is detected 501 .
  • the authorization request is pulled from the broadcast signal 502 .
  • the authorization device then displays a representation of the request in a UI 503 .
  • the device ID can be displayed in the UI.
  • a user then approves or disallows the device 504 .
  • the user indicates approval in the UI with a mouse click or keystroke, after comparing the device ID in the authorization device UI with that provided by the device.
  • the user uses the device ID to approve the device by entering the ID provided by the device into the authorization device. By entering the ID, the user is implying approval of the device 504 .
  • the user approval may be accompanied by an automated approval process, such as comparing the device ID to a disallow list as described with reference to FIGS. 2 a and 2 b . If the device is disallowed by the user or the automated process, the disallowed status of the device may be updated on all security devices 508 .
  • a scope of appropriate access may be determined for the device 505 .
  • a key may be generated for the device 506 .
  • the key is either generated by the authorization device and delivered to the approved device, or generated independently at both the authorization device and the approved device. The key may then be used to access secured network services.
  • All security services on the network may then be synchronized by the authorization device, so that they will permit the approved device to access appropriate other network services 507 . This is accomplished by sending the other security services the device key for the approved device. When the approved device attempts to access a service, it will also send its key. The key can be first validated by a security service, and then the device can be permitted to access any other approved services. If the device permits, the security service may also be replicated to the device 508 , so that the device may participate in future device approvals and validations.
  • FIG. 6 illustrates a basic computing device 600 to precisely point out the various elements of a computing device suitable for use in the context of the invention.
  • computing device 600 In its most basic configuration, computing device 600 typically includes at least one processing unit 602 and memory 603 . Depending on the exact configuration and type of computing device, memory 603 may be volatile (such as RAM 603 A), non-volatile (such as ROM 603 B, flash memory, etc.) or some combination of the two. Device 600 may also have additional features/functionality. For example, device 600 may also include additional storage (removable 604 and/or non-removable 605 ) including, but not limited to, magnetic or optical disks or tape.
  • additional storage removable 604 and/or non-removable 605
  • Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.
  • Computer storage media may be in the form of an article of manufacture such as a disk, USB flash drive, hard drive, and so forth.
  • Memory 604 , removable storage 608 and non-removable storage 660 are all examples of computer storage media.
  • Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can accessed by device 600 . Any such computer storage media may be part of device 600 .
  • Device 600 may also contain communications connection(s) 608 that allow the device to communicate with other devices.
  • Communications connection(s) 608 is an example of communication media.
  • Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media.
  • modulated data signal means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal.
  • An article of manufacture, as that term is used here, may comprise a modulated data signal that is sent across a wire to be recorded or used at a computing device.
  • communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media.
  • wireless media such as acoustic, RF, infrared and other wireless media.
  • computer readable media includes both storage media and communication media.
  • Device 600 may also have input device(s) 607 such as keyboard, mouse, pen, voice input device, touch input device, etc.
  • Output device(s) 606 such as a display, speakers, printer, etc. may also be included.
  • FIG. 7 illustrates various functional elements of a computing device which may be used in a process for obtaining authorization to access a network service.
  • FIG. 5 illustrates a process to be carried out by an authorizing device
  • FIG. 7 illustrates functional components that may be present in a device that requests approval from an authorizing device. A process to be carried out by a requesting device may be gleaned from a study of the functional components depicted in FIG. 7 .
  • Computing device 700 generally may comprise means for detecting that the computing device is operably connected to a network 701 , means for determining if said computing device has a key to access a network service available on the network 702 , and means for sending an authorization request to a security service available on the network 703 .
  • the means for sending an authorization request 703 may be triggered if it is determined by 702 that computing device 700 does not have an access key with which to access network services available on the detected network.
  • Component 703 may also comprise means for procuring a key to access network services, either by receiving the key from an authorization device or by generating a key according to instructions provided by the authorization device.
  • Computing device 700 may further comprise means for providing a device identifier 704 .
  • This means may be an engraved device ID on the device housing, a display of the ID, an RFID tag, a means to record the ID to a USB flash drive, and so forth as discussed above.
  • a network access management component 706 may be present to manage the process of network access authorization.
  • computing device 700 may comprise means for using the key to access one or more network services 705 .

Abstract

The invention provides for authorization of devices entering a network. A new device entering a network sends an authorization request. Another device in the network may receive the request and display a User Interface (UI) which prompts the user to approve the device. The user can use a device identifier provided by the new device in approving the new device. Assuming the identifier provided by the new device matches an identifier accessible by the authorizing device, the user authorizes the new device. A key is then generated for the new device, which allows access to an appropriate range of network services. Authorization decisions can be synchronized among the various devices in a network, so even if an authorizing device leaves the network, the new device key can be validated. A security service can be replicated in a new device once the device is authorized to access the network.

Description

    BACKGROUND
  • Network security can be generally summarized as systems for controlling who can access what computing resources. For example, can a particular employee access a file with sensitive information? Will a software application or device with minimal built-in security safeguards be allowed to connect and retrieve data from a database?
  • A number of network security systems exist today in corporate environments. An exemplary system might provide outsiders with some low level of access to network resources, for example through web pages hosted by one or more web servers. For insiders, e.g., employees within the various corporate departments, user groups may be defined who have access to, and control over, the computing resources they need. For example, an accounting group may have access to spreadsheet programs and all accounting data, but may not have access to product development data, and furthermore may not have administrative control over network connection settings.
  • Network security administration in such a setting may be carried out by an Information Technology (IT) department with a number of highly trained professionals. The resources required by the IT department are justified by increased efficiency and loss prevention throughout the organization. In contrast, home networks and many other small business or less professionally managed networks, referred to herein as lightweight networks, may not have any network security. The lack of security in lightweight networks is a limiting factor in their development. Poor security erodes user confidence in allowing new devices to connect to their network, and in allowing operation of distributed applications.
  • Securing a lightweight network is difficult because there are less resources to devote to security procedures. Most home network owners, for example, don't want to manage or organize their network in any way. Furthermore, they don't like leaving a computer on twenty-four hours a day to act as an authentication machine. They also shun network security because they don't want to take the chance of a computer reboot or malfunction stopping some other process or device in the network. For example, if a home user in an electronically advanced home employed corporate-style network security, they run the risk of interruption when watching a movie, because of a malfunctioning computer responsible for network security. Similarly, a security issue may render light controls or other systems unresponsive, which may demand immediate attention.
  • Another significant problem in providing usable network security for lightweight networks is that devices are continually entering, leaving, and rejoining the network. Devices are turned off, rebooted, brought to work, brought home, purchased and brought home for the first time, and so forth. Users do not want to endure any lengthy network configuration process each time such events occur. Moreover, users generally don't want to be forced to add users and explicitly restrict/enable permissions before using services in the lightweight network or adding a new device. Users may want to set security policies for specific areas, but normally after everything in the network is running properly, and not as a requirement.
  • In light of these various considerations in network security, there is a need for systems and methods that enhance network security in dynamic environments where computing devices may enter and leave the network, with little need for management or possibility of security-related failure.
  • SUMMARY
  • In consideration of the above-identified aspects and developments in network security, systems and methods are provided for authorization of device access to network services. Once authorized, devices can access any allowed network services, and can leave and rejoin the network. A new device entering a network sends an authorization request to a security service. Another device in the network, an authorizing device which provides the security service, may receive the request and display a User Interface (UI) which prompts a user to approve the new device. The authorizing device may also broadcast the authorization request to other authorizing devices in the network. The user can use a new device identifier in approving the new device. If the new device identifier provided by the device matches a new device identifier available to the security service, the user authorizes the new device. A key is then generated for the new device, which allows access to an appropriate range of network services. Subsequent access to network services may be made by the new device so long as the key is valid. Authorization decisions can be synchronized among the various devices in the network, so even if the original authorizing device leaves the network, the new device key can be validated by other authorizing devices. New devices entering the network may have the security service replicated in the new device, so that they can also serve as authorizing devices.
  • Other advantages and features of the invention are described below.
  • DRAWINGS
  • The systems and methods for authorizing device access to network services in accordance with the present invention are further described with reference to the accompanying drawings in which:
  • FIG. 1 illustrates a network 100 of computing devices in which the invention may be implemented. As illustrated, computing devices 101-110 may be in the network 100, computing devices 120-122 may enter or rejoin the network 100, and computing devices 131-133 may exit the network 100. Software 150-152 for obtaining and/or authorizing access to network services may be implemented on any of the computing devices.
  • FIG. 2 a is a flow diagram illustrating a process for authorizing a computing device to access network services.
  • FIG. 2 b is a flow diagram illustrating an alternative embodiment of a process for authorizing a computing device to access network services.
  • FIG. 3 is a flow diagram illustrating a process for an authorized computing device to access a network service.
  • FIG. 4 is a flow diagram illustrating a process for synchronizing security information among the various computing devices in a network.
  • FIG. 5 provides a flow diagram illustrating a process for authorizing a computing device to access a network service.
  • FIG. 6 illustrates a basic computing device to precisely point out the various elements of a computing device suitable for use in the context of the invention.
  • FIG. 7 illustrates various functional elements of a computing device which may be used in a process for obtaining authorization to access a network service.
  • DETAILED DESCRIPTION
  • Certain specific details are set forth in the following description and figures to provide a thorough understanding of various embodiments of the invention. Certain well-known details often associated with computing and software technology are not set forth in the following disclosure, however, to avoid unnecessarily obscuring the various embodiments of the invention. Further, those of ordinary skill in the relevant art will understand that they can practice other embodiments of the invention without one or more of the details described below. Finally, while various methods are described with reference to steps and sequences in the following disclosure, the description as such is for providing a clear implementation of embodiments of the invention, and the steps and sequences of steps should not be taken as required to practice this invention.
  • The invention is a security mechanism and method that is designed around security and usability considerations for lightweight networks such as home and small business networks. Lightweight networks have unique requirements compared to traditional corporate or IT supported networks. There is often no central computing device running at all times, devices may regularly enter, leave, and rejoin the network, and the available resources for network administration are low.
  • In a lightweight network, there may be a number of devices communicating through web services or other network communication means. Web services are examples of network services, which may generally be understood as applications that may be accessed remotely by devices connected to a network. For example, a home lighting system may be controlled via an application on a networked computing device, and features and functions of the lighting system application may be accessible via the network. The lighting system application in such a scenario is a network service.
  • A network service may be hosted or provided by a particular networked computing device, such as a server. It may also be hosted by a plurality of computing devices in a distributed computing configuration. Furthermore, it may be hosted by a number of computing devices that may synchronize with one another from time to time to ensure proper cooperation.
  • One network service that will be referred to herein is a security service. A security service contemplated for use in conjunction with the invention comprises a number of security functions accessible to devices connecting to a network. The security service can provide a gateway through which devices must pass in order to access other network services. This is implemented by issuing a key that must be used to access secured network services. Functions of the security service may comprise device authorization, device validation, synchronization of security information, and replication of security service functionality. These functions will be described in detail below.
  • FIG. 1 illustrates a network 100 of computing devices. Many of the appliances in common home and office use today are becoming increasingly advanced and will soon allow for network connection. In this regard, computers 101 and 102, scanner 103, television 104, printer 105, range 106, lighting system 117, computing device 108, appliance 109, refrigerator 110, camera 120, video camera 121, cell phone 122, computing device 123, computing device 131, cell phone 132, and laptop 133 are all exemplary computing devices that may connect to lightweight network 100. Computing devices 108, 123, 131 are depicted generically to emphasize that devices connectable to a network can be any computing device that generally fits the description provided in FIG. 6. For example, they could be a gaming consoles, DVD players, stereo systems, surveillance devices, Personal Digital Assistants (PDAs), or any other computing devices. The devices of FIG. 1 may provide and consume network services.
  • Network security software 150, 151, and 152 is illustrated on devices 108, 123 and 131, respectively. Such security software may exist on any and all of the devices illustrated in FIG. 1. Software 150, 151, 152 implements aspects of the invention. In general, it allows for a security service that provides authorization and validation of devices connecting to a network 100, synchronization of security information, and replication of the security service as will be described below.
  • Authorization, as that term is used here, refers to providing a device, e.g. 123, with a key that allows access to network services. Authorization may include functions for seeking authorization when a device 123 enters network 100 for the first time, or when a previously authorized device, e.g. 121, loses its device key by virtue of key expiration or otherwise. Authorization may also include functions for granting or denying such authorization. For example, when device 123 enters network 100 and requests authorization, device 108 may take certain steps, as will be described below, for granting or denying the request. Authorization may also include functions for determining a scope of authorization. For example, a particular device 123 may be allowed to access some network services, or aspects of some network services, but not others. A process of authorizing devices, e.g., 122 and 123 entering the network 100 for the first time, or after losing a key, is illustrated in FIG. 2 a and FIG. 2 b.
  • Validation refers to determining whether a device, e.g., 108 is authorized to access a particular network service. Software 150, 151, 152 it may include functions for securely requesting a network service, e.g., by providing a key along with a network service request. It may also include functions for determining that a device 108 is authorized to access a network service, e.g., by checking whether a device key is valid, and checking that the service is within the scope of permitted network services. A process for validating devices requesting network services is illustrated in FIG. 3.
  • Synchronization of security information (synchronization) refers to communicating, among the various devices in network 100, information about which devices are and are not authorized to access network services. Synchronization may comprise providing updates to a list of keys which may be used to access network services. Synchronization may further include providing updates to a disallow list for devices which are not permitted to access network services. Synchronization may further provide information regarding a scope of allowed access to network services by the various devices 101-110 in network 100. Synchronization is illustrated in FIG. 4.
  • Finally, security software 150, 151, 152 may provide for replication of a security service (replication). Because lightweight networks are unpredictable in terms of which devices will be in network 100 at any given time, it is usefull to allow a plurality of devices to provide a security service. If devices such as 123 that enter network 100 are capable of providing the security service for subsequent device authorization, device validation, and security information synchronization, they may be configured to do so by other devices, e.g. 108, in the network 100. Replication is referred to in FIGS. 2 a and 2 b.
  • Any subset of the functions described above with reference to authorization, validation, synchronization, and replication, may be included on a particular computing device. As such, software 150, 151, and 152 may include different subsets of the functions described above. For example, one device, e.g., 123 may include only software 152 for seeking authorization on a network 100 and for delivery of its key for validation when attempting to access a network service. Another device 108 may include software 150 for seeking authorization and validation, as well as for performing other aspects of authorization, validation, synchronization and replication.
  • In one embodiment, a computing device, e.g., 123, connects and requests authorization from the network 100 ‘cloud’ of devices 101-110. The new device 123 can be approved to enter the network 100 in one-click by a user at a UI displayed at one or more authorization devices, e.g. 101-110 within the network 100. The term “authorization device” is used herein to refer to a device within network 100 that performs authorization of a new device 123. The term “new device” refers to a device entering network 100 for the first time, or a device which has lost its key by virtue of key expiration or otherwise. Where a plurality of devices 101-110 serve as authorization devices, authorization is possible regardless of which individual computing devices 101-110 are available at any given time. Upon authorization by any authorization device, the new device 123 can gain access to secure network services.
  • Network 100 may be implemented using any of a variety of network topologies and configurations. In accordance with an aspect of the invention, each entity 101-110, 120-123, 131-133 may contain discrete functional program modules that might make use of an API, or other object, software, firmware and/or hardware, to request network services of one or more of the other entities 101-110, 120-123, 131-133.
  • A network infrastructure may enable a host of network topologies such as client/server, peer-to-peer, or hybrid architectures. Many lightweight networks are peer-to-peer, as that term is understood in the industry, and the invention is well suited for such topologies. Client/server topologies are also appropriate for some embodiments of the invention. In the example of FIG. 1, any entity 101-110, 120-123, 131-133 can be considered a peer in a peer-to-peer topology, or a client, a server, or both, depending on the circumstances.
  • Computing devices 10l-110, 120-123, 131-133 communicate with one another utilizing the functionality provided by protocol layer(s). For example, Hyper Text Transfer Protocol (HTTP) is a common protocol that is used in conjunction with the World Wide Web (WWW), or “the Web.” Typically, a computer network address such as an Internet Protocol (IP) address or other reference such as a Universal Resource Locator (URL) can be used to identify peers, servers or client computers to each other. The network address can be referred to as a URL address. Communication can be provided over a communications medium, e.g., devices may be coupled to one another via TCP/IP connection(s) for high-capacity communication, or over a wireless connection, such as those supported by the popular 802.11b and 802.11g protocols.
  • Device communication and access to network services may be implemented using industry standard protocols. For example, network services including the device authorization service provided herein may be implemented using web services for which specific and standardized xml schemas have been created. A standardized schema for may be used to exchange/synchronize security information. Standardized exposed interfaces may allow device and software makers to make products that interoperate with the system provided herein. It will be appreciated that a number of such web service and other standards exist and are continuously updated and improved. Thus, where a specific web service or other industry standard is referenced herein, it should be understood that any version of such web service or other industry standard may be substituted.
  • Embodiments of the invention may also benefit from standardized interfaces for exchanging/synchronizing security information because this increases the availability and reliability of the security system. The more devices that participate in the network 100 “cloud” and can perform the tasks associated with the network security service, the less likely it will be that, at any given time, there are no devices that can serve as authorization devices or, conversely, can seek authorization or validation from a network that implements the invention.
  • The security services and replication services contemplated herein may have a web service interface, which enables different device types and platforms to all act as security service providers, as long as they can implement the web service.
  • Devices may use the WS-Discovery protocol when entering network 100 to conduct automatic security discovery and setup. In one embodiment, software 150, 151, 152 may interact with existing Universal Plug and Play (UPnP) security service interfaces, which enables the software to also securely interact with existing UPnP devices that support the UPnP security profile. UPnP is becoming the most popular way for devices to interact in the home, and therefore such embodiments are considered likely. Moreover, the current UPnP security profile is very weak, making it almost useless on its own. One advantage of an embodiment of the invention is thus to provide enhanced security to devices that interact using UPnP.
  • In summary, with respect to FIG. 1, a system is depicted whereby devices such as 123 can be authorized to connect to a network 100 comprising a plurality of computing devices 101-110. After connecting, device 123 can be validated when accessing one or more secure network services available via the other devices 101-110 in the network 100. Devices 101-110 in network 100 may perform synchronization and replication to ensure robust availability of a security service despite departure of some devices, e.g. 131-133 from the network 100. Techniques for authorizing, validating, synchronizing, and replicating will be explained in greater detail below.
  • FIG. 2 a is a flow diagram illustrating a process for authorizing a computing device to access network services. A new device enters a network and asks to access a security service 200. To ask for a security service 200, an industry standard protocol such as WS-Discovery or UPnP Discovery may be used. The new device then asks for authorization from the security service and sends its device identifier (ID) to one or more authorizing devices 201. A security component on the authorizing device then checks if it recognizes the new device from a previous authorization 202. If the new device is not recognized, the authorizing device may determine if the new device is on a disallow list 203. If so, access to network services may be denied 204. If the new device is not on a disallow list, then the authorizing device may broadcast the authorization request to all secure devices on the network 206. Secure devices are generally to be understood as those that may serve as authorization devices.
  • If the authorizing device does recognize the new device, then the authorizing device may remove the current device listing and then proceed to step 206. As noted in the illustration, the new device should not have sent an authorization request unless it lost its key. If the new device still had its key, it would typically avail itself of the validation procedure illustrated in FIG. 3, rather than the authorization procedure illustrated in FIG. 2 a or 2 b.
  • Once the authorization request is broadcasted 206, a UI can be displayed on any or all secure devices. The UI prompts the user to authorize the new device 207. Meanwhile, the new device provides a device ID 208. The device ID may be provided in any number of ways, including, for example, displaying the ID on an electronically generated display, permanently inscribing the device ID on the device, for example on device housing, allowing the ID to be securely stored on removable media such as a Universal Serial Port (USB) flash drive, Compact Disk (CD), floppy disk, or other recordable media, including a Radio Frequency Identifier (RFID) tag in the device that is capable of communicating the device ID, and so forth as will be appreciated by those of skill in the art. The user may then compare the ID displayed in the UI with that provided by the new device. The user may approve or disallow the device 209. In general, it is contemplated that the user would not approve a device if the device ID displayed in the authorization device UI does not match the ID provided locally by the device. If the IDs do not match, the user may be approving a device other than the intended device, which may be a malicious device. However, in this embodiment, the user would have the opportunity to approve the new device even if the IDs do not match.
  • If the user disallows the device in step 209, then the device is denied access to network services 210. If the user approves the new device, the device is given a key to access network services 211. In either case, the device ID and device status, such as “authorized” or “rejected,” may be communicated to the other secure devices on the network 213. At this point, the new device, if authorized, is permitted to access various secure network services available on the network.
  • The services available to the new device may be restricted in some circumstances. For example, the new device may be given access to a subset of available services based on a device class, or based on privileges of a user of the new device.
  • The remaining steps illustrated in FIG. 2 a are directed to replication, i.e. further configuring the new device to act as an authorizing device for subsequent new devices requesting authorization or validation. In this regard, if it is determined that the new device can provide a security service in step 212, then security information and optionally software for performing a device authorization can be downloaded to the new device in step 215. If the new device cannot provide a security service, then as illustrated in step 214, no further action is necessary.
  • FIG. 2 b is a flow diagram illustrating an alternative embodiment of a process for authorizing a computing device to access network services. First, the new device can find available security services 200 b as in the FIG. 2 a embodiment. Next, the new device may ask for authorization 201 b. In this embodiment, no device ID is sent with the request.
  • Because no device ID is sent, steps 202-205 from FIG. 2 a may be skipped at this juncture, and instead performed later, in steps 202 b-205 b.
  • In step 206 b, the request is broadcasted without a device ID. The user sees the authorization request at an authorization device UI 207 b. Once again, the device provides its device ID 208 b via any number of avenues as explained above with reference to step 208 in FIG. 2 a. This time, the user enters the new device ID in the authorization device 209 b. The act of entering the device ID is considered to be using the device ID to approve the device. Entering the ID may be accomplished by typing the ID at an authorization device keyboard, plugging a USB flash drive into the authorization device, bringing a new device RFID tag within range of an RFID reader, and so forth.
  • Steps 202 b-205 b generally mirror steps 202-205 from FIG. 2 a. Once an authorization device has the new device ID, it can determine whether authorization should be granted 202 b by checking against a disallow list 203 b. It can also remove a current device listing if one exists 205 b.
  • Next, a key can be separately generated from the device ID in both the new device and the authorization device 211 b. This avoids sending the key over the network. This can be considered more secure than the FIG. 2 a embodiment in some situations, because the initial key is never transmitted over the network, preventing eavesdropping attacks.
  • Finally, as with FIG. 2 a, the device ID and device status, such as “authorized” or “rejected,” may be communicated to the other secure devices on the network 213 b. If authorized, the new device is permitted to access various secure network services available on the network. Replication and synchronization may be performed as illustrated in steps 212 b, 214 b, and 215 b and as explained above.
  • FIG. 3 is a flow diagram illustrating device validation. As such, FIG. 3 provides a process for an authorized computing device to access a network service. Once a device is authorized, the procedure illustrated in FIGS. 2 a or 2 b need not be repeated because the device has already obtained a key with which it may access network services. This is true even if the authorized device leaves and subsequently rejoins the network, for example by being turned off, or physically removed from a network connection or wireless network communication range. However, keys may be configured to expire after a predetermined time interval, requiring reauthorization of a device pursuant to FIG. 2 a or 2 b from time to time.
  • As illustrated in FIG. 3, a device that has a key may simply request a network service 300. Although not required, the device may use any standardized web service protocol, as discussed above, to make this request. The network service may validate the device key and determine any device role, device user privileges, and the like with the security service 301, such as a security service accessible via any of the devices in the network 100 displayed in FIG. 1, and implemented using security software such as 150. If the valid security key and appropriate role are verified in step 302, then access to the requested service is granted 303. If not, then access may be rejected 304. Additional processes may be in place to troubleshoot situations in which access is rejected 304.
  • FIG. 4 is a flow diagram illustrating a process for synchronizing security information among various computing devices in a network. The process of FIG. 4 is also discussed in U.S. Pat. Application No.______
  • Among other benefits, synchronization allows device authorization to operate smoothly in a dynamic network. Synchronization allows authorization to be conducted by any computing device in a network that is capable of serving as an authorizing device, rather than exclusively at a centralized server. Thus, one advantage of this aspect of the invention is that it provides an authorization and validation scheme that succeeds in providing a degree of security in peer-to-peer networks, because any of a variety of computing devices may authorize another device to enter the network or validate access to a network service. Another advantage of the invention is that it provides an authorization and validation scheme that succeeds in dynamic networks, where computing devices may frequently enter, leave and rejoin the network.
  • Synchronization, as illustrated in FIG. 4, enables security decisions and current policies to be distributed around the network so authorizing devices can uniformly authorize and validate device access to network services. The authorizing devices may optionally automatically synchronize security information. Synchronization between authorizing devices need not contain device state information. This makes security easy to handle when computing devices enter, leave, and rejoin a network. It also helps to ensure the efficiency of security information synchronization, by minimizing the amount of information that is synchronized. As a result, any type of device, even devices with a relatively low amount of memory and CPU power can act as authorizing devices. Authorizing devices can be, but need not be Personal Computers (PCs) or equally powerful devices. This is important because in many lightweight networks, the likelihood of powerful as well as less powerful devices entering, leaving, and rejoining the network is high. Many people shut down their home or small business PCs or laptops at night, over weekends, or while at work. Simple, reliable security authorization that may be provided by devices with little computing power enhances reliability in this environment.
  • With reference to FIG. 4, step 400 illustrates that a security device initiates a synchronization. It may come online, or experience some other event that triggers a synchronization. One such event is an authorization decision as illustrated in FIGS. 2 a and 2 b. A security device may use any protocol, such as WS-Discovery or UPnP Discovery, or a locally stored list of known network services, to determine information that should be synchronized 401. This involves connecting to a another secure device that provides at least the security service. The security services on the two connected devices may then compare update times and determine whether a synchronization is necessary 402. Depending on the result of the comparison, any of steps 403, 404, or 405 may follow.
  • If the services have synchronized, but not recently, then the synchronizing devices may send each other identifiers for any added and / or removed devices, along with the times of such adding or removing 403. If no updates have been made since a last synchronization, then no synchronization is necessary 404. Finally, if one device has been off-line while the other remained on-line, then the device that remained on-line sends updates to the other device, including any identifiers for any added and / or removed devices, along with the times of such adding or removing, since the off-line device went off-line.
  • As illustrated in step 406, steps 401-405 may be repeated until the synchronizing device has synchronized will all available security devices. This ensures that a synchronizing device, and moreover all security devices, have the latest security information.
  • FIG. 5 provides a flow diagram illustrating a process for authorizing a computing device to access a network service. The process of FIG. 5 may be carried out by any authorization device that provides the security service contemplated herein. The security service is implemented as a software application, or a set of computer readable instructions to be followed by a device. Thus, in one embodiment of the invention, the process of FIG. 5 may be generally reflected in computer readable instructions available to a networked security device.
  • The steps illustrated in FIG. 5 should be familiar at from a study of FIGS. 2 a, 2 b, and the corresponding description. First, a broadcast signal is detected 501. Next, the authorization request is pulled from the broadcast signal 502. The authorization device then displays a representation of the request in a UI 503.
  • In embodiments that send a device ID in the broadcast, the device ID can be displayed in the UI. A user then approves or disallows the device 504. The user indicates approval in the UI with a mouse click or keystroke, after comparing the device ID in the authorization device UI with that provided by the device.
  • In embodiments where the device ID is not sent in the broadcast, i.e., embodiments corresponding to FIG. 2 b, the user uses the device ID to approve the device by entering the ID provided by the device into the authorization device. By entering the ID, the user is implying approval of the device 504.
  • In either of the above embodiments for step 504, the user approval may be accompanied by an automated approval process, such as comparing the device ID to a disallow list as described with reference to FIGS. 2 a and 2 b. If the device is disallowed by the user or the automated process, the disallowed status of the device may be updated on all security devices 508.
  • If the device is approved in step 504, then a scope of appropriate access may be determined for the device 505. A key may be generated for the device 506. The key is either generated by the authorization device and delivered to the approved device, or generated independently at both the authorization device and the approved device. The key may then be used to access secured network services.
  • All security services on the network may then be synchronized by the authorization device, so that they will permit the approved device to access appropriate other network services 507. This is accomplished by sending the other security services the device key for the approved device. When the approved device attempts to access a service, it will also send its key. The key can be first validated by a security service, and then the device can be permitted to access any other approved services. If the device permits, the security service may also be replicated to the device 508, so that the device may participate in future device approvals and validations.
  • FIG. 6 illustrates a basic computing device 600 to precisely point out the various elements of a computing device suitable for use in the context of the invention.
  • In its most basic configuration, computing device 600 typically includes at least one processing unit 602 and memory 603. Depending on the exact configuration and type of computing device, memory 603 may be volatile (such as RAM 603A), non-volatile (such as ROM 603B, flash memory, etc.) or some combination of the two. Device 600 may also have additional features/functionality. For example, device 600 may also include additional storage (removable 604 and/or non-removable 605) including, but not limited to, magnetic or optical disks or tape.
  • Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media may be in the form of an article of manufacture such as a disk, USB flash drive, hard drive, and so forth. Memory 604, removable storage 608 and non-removable storage 660 are all examples of computer storage media. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can accessed by device 600. Any such computer storage media may be part of device 600.
  • Device 600 may also contain communications connection(s) 608 that allow the device to communicate with other devices. Communications connection(s) 608 is an example of communication media. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. An article of manufacture, as that term is used here, may comprise a modulated data signal that is sent across a wire to be recorded or used at a computing device. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. The term computer readable media as used herein includes both storage media and communication media.
  • Device 600 may also have input device(s) 607 such as keyboard, mouse, pen, voice input device, touch input device, etc. Output device(s) 606 such as a display, speakers, printer, etc. may also be included. These aspects of a device 600 are well known in the art and need not be discussed at length here.
  • FIG. 7 illustrates various functional elements of a computing device which may be used in a process for obtaining authorization to access a network service. By comparison to FIG. 5, it will be noted that while FIG. 5 illustrates a process to be carried out by an authorizing device, FIG. 7 illustrates functional components that may be present in a device that requests approval from an authorizing device. A process to be carried out by a requesting device may be gleaned from a study of the functional components depicted in FIG. 7.
  • Computing device 700 generally may comprise means for detecting that the computing device is operably connected to a network 701, means for determining if said computing device has a key to access a network service available on the network 702, and means for sending an authorization request to a security service available on the network 703. The means for sending an authorization request 703 may be triggered if it is determined by 702 that computing device 700 does not have an access key with which to access network services available on the detected network. Component 703 may also comprise means for procuring a key to access network services, either by receiving the key from an authorization device or by generating a key according to instructions provided by the authorization device.
  • Computing device 700 may further comprise means for providing a device identifier 704. This means may be an engraved device ID on the device housing, a display of the ID, an RFID tag, a means to record the ID to a USB flash drive, and so forth as discussed above. A network access management component 706 may be present to manage the process of network access authorization. Finally, computing device 700 may comprise means for using the key to access one or more network services 705.
  • In addition to the specific implementations explicitly set forth herein, other aspects and implementations will be apparent to those skilled in the art from consideration of the specification disclosed herein. It is intended that the specification and illustrated implementations be considered as examples only, with a true scope and spirit of the following claims.

Claims (20)

1. A method for securing a network, comprising:
sending, by a first device, an authorization request;
presenting, by a second device, a representation of the authorization request in a User Interface (UI);
providing, by said first device, a device identifier (ID);
approving, by a user via said UI, the first device, wherein said approving comprises using the device ID;
generating a key for the first device, wherein at least one network service may be accessed using said key.
2. The method of claim 1, wherein said authorization request comprises the device ID.
3. The method of claim 2, wherein said representation of the authorization request comprises the device ID.
4. The method of claim 3, wherein said using the device ID comprises comparing, by the user, the device ID in said representation of the authorization request with the device ID provided by said first device.
5. The method of claim 1, wherein said using the device ID comprises entering, by the user, the device ID provided by said first device, and wherein the device ID is entered into the second device.
6. The method of claim 5, wherein the key is generated by the first device and by the second device.
7. The method of claim 1, further comprising broadcasting, by the second device, the authorization request.
8. The method of claim 1, further comprising sending, by the second device to a third device, an indication that the first device is authorized to access the at least one network service.
9. An article of manufacture comprising computer readable instructions for execution by a computing device, the instructions comprising:
instructions for detecting a signal from a first computing device, wherein said signal comprises an authorization request;
instructions for displaying said authorization request in a User Interface (UI);
instructions for generating a key for said first computing device, wherein said key allows said first computing device to access at least one network service, and wherein said instructions for generating are carried out in response to an approval from a user provided via said UI.
10. The article of manufacture of claim 9, wherein the network service comprises a software application executing on one or more of a plurality of networked computing devices.
11. The article of manufacture of claim 9, wherein the instructions for detecting a broadcast signal utilize the Web Services Security (WS-Security) protocol.
12. The article of manufacture of claim 9, wherein the instructions for detecting a signal utilize the Universal Plug and Play (UPnP) discovery protocol.
13. The article of manufacture of claim 9, wherein the UI prompts the user to compare a first device ID in said UI with a second device ID provided by said first computing device to determine if the first and second device IDs are identical.
14. The article of manufacture of claim 9, further comprising instructions for restricting access by said first computing device to a subset of network services corresponding to a device class associated with said first computing device.
15. The article of manufacture of claim 9, further comprising instructions for restricting access by said first computing device to a subset of network services allowed to a user of said first computing device.
16. The article of manufacture of claim 9, further comprising instructions for synchronizing security information with at least one second computing device, such that if the first computing device delivers the key to the second computing device, then the second computing device allows access to the network service.
17. A computing device comprising means for requesting authorization to access a network service, said means comprising:
means for detecting that said computing device is operably connected to a network;
means for determining if said computing device can access a network service available on said network;
means for sending an authorization request, wherein said means for sending is triggered if it is determined by said means for determining that said computing device can not access said network service;
means for providing a device ID;
means for receiving a key from a second computing device associated with said network;
means for using the key to access the network service.
18. The computing device of claim 17, wherein said means for sending an authorization request utilizes the Web Services Security (WS-Security) protocol.
19. The computing device of claim 17, said means for sending an authorization request utilizes the Universal Plug and Play (UPnP) discovery protocol.
20. The computing device of claim 17, further comprising means for authorizing a third device to access the network service.
US11/201,232 2005-08-10 2005-08-10 Authorization of device access to network services Abandoned US20070039039A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US11/201,232 US20070039039A1 (en) 2005-08-10 2005-08-10 Authorization of device access to network services
PCT/US2006/029408 WO2007021495A2 (en) 2005-08-10 2006-07-27 Authorization of device access to network services in dynamic networks
US13/752,665 US9680810B2 (en) 2005-08-10 2013-01-29 Authorization of device access to network services
US15/595,830 US10225256B2 (en) 2005-08-10 2017-05-15 Authorization of device access to network services

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/201,232 US20070039039A1 (en) 2005-08-10 2005-08-10 Authorization of device access to network services

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/752,665 Division US9680810B2 (en) 2005-08-10 2013-01-29 Authorization of device access to network services

Publications (1)

Publication Number Publication Date
US20070039039A1 true US20070039039A1 (en) 2007-02-15

Family

ID=37744035

Family Applications (3)

Application Number Title Priority Date Filing Date
US11/201,232 Abandoned US20070039039A1 (en) 2005-08-10 2005-08-10 Authorization of device access to network services
US13/752,665 Active US9680810B2 (en) 2005-08-10 2013-01-29 Authorization of device access to network services
US15/595,830 Active US10225256B2 (en) 2005-08-10 2017-05-15 Authorization of device access to network services

Family Applications After (2)

Application Number Title Priority Date Filing Date
US13/752,665 Active US9680810B2 (en) 2005-08-10 2013-01-29 Authorization of device access to network services
US15/595,830 Active US10225256B2 (en) 2005-08-10 2017-05-15 Authorization of device access to network services

Country Status (2)

Country Link
US (3) US20070039039A1 (en)
WO (1) WO2007021495A2 (en)

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080229406A1 (en) * 2005-10-19 2008-09-18 Samsung Electronics Co., Ltd. Method and apparatus for exclusively controlling a device in a home network
US20090182860A1 (en) * 2008-01-15 2009-07-16 Samsung Electronics Co., Ltd. Method and system for securely sharing content
US20120166983A1 (en) * 2010-12-28 2012-06-28 Hilmar Demant Integrated metadata and nested authorizations in a user interface framework
US8438654B1 (en) 2012-09-14 2013-05-07 Rightscale, Inc. Systems and methods for associating a virtual machine with an access control right
US20130259234A1 (en) * 2012-03-29 2013-10-03 Microsoft Corporation Role-based distributed key management
WO2014099012A1 (en) * 2012-12-17 2014-06-26 Thomson Licensing Method and apparatus for assigning devices to a media service
US20140208404A1 (en) * 2013-01-18 2014-07-24 Apple Inc. Conflict resolution for keychain syncing
US20140281540A1 (en) * 2013-01-18 2014-09-18 Apple Inc. Keychain syncing
US9026805B2 (en) 2010-12-30 2015-05-05 Microsoft Technology Licensing, Llc Key management using trusted platform modules
US20150143464A1 (en) * 2013-11-19 2015-05-21 Oberthur Technologies Method and device for the connection to a remote service
US20150188762A1 (en) * 2013-12-27 2015-07-02 Samsung Electronics Co., Ltd. Method and system for registering control devices in server
US20160165554A1 (en) * 2014-12-03 2016-06-09 General Electric Company Radio frequency identification modes in patient monitoring
US9565185B2 (en) * 2014-11-24 2017-02-07 At&T Intellectual Property I, L.P. Facilitation of seamless security data transfer for wireless network devices
US20170093875A1 (en) * 2015-09-25 2017-03-30 Charter Communications Operating, Llc System and method for authorizing a subscriber device
US20180332032A1 (en) * 2017-05-12 2018-11-15 Bank Of America Corporation Preventing Unauthorized Access to Secured Information Systems Using Authentication Tokens and Multi-Device Authentication Prompts
US20200065811A1 (en) * 2018-08-21 2020-02-27 Bank Of America Corporation Exposure based secure access system
US10791116B1 (en) * 2016-09-30 2020-09-29 NortonLifeLock Inc. Systems and methods for securing universal plug and play connections
US10972464B2 (en) * 2017-10-31 2021-04-06 Smk Corporation Network system
US20210203646A1 (en) * 2018-08-30 2021-07-01 Telefonaktiebolaget Lm Ericsson (Publ) Method for restricting access to a management interface using standard management protocols and software
US11394712B2 (en) * 2019-01-18 2022-07-19 Anchor Labs, Inc. Secure account access
US11405375B2 (en) * 2018-09-27 2022-08-02 Lenovo (Singapore) Pte. Ltd. Device and method for receiving a temporary credit token

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10147984B2 (en) 2015-07-31 2018-12-04 SynCells, Inc. Portable and modular energy storage for multiple applications
US9641553B2 (en) 2015-09-25 2017-05-02 Intel Corporation Methods and apparatus to facilitate end-user defined policy management
US11125461B2 (en) 2017-06-13 2021-09-21 Gerard O'Hora Smart vent system with local and central control
US11271766B2 (en) * 2017-06-13 2022-03-08 SynCells, Inc. Energy virtualization layer with a universal smart gateway
US11394573B2 (en) 2017-06-13 2022-07-19 SynCells, Inc. Energy virtualization layer with a universal smart gateway
US10203738B2 (en) * 2017-06-13 2019-02-12 SynCells, Inc. Energy virtualization layer for commercial and residential installations
US10850713B2 (en) 2017-10-20 2020-12-01 SynCells, Inc. Robotics for rotating energy cells in vehicles
US20200187006A1 (en) * 2018-12-06 2020-06-11 Whirlpool Corporation Communication system and method for authorizing an appliance

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5850446A (en) * 1996-06-17 1998-12-15 Verifone, Inc. System, method and article of manufacture for virtual point of sale processing utilizing an extensible, flexible architecture
US6163772A (en) * 1996-06-17 2000-12-19 Hewlett-Packard Company Virtual point of sale processing using gateway-initiated messages
US6178409B1 (en) * 1996-06-17 2001-01-23 Verifone, Inc. System, method and article of manufacture for multiple-entry point virtual point of sale architecture
US6240512B1 (en) * 1998-04-30 2001-05-29 International Business Machines Corporation Single sign-on (SSO) mechanism having master key synchronization
US20020194483A1 (en) * 2001-02-25 2002-12-19 Storymail, Inc. System and method for authorization of access to a resource
US20030097564A1 (en) * 2000-08-18 2003-05-22 Tewari Anoop Kailasnath Secure content delivery system
US6574617B1 (en) * 2000-06-19 2003-06-03 International Business Machines Corporation System and method for selective replication of databases within a workflow, enterprise, and mail-enabled web application server and platform
US20050005116A1 (en) * 2002-09-18 2005-01-06 Commerce One Operations, Inc. Dynamic interoperability contract for web services
US20050076217A1 (en) * 2003-10-03 2005-04-07 Lord Christopher J. Integrating a device into a secure network
US20060098649A1 (en) * 2004-11-10 2006-05-11 Trusted Network Technologies, Inc. System, apparatuses, methods, and computer-readable media for determining security realm identity before permitting network connection
US20060106836A1 (en) * 2002-06-07 2006-05-18 Madoka Masugi Data processing system, data processing device, data processing method, and computer program
US20060112425A1 (en) * 2004-11-23 2006-05-25 Smith Michael R Method and system for including security information with a packet
US7583401B2 (en) * 2002-06-27 2009-09-01 Snap-On Technologies, Inc. Portal for distributing business and product information

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI105739B (en) * 1998-06-10 2000-09-29 Ssh Comm Security Oy Network-connectable arrangement and method for its installation and configuration
US6772331B1 (en) * 1999-05-21 2004-08-03 International Business Machines Corporation Method and apparatus for exclusively pairing wireless devices
US7499995B2 (en) * 2005-06-28 2009-03-03 International Business Machines Corporation Managing permission for accessing third party applications on a telecommunications network
US7606838B2 (en) 2006-02-22 2009-10-20 Microsoft Corporation Distributed conflict resolution for replicated databases

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5850446A (en) * 1996-06-17 1998-12-15 Verifone, Inc. System, method and article of manufacture for virtual point of sale processing utilizing an extensible, flexible architecture
US6163772A (en) * 1996-06-17 2000-12-19 Hewlett-Packard Company Virtual point of sale processing using gateway-initiated messages
US6178409B1 (en) * 1996-06-17 2001-01-23 Verifone, Inc. System, method and article of manufacture for multiple-entry point virtual point of sale architecture
US6240512B1 (en) * 1998-04-30 2001-05-29 International Business Machines Corporation Single sign-on (SSO) mechanism having master key synchronization
US6574617B1 (en) * 2000-06-19 2003-06-03 International Business Machines Corporation System and method for selective replication of databases within a workflow, enterprise, and mail-enabled web application server and platform
US20030097564A1 (en) * 2000-08-18 2003-05-22 Tewari Anoop Kailasnath Secure content delivery system
US20020194483A1 (en) * 2001-02-25 2002-12-19 Storymail, Inc. System and method for authorization of access to a resource
US20060106836A1 (en) * 2002-06-07 2006-05-18 Madoka Masugi Data processing system, data processing device, data processing method, and computer program
US7583401B2 (en) * 2002-06-27 2009-09-01 Snap-On Technologies, Inc. Portal for distributing business and product information
US20050005116A1 (en) * 2002-09-18 2005-01-06 Commerce One Operations, Inc. Dynamic interoperability contract for web services
US20050076217A1 (en) * 2003-10-03 2005-04-07 Lord Christopher J. Integrating a device into a secure network
US20060098649A1 (en) * 2004-11-10 2006-05-11 Trusted Network Technologies, Inc. System, apparatuses, methods, and computer-readable media for determining security realm identity before permitting network connection
US20060112425A1 (en) * 2004-11-23 2006-05-25 Smith Michael R Method and system for including security information with a packet

Cited By (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8069488B2 (en) * 2005-10-19 2011-11-29 Samsung Electronics Co., Ltd. Method and apparatus for exclusively controlling a device in a home network
US20080229406A1 (en) * 2005-10-19 2008-09-18 Samsung Electronics Co., Ltd. Method and apparatus for exclusively controlling a device in a home network
US20090182860A1 (en) * 2008-01-15 2009-07-16 Samsung Electronics Co., Ltd. Method and system for securely sharing content
US8275884B2 (en) * 2008-01-15 2012-09-25 Samsung Electronics Co., Ltd. Method and system for securely sharing content
US20120166983A1 (en) * 2010-12-28 2012-06-28 Hilmar Demant Integrated metadata and nested authorizations in a user interface framework
US9026805B2 (en) 2010-12-30 2015-05-05 Microsoft Technology Licensing, Llc Key management using trusted platform modules
US20130259234A1 (en) * 2012-03-29 2013-10-03 Microsoft Corporation Role-based distributed key management
US9634831B2 (en) * 2012-03-29 2017-04-25 Microsoft Technology Licensing, Llc Role-based distributed key management
US9008316B2 (en) * 2012-03-29 2015-04-14 Microsoft Technology Licensing, Llc Role-based distributed key management
US20150215118A1 (en) * 2012-03-29 2015-07-30 Microsoft Technology Licensing, Llc Role-based distributed key management
US8943606B2 (en) 2012-09-14 2015-01-27 Rightscale, Inc. Systems and methods for associating a virtual machine with an access control right
US8438654B1 (en) 2012-09-14 2013-05-07 Rightscale, Inc. Systems and methods for associating a virtual machine with an access control right
WO2014099012A1 (en) * 2012-12-17 2014-06-26 Thomson Licensing Method and apparatus for assigning devices to a media service
US9825961B2 (en) 2012-12-17 2017-11-21 Thomson Licensing Method and apparatus for assigning devices to a media service
US9077759B2 (en) * 2013-01-18 2015-07-07 Apple Inc. Conflict resolution for keychain syncing
US10771545B2 (en) * 2013-01-18 2020-09-08 Apple Inc. Keychain syncing
US20190273729A1 (en) * 2013-01-18 2019-09-05 Apple Inc. Keychain syncing
US9684801B2 (en) 2013-01-18 2017-06-20 Apple Inc. Data protection for keychain syncing
US9124637B2 (en) 2013-01-18 2015-09-01 Apple Inc. Data protection for keychain syncing
US9197700B2 (en) * 2013-01-18 2015-11-24 Apple Inc. Keychain syncing
US20160065548A1 (en) * 2013-01-18 2016-03-03 Apple Inc. Keychain syncing
US10218685B2 (en) * 2013-01-18 2019-02-26 Apple Inc. Keychain syncing
US9479583B2 (en) 2013-01-18 2016-10-25 Apple Inc. Conflict resolution for keychain syncing
US20140281540A1 (en) * 2013-01-18 2014-09-18 Apple Inc. Keychain syncing
US9710673B2 (en) 2013-01-18 2017-07-18 Apple Inc. Conflict resolution for keychain syncing
US20140208404A1 (en) * 2013-01-18 2014-07-24 Apple Inc. Conflict resolution for keychain syncing
US20150143464A1 (en) * 2013-11-19 2015-05-21 Oberthur Technologies Method and device for the connection to a remote service
US9699190B2 (en) * 2013-11-19 2017-07-04 Oberthur Technologies Method and device for the connection to a remote service
KR20150076531A (en) * 2013-12-27 2015-07-07 삼성전자주식회사 Method and apparatus for registering control device to server
US20150188762A1 (en) * 2013-12-27 2015-07-02 Samsung Electronics Co., Ltd. Method and system for registering control devices in server
KR102147237B1 (en) * 2013-12-27 2020-08-24 삼성전자주식회사 Method and apparatus for registering control device to server
US10389816B2 (en) * 2013-12-27 2019-08-20 Samsung Electronics Co., Ltd. Method and system for registering control devices in server
US9565185B2 (en) * 2014-11-24 2017-02-07 At&T Intellectual Property I, L.P. Facilitation of seamless security data transfer for wireless network devices
US10616766B2 (en) 2014-11-24 2020-04-07 At&T Intellectual Property I, L.P. Facilitation of seamless security data transfer for wireless network devices
US10070312B2 (en) 2014-11-24 2018-09-04 At&T Intellectual Property I, L.P. Facilitation of seamless security data transfer for wireless network devices
US20160165554A1 (en) * 2014-12-03 2016-06-09 General Electric Company Radio frequency identification modes in patient monitoring
US10021657B2 (en) 2014-12-03 2018-07-10 General Electric Company Radio frequency identification modes in patient monitoring
US10548006B2 (en) * 2015-09-25 2020-01-28 Charter Communications Operating, Llc System and method for authorizing a subscriber device
US20170093875A1 (en) * 2015-09-25 2017-03-30 Charter Communications Operating, Llc System and method for authorizing a subscriber device
US10791116B1 (en) * 2016-09-30 2020-09-29 NortonLifeLock Inc. Systems and methods for securing universal plug and play connections
US10645079B2 (en) * 2017-05-12 2020-05-05 Bank Of America Corporation Preventing unauthorized access to secured information systems using authentication tokens and multi-device authentication prompts
US20180332032A1 (en) * 2017-05-12 2018-11-15 Bank Of America Corporation Preventing Unauthorized Access to Secured Information Systems Using Authentication Tokens and Multi-Device Authentication Prompts
US11005840B2 (en) * 2017-05-12 2021-05-11 Bank Of America Corporation Preventing unauthorized access to secured information systems using authentication tokens and multi-device authentication prompts
US11184355B2 (en) * 2017-05-12 2021-11-23 Bank Of America Corporation Preventing unauthorized access to secured information systems using authentication tokens and multi-device authentication prompts
US20220046008A1 (en) * 2017-05-12 2022-02-10 Bank Of America Corporation Preventing Unauthorized Access to Secured Information Systems Using Authentication Tokens and Multi-Device Authentication Prompts
US11689524B2 (en) * 2017-05-12 2023-06-27 Bank Of America Corporation Preventing unauthorized access to secured information systems using authentication tokens and multi-device authentication prompts
US10972464B2 (en) * 2017-10-31 2021-04-06 Smk Corporation Network system
US20200065811A1 (en) * 2018-08-21 2020-02-27 Bank Of America Corporation Exposure based secure access system
US11087323B2 (en) * 2018-08-21 2021-08-10 Bank Of America Corporation Exposure based secure access system
US20210203646A1 (en) * 2018-08-30 2021-07-01 Telefonaktiebolaget Lm Ericsson (Publ) Method for restricting access to a management interface using standard management protocols and software
US11757853B2 (en) * 2018-08-30 2023-09-12 Telefonaktiebolaget Lm Ericsson (Publ) Method for restricting access to a management interface using standard management protocols and software
US11405375B2 (en) * 2018-09-27 2022-08-02 Lenovo (Singapore) Pte. Ltd. Device and method for receiving a temporary credit token
US11394712B2 (en) * 2019-01-18 2022-07-19 Anchor Labs, Inc. Secure account access

Also Published As

Publication number Publication date
WO2007021495A3 (en) 2009-05-07
US9680810B2 (en) 2017-06-13
US10225256B2 (en) 2019-03-05
WO2007021495A2 (en) 2007-02-22
US20170250987A1 (en) 2017-08-31
US20130205372A1 (en) 2013-08-08

Similar Documents

Publication Publication Date Title
US10225256B2 (en) Authorization of device access to network services
CN108293045B (en) Single sign-on identity management between local and remote systems
US11405395B2 (en) Accessing an internet of things device using blockchain metadata
US7958543B2 (en) Account synchronization for common identity in an unmanaged network
CN107534670B (en) Using temporary credentials in guest mode
CN101669128B (en) Cascading authentication system
US9608814B2 (en) System and method for centralized key distribution
EP2756444B1 (en) Resource access authorization
US11184353B2 (en) Trusted status transfer between associated devices
US20100274859A1 (en) Method And System For The Creation, Management And Authentication Of Links Between Entities
US20120174212A1 (en) Connected account provider for multiple personal computers
CN111742531B (en) Profile information sharing
JP2010531516A (en) Device provisioning and domain join emulation over insecure networks
JP2003233589A (en) Method for safely sharing personal devices among different users
US20140237615A1 (en) Portable license server
KR20080011165A (en) Apparatus and method for network identification among multiple applications
WO2018022387A1 (en) Bulk joining of computing devices to an identity service
US9455972B1 (en) Provisioning a mobile device with a security application on the fly
US11716426B2 (en) Techniques for implementing phone number-based user accounts with permissions to access varying levels of services utilizing visible and hidden contact addresses
GB2451226A (en) A method and system for the creation, management and authentication of links between people, entities, objects and devices
JP2000105747A (en) Screen control method for single log-in system
US20220141091A1 (en) Digital ownership escrow for network-configurable devices
CN113794895B (en) Virtual article information pushing method and device based on live broadcast platform
Pandey et al. AutoAdd: Automated Bootstrapping of an IoT Device on a Network
US20130304862A1 (en) Systems and methods for device-agnostic wireless synchronization

Legal Events

Date Code Title Description
AS Assignment

Owner name: MICROSOFT CORPORATION, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GILBERT, MARK;MEVISSEN, RON J.;REEL/FRAME:016612/0948

Effective date: 20050809

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION

AS Assignment

Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034766/0001

Effective date: 20141014