Enable Location Services on a per App Basis Without Admin Privileges

New Contributor II

Any MacOS device that's released into our production environment has location services enabled in the operating system. However, there has been a request to enable location services in Apps such as Chrome and Siri, which require admin privileges to unlock the Privacy settings. Is there any way this can be done via configuration profile or script? If this has already been answered, I apologize. I can't find anything on doing this on a per app basis though.


Contributor III

Location Services cannot be managed by an MDM. that is strictly a user controlled function that Apple currently has no plans on changing.

Legendary Contributor III

Just posting here to follow this thread, because I'm also in need of some way to enable Location Services for specific apps. None of our end users have admin rights, nor will they ever, except perhaps on a very temporary basis. But until we're in that place to allow that, I'm trying to understand how a standard user can enable this for applications. There doesn't seem to be any way.

New Contributor II

Check the apps PPPC, some apps don't use macOS location services...

New Contributor III

Did we ever get an answer for this? Something I am looking into as well. 

Contributor III

This is a script I was testing out a couple of years ago that worked in Catalina and Big Sur, I have no idea if it will work on Monterey or Ventura. It does require a restart after ran and will appear like it did nothing.


uuid=$("/usr/sbin/system_profiler" SPHardwareDataType | grep "Hardware UUID" | awk '{ print $3 }')

# read booleans
echo "Reading ls_enabled_uuid..."
ls_enabled_uuid=$(sudo -u "_locationd" defaults -currentHost read "${prefDomain}" LocationServicesEnabled)
echo $ls_enabled_uuid

echo "Reading ls_enabled_byhost..."
ls_enabled_byhost=$(sudo defaults read "${byHostPath}" LocationServicesEnabled)
echo $ls_enabled_byhost

# process booleans
if [[ ($ls_enabled_uuid -eq 1) && ($ls_enabled_byhost -eq 1) ]]; then
    echo "Location Services are already enabled."
    # set booleans
    echo "Location Services need to be enabled."
    sudo -u "_locationd" defaults -currentHost write "${prefDomainWithUUID}" LocationServicesEnabled -int 1
    sudo defaults write "${byHostPath}" LocationServicesEnabled -int 1

exit 0


Contributor III

I'm running into this now; some benefit my organization provides has a 3rd party page that refers our employees to nearby services... which requires location services be enabled for the browser they are using. Infrequently I get requests for admin rights to enable Chrome's location services... Very frustrating that this is the way it is. Give Apple feedback!

New Contributor

Our schools like to have these services enabled.  I have no issue with this being a user driven choice, but we need Standard Users to be able to have that choice.  #BUMP


Is there a config profile that will allow to logged in user to allow the location settings, like how PPP settings can open up certain permissions?

New Contributor III

Bumping this thread as since Sonoma 14.1 there is an annoying popup from the Home.app appearing at user login, that says "Home would like to use your current location".

More info are nicely gathered here: https://gingerscripting.com/disabling-the-home-prompts-in-macos-14-1/ 

Though the tests listed in it don't work for me.


also seeing this same issue @trull_sengar. Tthe solution in https://gingerscripting.com/disabling-the-home-prompts-in-macos-14-1/ also not working (via config profile method). 
Might reach out to the Mac Admin slack channel, as per the article above. 

New Contributor III

Yep. I tried that on two channels, where we also discussed these steps but without luck I'm afraid.

I'll keep checking though in a while to see if some updates will fix this or not.

I had to Ok location for google chrome manually on our devices.  User can still turn it off.  I am guessing the home app will be on my list for next summers reimage.