How to List Location Services Status Across All Macs
Using Kolide, you can easily view and query Mac Location Services Status across your fleet.
Introduction
Location Services are a configurable preference on macOS which allows full state (Location Services enabled/disabled) and granular control of various services and software which can interact with the Location Services API of your device. This inventory captures the global state of Location Services as well as the configuration of macOS System Services which collect location data. In addition to configuration state, this inventory also captures datetime data for determining when a system service accesses your device's location data.
For more information about macOS Location Services refer to the official Apple support documentation: Manage which apps can detect your Mac location
What Mac Location Services Status Data Can Kolide Collect?
Kolide's endpoint agent bundles in osquery to efficiently collect Mac Location Services Status from Macs in your fleet. Once collected, Kolide will parse, clean up, and centrally store this data in Inventory for your team to view, query, or export via API.
Kolide meticulously documents every piece of data returned so you can understand the results.
Mac Location Services Status Schema
Column | Type | Description | |
---|---|---|---|
id | Primary Key |
Unique identifier for the object |
|
device_id | Foreign Key |
Device associated with the entry |
|
device_name | Text |
Display name of the device associated with the entry |
|
enabled | Boolean |
|
|
find_my_mac_status | Enum::Text |
The status of the Find My Mac background system service Can be one of the following:
|
|
find_my_mac_time_end | Timestamp |
The precise time the Find My service stopped requesting data from the Location Services API. Note: If |
|
find_my_mac_time_start | Timestamp |
The precise time the Find My service started requesting data from the Location Services API. Note: |
|
home_kit_status | Enum::Text |
The status of the Location Services HomeKit setting Can be one of the following:
|
|
home_kit_time_end | Timestamp |
The precise time HomeKit stopped requesting data from the Location Services API. Note: If |
|
home_kit_time_start | Timestamp |
The precise time HomeKit started requesting data from the Location Services API. Note: |
|
location_based_apple_ads_status | Enum::Text |
The status of the Location Based Apple Ads setting. This option was removed starting in macOS 11 Can be one of the following:
|
|
location_based_apple_ads_time_end | Timestamp |
The precise time the Apple Ads service stopped requesting data from the Location Services API. Note: If |
|
location_based_apple_ads_time_start | Timestamp |
The precise time the Apple Ads service started requesting data from the Location Services API. Note: |
|
location_based_suggestions_status | Enum::Text |
The status of the Location Based Suggestions setting. Can be one of the following:
|
|
location_based_suggestions_time_end | Timestamp |
The precise time the Location Based Suggestions service stopped requesting data from the Location Services API. Note: If |
|
location_based_suggestions_time_start | Timestamp |
The precise time the Location Based Suggestions service started requesting data from the Location Services API. Note: |
|
significant_locations_status | Enum::Text |
The status of the Location Services Significant Locations setting. Can be one of the following:
|
|
significant_locations_time_end | Timestamp |
The precise time the Significant Locations service stopped requesting data from the Location Services API. Note: If |
|
significant_locations_time_start | Timestamp |
The precise time the Significant Locations service started requesting data from the Location Services API. Note: |
|
time_zone_and_system_customization_status | Enum::Text |
The status of the Time Zone and System Customization setting. Can be one of the following:
|
|
time_zone_and_system_customization_time_end | Timestamp |
The precise time the Time Zone and System Customization feature stopped requesting data from the Location Services API. Note: If |
|
time_zone_and_system_customization_time_start | Timestamp |
The precise time the Time Zone and System Customization feature started requesting data from the Location Services API. Note: |
|
wifi_networking_status | Enum::Text |
The status of the Location Services Wifi Networking setting. Can be one of the following:
|
|
wifi_networking_time_end | Timestamp |
The precise time the Wifi Networking service stopped requesting data from the Location Services API. Note: If |
|
wifi_networking_time_start | Timestamp |
The precise time the Wifi Networking service started requesting data from the Location Services API. Note: |
|
collected_at | Timestamp |
Time the row of data was first collected in the database |
|
updated_at | Timestamp |
Time the row of data was last changed in the database |
|
What Can You Do With This Information?
Kolide enables you to write your own queries against the data the agent collects. This allows you to build your own reports and API endpoints. For example, you can:
SELECT device_id, device_name, enabled FROM mac_location_services WHERE enabled = 'false'
enabled | device_name |
---|---|
false | Mikes-MacBook-Pro |
false | Assans-MacBook-Air |
false | chris |
false | Laptop-2 |
false | Loaner-MacBook-Pro |
Why Should I Collect Mac Location Services Status?
The collection of Location Services configuration information allows an administrator to confirm whether Location Services are enabled and what System Services are permitted to collect location data. This information can be helpful for a variety of purposes including:
- Determining whether Find My is misconfigured (Find My cannot work so long as Location Services are disabled)
- Disabling Location Services for Time Zone can result in incorrect local system time during travel.
End-User Privacy Consideration
Kolide practices Honest Security. We believe that data should be collected from end-user devices transparently and with privacy in mind.
This inventory does not capture location information, only the configuration state of services which rely on location information.
When you use Kolide to list Mac Location Services Status data from end-user devices, Kolide gives the people using those devices insight into exactly what data is collected, the privacy implications, and who on the IT team can see the data. This all happens in our end-user privacy center which can be accessed directly by employees.