| // Copyright 2019 The Chromium Authors | 
 | // Use of this source code is governed by a BSD-style license that can be | 
 | // found in the LICENSE file. | 
 |  | 
 | #include "base/enterprise_util.h" | 
 |  | 
 | #include "base/win/win_util.h" | 
 | #include "base/win/windows_version.h" | 
 |  | 
 | namespace base { | 
 |  | 
 | bool IsManagedDevice() { | 
 |   // Legacy domain join does not actually guarantee that the device is managed, | 
 |   // however there is no API that can be used to determine if any group policies | 
 |   // are actually being applied. As such, for these devices we need to assume | 
 |   // they are managed. | 
 |   // In addition, simply being joined to AAD does not mean the device is being | 
 |   // managed by the AAD tenant, so checking for AAD join is not included here. | 
 |   return base::win::IsEnrolledToDomain() || | 
 |          base::win::IsDeviceRegisteredWithManagement(); | 
 | } | 
 |  | 
 | bool IsEnterpriseDevice() { | 
 |   // Both legacy domain join and AAD join represent machine-wide enterprise | 
 |   // join. | 
 |   return base::win::IsEnrolledToDomain() || base::win::IsJoinedToAzureAD(); | 
 | } | 
 |  | 
 | }  // namespace base |