SECURE COMMUNICATION SYSTEM AND METHOD
20170230374 ยท 2017-08-10
Inventors
- Dan T. Pawl (Saranac, MI, US)
- Nathan J. Pawl (Walled Lake, MI, US)
- Timothy F. Gallagher (Canton, MI, US)
Cpc classification
G06F21/316
PHYSICS
International classification
Abstract
A secure communication system comprises a software program client operating on a host computing device, a service manager configured to manage client access to the protected services, an authorizer in communication between the client and the service manager, and a receiver in communication with the service manager and serves as an interface to the protected services. At least one of a browser and an application of the client is configured to access one or more protected services running on a computing device that is remote to the host computing device over a communication channel. The service manager maintains a list of predetermined services authorized for the client and limits client access to the predetermined services.
Claims
1. A secure communication system comprising: a software program client operating on a host computing device, wherein said client is configured to access one or more protected services running on a computing device that is remote to said host computing device over a communication channel; a service manager configured to manage said access to said protected services by said client, wherein said service manager maintains a list of predetermined services authorized for said client and limits said access of said client to said predetermined services; an authorizer in communication between said client and said service manager, wherein said authorizer is operable to authenticate said client and, upon authentication, request said predetermined services authorized for said client from said service manager to relay to said client; and a receiver in communication with said service manager and serving as an interface to said protected services, wherein said receiver ignores connection requests from said client until a notification is received from said service manager authorizing said receiver to open a communication channel with said client, wherein access of at least one of a browser and an application of said client is limited to said predetermined services, and wherein the at least one of a browser and an application of said client communicates with said predetermined services through said receiver.
2. The secure communication system of claim 1, wherein said client is further configured to maintain a heartbeat connection with said authorizer, and wherein said authorizer sends a request to said service manager to have said receiver disconnect said communication channel with said client when said heartbeat is no longer present.
3. The secure communication system of claim 1, further including a switch or router in communication between said client and said receiver, wherein said switch or router is configured to direct data messages not intended for said protected services away from said receiver.
4. The secure communication system of claim 1, wherein communication between said client, said authorizer, said service manager and said receiver is over a network.
5. The secure communication system of claim 4, wherein said network is the Internet.
6. The secure communication system of claim 1, wherein said communication between said receiver and said protected services is over a local bus network.
7. The secure communication system of claim 6, wherein said local bus network is a local bus.
8. The secure communication system of claim 1, wherein said communication channel between said client and said receiver is secure.
9. An authorizer comprising: a communication device operable to send and receive messages over a network; and a processing device in digital communication with said communication device, wherein said processing device is enabled to: authenticate an access request to one or more protected services running on a remote computing device based on a user identity received through said communication device from a client operating on a remote host computing device, wherein said user identity identifies the user requesting access to said protected services; request a list of available services associated with said user identity from a service manager using said communication device, wherein said service manager maintains a list of predetermined services authorized for said user identity; and return said list of predetermined services to said client using said communication device.
10. The authorizer of claim 9, wherein said processing device is further enabled to monitor a heartbeat message received periodically over said communication device from said client and report to said service manager using said communication device when said heartbeat message is no longer present.
11. The authorizer of claim 9, wherein said network is an internet.
12. A service manager comprising: a communication device operable to send and receive messages over a network; a memory device for storing access rights to one or more protected services running on a remote computing device; and a processing device in digital communication with said communication device and said memory device, wherein said processing device is enabled to: retrieve from said memory device a list of protected services authorized for a remote client operating on a host computing system based on a user identity received through said communication device and return said list of said protected services associated with said user identity using said communication device; and validate a request received through said communication device to access said protected services based on said access rights stored in said memory device and notify a receiver of said valid request, wherein said receiver is in communication between said client and said protected services, and wherein said receiver ignores all attempts to communicate with said protected services until notified of said valid session request.
13. The authorizer of claim 12, wherein said processing device is further enabled to track a history of connections to said protected services.
14. The service manager of claim 12, wherein said network is an internet.
15. A receiver comprising: a communication device operable to send and receive messages over a network; and a processing device in communication with said communication device; wherein said processing device is enabled to create a communication session between at least one of a browser and an application of a client operating on a host computing system and one or more protected services running on a remote computing device, wherein said processing device ignores requests from said client to access said protected services until said processing device receives an authorization from a service manager through said communication device, wherein said service manager is configured to manage access to said protected services, and wherein said communication session between the at least one of a browser and an application of said client and said protected services is through said receiver.
16. The receiver of claim 15, wherein said network is an internet.
17. The receiver of claim 15, further comprising a local bus hardware controller for communicating with said protected services.
18. The receiver of claim 17, wherein said local bus hardware controller is a local bus hardware controller.
19. The receiver of claims 15, wherein said communication session between said receiver and at least one of a browser and an application of said client is secure.
20. A method of securely accessing protected services running on a remote computing device comprising: transmitting a user identity over a network to an authorizer for authentication, wherein said authorizer is in communication with a service manager configured to limit access to said protected services based on limitations established by an administrator of said protected services; waiting to receive an authentication response from said authorizer over said network, wherein said authentication response includes a list of protected services authorized for said user identity; transmitting a request to access one or more services from said list of protected services to said authorizer over said network, wherein said authorizer relays said request to said service manager, and wherein said request is verified by said service manager based on said list of protected services authorized for said user identity; transmitting a connection request over said network to a receiver, wherein said receiver is in communication with said protected services, and wherein said receiver is configured to ignore said connection request until said receiver receives a notification from said service manager that said request to access said protected services has been verified; waiting for said receiver to validate said connection request and open a communication channel; and communicating with said service through said receiver over said communication channel.
21. The method of claim 20, further comprising transmitting a heartbeat message to said authorizer over said network to keep said communication channel open.
22. The method of claim 20, wherein said communication channel with said receiver is secured.
23. The method of claim 20, wherein said network is an internet.
24. A method of providing access to protected services running on a remote server comprising: authenticating a client requesting access to said protected services based on a user identity received from said client, wherein said user identity identifies a host computing system running said client; retrieving a list of protected services authorized for said host computing system based on said user identity; and opening a communication channel between at least one of a browser and an application of said client and said protected services through a receiver, wherein all communication between the at least one of a browser and an application of said client and said protected services is through said receiver, and wherein said access of the at least one of a browser and an application of said client to said protected services is limited to protected services authorized for said host computing system.
25. The method of claim 24, further comprising monitoring a heartbeat message received from said client and closing said communication channel if said heartbeat message is no longer received.
26. The method of claim 24, wherein said communication channel between said client and said receiver is secure.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
[0027]
DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0028] The present invention will now be described with reference to the accompanying figures, wherein the numbered elements in the following written description correspond to like numbered elements in the figures. As illustrated in
[0029] Referring again to
[0030] Authorizer 24 is a hardware unit comprising a communication device and a processing device with embedded software to perform authorization and authentication functions in concert with client 22 and service manager 26. As shown in
[0031] As best described with reference to
[0032] Receiver 28 is a hardware unit comprising a communication device and a processing device with embedded software for managing communication sessions with protected services 30. As illustrated in
[0033] The secure communication process is shown in
[0034] It should be noted that if a request is denied or a failure occurs at any one of the five tiers of authorization, no not acknowledge message is returned. Intentionally, secure communication system 20 does not return a response to the request. This is a security feature to maintain darkness of the service against malicious probes. Secure communication system 20 is now ready for client host 32 to connect through the validated session to the targeted service. This can be accomplished through a traditional browser or, more directly, from a user's host software program through a variety of network protocols. The session remains open as long as there is activity or until client host 32 shuts down the session. After the session is closed, the entire secure communication process must be repeated in order to open another secure communication session. As noted above, all communication between client 22 and services 30 is through receiver 28. Client 22 never communicates directly with services 30.
[0035]
[0036] A partially isolated secured communication system 220 incorporating a targeted local bus network 96 is shown in
[0037] System 220 includes an actor host 232 having an associated client 222, an authorizer 224, and a service manager 226 all located in the internet 94 similar to system 120 described above. However, unlike system 120, secure communication system 220 includes targeted local bus network 96, which uses a local bus and bus networking protocols for a more predictable high speed response and to separate internet traffic from bus traffic. A specific example of a local bus is a CAN bus, which is a message based protocol routinely used in automobiles or automated guided vehicles used in manufacturing. As automotive suppliers are adding more diagnostic capabilities, there is a greater need for telecommuting this information outside the local bus and, in some instances, loading critical updates to those protected services. However, in doing so, many of the critical controller edges are exposed to potential malicious outside sources. System 220 applies the secure communication security and control discussed above to those protected services on the local bus. In system 220, an authorizer 225 local to bus network 96 operates in concert with internet-based service manager 226. Authorizer 225 may be a software module integrated with a local bus hardware controller, such as a CAN bus hardware controller, which maintains target local bus protected services signatures. Like authorizer 225, a receiver 228 may be a software module integrated with the local bus hardware controller to perform the receiver functions defined above and to provide a bridge for telecommunicating to protected services 230 on the local bus.
[0038] A secure communication system 320 having a partially isolated network architecture is shown in
[0039] A secure communication system 420 having a fully isolated network architecture is illustrated in
[0040] Secured communication system 420 is particularly useful for entities that need to physically and logically secure authorizer 424, service manager 426 and receiver 428 such that these devices only perform secure communication functions for actor hosts 432 within isolated network 438. There would be no traffic from other entities on their logically isolated network. The loading on authorizer 424 and service manager 426 would be only their isolated loading from clients 422 in isolated network 438.
[0041] Therefore, the present invention provides secure access to computer services by authenticating the client attempting to access the service before exposing the service to the client and limiting access to only those specific services authorized for that particular client. Authentication is done without accessing the services or exposing the services to any outside person or computer. That is, the services remain dark and cannot be seen and are not accessible to any outside probes. Only after the client has been authenticated is a secure connection between the client and the service created.
[0042] While the foregoing description describes several embodiments of the present invention, it will be understood by those skilled in the art that variations and modifications to these embodiments may be made without departing from the spirit and scope of the invention, as defined in the claims below. The present invention encompasses all combinations of various embodiments or aspects of the invention described herein. It is understood that any and all embodiments of the present invention may be taken in conjunction with any other embodiment to describe additional embodiments of the present invention. Furthermore, any elements of an embodiment may be combined with any and all other elements of any of the embodiments to describe additional embodiments.