IP Library Granted Patent US 10,003,670
Granted Patent B2
US 10,003,670 · App. 15/186,069 · Granted Jun 19, 2018

Remote provisioning and enrollment of enterprise devices with on-premises domain controllers

Inventors: Chase Bradley (Atlanta, GA); Kevin Jones (Atlanta, GA)
Assignee: AIRWATCH LLC
H04L67/34H04L12/4641H04L41/0806H04L61/1511H04L67/306H04L67/42
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,003,670
App. No.
15/186,069
Granted
Jun 19, 2018
Kind
B2
Abstract

An agent application executing on a client device retrieves an execute command from a command queue managed by a server and retrieves certificates and configuration settings for establishing a virtual private network (VPN) connection. An enrollment application resident on the client device executes in response to the execute command to modify a network setting of a network interface card (NIC) of the client device and establish a VPN connection with a domain controller located within the corporate domain using the certificate and configuration settings. The enrollment application further transmits a request over the VPN connection to the domain controller to join the corporate domain, wherein a corporate account in a directory service is established for the client device; reverts back to the prior network setting of the NIC and terminates the VPN connection and reboots the client device.

Claims (51)

1. A method implemented in a client device for provisioning and enrolling the client device to access enterprise resources within a corporate domain, comprising:

retrieving, by a client device, an enrollment application from a command queue managed by a server, the command queue being associated with the client device;

retrieving certificates and configuration settings for establishing a virtual private network (VPN) connection;

executing the enrollment application to cause the client device to perform the steps of:

modifying a network setting of a network interface card (NIC) of the client device;

establishing the VPN connection with a domain controller located within the corporate domain using the certificate and configuration settings, the domain controller being configured to process login requests to the corporate domain;

transmitting a request over the VPN connection to the domain controller to join the corporate domain, wherein a corporate account in a directory service is established for the client device;

reverting back to the prior network setting of the NIC and terminating the VPN connection; and

rebooting the client device.

2. The method of claim 1 , wherein the network setting comprises a domain name server (DNS) setting of the NIC, and wherein the enrollment application reconfigures the NIC to utilize the domain controller as a DNS server for the client device.

3. The method of claim 1 , wherein the enrollment application comprises an application programming interface (API) configured to interface with an operating system (OS) kernel, the OS kernel being configured to control operation of the NIC.

4. The method of claim 3 , wherein the API comprises unmanaged computer code compiled directly to machine code and directly executed by the OS.

5. The method of claim 1 , wherein execution of the enrollment application further causes the client device to perform the steps of:

modifying one or more existing user accounts on the client device; and

removing administrator access of the user of the client device to restrict installation of unauthorized software on the client device.

6. The method of claim 5 , wherein modifying the one or more existing user accounts on the client device comprises:

removing each of the one or more existing user accounts on the client device; and

establishing a new user account corresponding to the corporate account in the directory service.

7. The method of claim 1 , further comprising performing periodic checks with the domain controller to receive updates from the directory service.

8. The method of claim 1 , wherein the certificates and configuration settings for establishing the VPN connection are retrieved over a device management channel, and wherein the certificates and configurations settings are encrypted.

9. The method of claim 1 , wherein execution of the enrollment application further causes the client device to perform the step of:

upon rebooting the client device, populating a login prompt for the client device with a username associated with the corporate account in the directory service established for the client device.

10. A non-transitory computer-readable medium embodying a program executable in a client device, the program, when executed by the client device causes the client device to perform the operations of:

retrieving an execute command from a command queue managed by a server, the command queue being associated with the client device;

retrieving certificates and configuration settings for establishing a virtual private network (VPN) connection;

modifying a network setting of a network interface card (NIC) of the client device;

establishing the VPN connection with a domain controller located within the corporate domain using the certificate and configuration settings, the domain controller being configured to process login requests to the corporate domain;

transmitting a request over the VPN connection to the domain controller to join the corporate domain, wherein a corporate account in a directory service is established for the client device;

reverting back to the prior network setting of the NIC and terminating the VPN connection; and

rebooting the client device.

11. The non-transitory computer-readable medium of claim 10 , wherein the network setting comprises a domain name server (DNS) setting of the NIC, and wherein the enrollment application reconfigures the NIC to utilize the domain controller as a DNS server for the client device.

12. The non-transitory computer-readable medium of claim 10 , wherein at least a portion of the program comprises an application programming interface (API) configured to interface with an operating system (OS) kernel, the OS kernel being configured to control operation of the NIC.

13. The non-transitory computer-readable medium of claim 12 , wherein the API comprises unmanaged computer code compiled directly to machine code and directly executed by the OS.

14. The non-transitory computer-readable medium of claim 10 , wherein execution of the program further causes the client device to perform the operations of:

modifying one or more existing user accounts on the client device; and

removing administrator access of the user of the client device to restrict installation of unauthorized software on the client device.

15. The non-transitory computer-readable medium of claim 14 , wherein modifying the one or more existing user accounts on the client device comprises:

removing each of the existing user accounts on the client device; and

establishing a new user account corresponding to the corporate account in the directory service.

16. The non-transitory computer-readable medium of claim 10 , wherein execution of the program further causes the client device to at least:

perform periodic checks with the domain controller to receive updates from the directory service.

17. The non-transitory computer-readable medium of claim 10 , wherein the certificates and configuration settings for establishing the VPN connection are retrieved over a device management channel, wherein the certificates and configurations settings are encrypted.

18. The non-transitory computer-readable medium of claim 10 , wherein execution of the program further causes the client device to at least:

upon rebooting the client device, populate a login prompt for the client device with a username associated with the corporate account in the directory service established for the client device.

19. A method implemented in a computing device for provisioning and enrolling a client device located outside a corporate domain to access enterprise resources within a corporate domain, comprising:

determining, by the computing device, whether the client device located outside the corporate domain lacks an application native to the operating system of the client device with a programming interface that supports direct communication with the computing device for remotely initiating execution of an application for remotely adding the client device to the corporate domain;

in response to determining that the client device lacks the application, placing an enrollment application, one or more virtual private network (VPN) certificates, and data comprising VPN settings in a command queue associated with the client device; and

transmitting an instruction to the client device to retrieve the enrollment application, the one or more VPN certificates, and the data comprising VPN settings from the command queue associated with the client device.

20. The method of claim 19 , further comprising:

receiving notification from a domain controller within the corporate domain relating to addition of a new directory service account for the client device; and

in response to the notification, associating the client device with an organizational group for a management service executing on the computing device.

Assignments (3)
PATENT ASSIGNMENT Recorded Aug 5, 2024
From: AIRWATCH LLC
To: OMNISSA, LLC
Reel/Frame 068327/0670 →
SECURITY INTEREST Recorded Jul 3, 2024
From: OMNISSA, LLC
To: UBS AG, STAMFORD BRANCH
Reel/Frame 068118/0004 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 17, 2016
From: BRADLEY, CHASE; JONES, KEVIN
To: AIRWATCH, LLC
Reel/Frame 038947/0053 →
Continuity (1)
Related Publication 20170366646A1 · Dec 21, 2017