Skip to main content
Solved

Disable Mavericks Sign in with your Apple ID at login prompt?

  • November 19, 2013
  • 47 replies
  • 136 views

Show first post

47 replies

Forum|alt.badge.img+10
  • New Contributor
  • June 23, 2014

One hopes that people you entrust to log in as root via the GUI could understand to just skip any request to provide an Apple ID.


themacdweeb
Forum|alt.badge.img+7
  • Contributor
  • June 23, 2014

one person other than myself has the password. and we take care of the root account iCloud wizard before delivery. which is why i'd prefer to automate.


Forum|alt.badge.img+1
  • New Contributor
  • June 12, 2015

I am upgrading computer lab to 10.10.3
We use NFSv3 home folders.

When user's home folder is empty I always get iCloud Setup window (this was not an issue with 10.9.5).
I deployed configuration profile with com.apple.SetupAssistant settings but this aproach does not seem to work.

I have two working solutions:
1) Prepopulate user's folders with ~/Library/Preferences/com.apple.SetupAssistant.plist file (maybe whole template when we are at it) <- which requires to get IT department work on it.
2) Modify /System/Library/CoreServices/Setup Assistant.app = rename /System/Library/CoreServices/Setup Assistant.app/Contents/SharedSupport/MiniLauncher <- which will probably not work well with 10.11 SIP

Am I missing some better solution?
Would login hook execute before iCloud setup is shown?


bpavlov
Forum|alt.badge.img+18
  • Esteemed Contributor
  • June 12, 2015

@michalm.mac Refer to this post: https://derflounder.wordpress.com/2014/10/16/disabling-the-icloud-and-diagnostics-pop-up-windows-in-yosemite/

Whether that solution will work in 10.11 is to be determined. Haven't tested 10.11 yet myself. Just been reading about it so far. But since you're on 10.10.3 this solution should work nicely.


Forum|alt.badge.img+1
  • New Contributor
  • June 12, 2015

@bpavlov Actually I am using modifed verion of @rtrouton script for local users with home folder in /var/.home

However with network account and empty nfs user home folder files are not copied from template automatically.

I filled feature request radar on that -> https://openradar.appspot.com/21355558


bpavlov
Forum|alt.badge.img+18
  • Esteemed Contributor
  • June 12, 2015

Wow really? That's really interesting. Where are the user folder defaults populated from then?


Forum|alt.badge.img+1
  • New Contributor
  • June 13, 2015

@bpavlov well they are not populated from anywhere. I don't have access to home folders.
Should I try to convince IT to copy OS X user template to every single home folder?


Forum|alt.badge.img+1
  • New Contributor
  • June 18, 2015

I was able to solve this by LoginHook script.

#!/bin/sh
USER=$1
su - $USER -c "/Library/Scripts/hooks/hook_defaults.sh"

It executes second script with privileges of user who is logging in. Second script copies prepared com.apple.SetupAssistant.plist into ~/Library/Preferences if it doen not exists.


Forum|alt.badge.img+4

Has anyone got this working on El Capitan 10.11+ ? My renaming of the minilauncher doesn't seem to be working any longer.


Forum|alt.badge.img+5
  • Contributor
  • December 21, 2015

I'd love to know if anyone has this working on 10.11 as well. So far I have been unsuccessful in all my tests.


Forum|alt.badge.img+1
  • New Contributor
  • April 21, 2016

Below is our script that both works on 10.11 and as the root user. Note that "$home_loc" and "$user_shortname" are variables that we set with our in house written "coreDaemon", so for those you are on your own. This script runs as root instead of the user due to issues with setting certain Apple preferences at login as the user (may not be an issue anymore but haven't tested)

#!/bin/sh
PATH=/bin:/sbin:/usr/bin:/usr/local/bin:/usr/sbin export PATH
home_loc=$(cat /private/tmp/home_loc)
user_shortname=$(cat /private/tmp/user_shortname)
if [[ "$home_loc" == "" ]]; then
    exit 1
elif [[ "$user_shortname" == "" ]]; then
    exit 1
fi
#####################################################################################################################################

OSVersion=$(sw_vers -productVersion)
OSBuild=$(sw_vers -buildVersion)
BuildVersionStampAsNumber=$(defaults read /Library/Preferences/com.apple.loginwindow OptimizerLastRunForBuild)
SystemVersionStampAsNumber=$(defaults read /Library/Preferences/com.apple.loginwindow OptimizerLastRunForSystem)

# Disable setup assistant
defaults write "$home_loc/Library/Preferences/com.apple.SetupAssistant" DidSeeCloudSetup -bool true
defaults write "$home_loc/Library/Preferences/com.apple.SetupAssistant" DidSeeSyncSetup -bool true
defaults write "$home_loc/Library/Preferences/com.apple.SetupAssistant" DidSeeSyncSetup2 -bool true
defaults write "$home_loc/Library/Preferences/com.apple.SetupAssistant" RunNonInteractive -bool true
defaults write "$home_loc/Library/Preferences/com.apple.SetupAssistant" GestureMovieSeen ""
defaults write "$home_loc/Library/Preferences/com.apple.SetupAssistant" LastPreLoginTasksPerformedBuild "$OSBuild"
defaults write "$home_loc/Library/Preferences/com.apple.SetupAssistant" LastPreLoginTasksPerformedVersion "$OSVersion"
defaults write "$home_loc/Library/Preferences/com.apple.SetupAssistant" LastSeenBuddyBuildVersion "$OSBuild"
defaults write "$home_loc/Library/Preferences/com.apple.SetupAssistant" LastSeenCloudProductVersion "$OSVersion"
defaults write "$home_loc/Library/Preferences/loginwindow" BuildVersionStampAsString "$OSBuild"
defaults write "$home_loc/Library/Preferences/loginwindow" SystemVersionStampAsString "$OSVersion"
defaults write "$home_loc/Library/Preferences/loginwindow" BuildVersionStampAsNumber -int "$BuildVersionStampAsNumber"
defaults write "$home_loc/Library/Preferences/loginwindow" SystemVersionStampAsNumber -int "$SystemVersionStampAsNumber"

chown "$user_shortname" "$home_loc/Library/Preferences/com.apple.SetupAssistant.plist"
chown "$user_shortname" "$home_loc/Library/Preferences/loginwindow.plist"

Forum|alt.badge.img+3
  • New Contributor
  • June 21, 2016

This is how I got around the problem on machines that are frozen (using Deep Freeze) - so every user, every time is a new user.

I created/modified a plist with the following values (on another machine):

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict> <key>DidSeeCloudSetup</key> <true/> <key>DidSeeSyncSetup</key> <true/> <key>DidSeeSyncSetup2</key> <true/> <key>DidSeeiCloudSecuritySetup</key> <true/> <key>LastCacheCleanupStillRunning</key> <false/> <key>LastPreLoginTasksPerformedBuild</key> <string>15F34</string> <key>LastPreLoginTasksPerformedVersion</key> <string>10.11.5</string> <key>LastSeenBuddyBuildVersion</key> <string>15F34</string> <key>LastSeenCloudProductVersion</key> <string>10.11.5</string> <key>RunNonInteractive</key> <false/> <key>ShowKeychainSyncBuddyAtLogin</key> <false/> <key>SkipFirstLoginOptimization</key> <false/>
</dict>
</plist>

Thawed the machine.

Then logged into the machine as the administrator (already on the machine), changed the permissions to the /System/Library/User Templates folder so that the administrator can make changes to the folder and all sub folders. Drop the plist file (named com.apple.SetupAssistant.plist in the sub folder /English.iproj/Library/Preferences folder.

Freeze the machine - no more popup when a user logs in.


Forum|alt.badge.img+3
  • New Contributor
  • June 21, 2016

This is how I got around the problem on machines that are frozen (using Deep Freeze) - so every user, every time is a new user.

I created/modified a plist with the following values (on another machine):

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict> <key>DidSeeCloudSetup</key> <true/> <key>DidSeeSyncSetup</key> <true/> <key>DidSeeSyncSetup2</key> <true/> <key>DidSeeiCloudSecuritySetup</key> <true/> <key>LastCacheCleanupStillRunning</key> <false/> <key>LastPreLoginTasksPerformedBuild</key> <string>15F34</string> <key>LastPreLoginTasksPerformedVersion</key> <string>10.11.5</string> <key>LastSeenBuddyBuildVersion</key> <string>15F34</string> <key>LastSeenCloudProductVersion</key> <string>10.11.5</string> <key>RunNonInteractive</key> <false/> <key>ShowKeychainSyncBuddyAtLogin</key> <false/> <key>SkipFirstLoginOptimization</key> <false/>
</dict>
</plist>

Thawed the machine.

Then logged into the machine as the administrator (already on the machine), changed the permissions to the /System/Library/User Templates folder so that the administrator can make changes to the folder and all sub folders. Drop the plist file (named com.apple.SetupAssistant.plist in the sub folder /English.iproj/Library/Preferences folder.

Freeze the machine - no more popup when a user logs in.


Forum|alt.badge.img+1
  • New Contributor
  • November 28, 2016

Below is the updated version of our script for 10.12:

#!/bin/sh
PATH=/bin:/sbin:/usr/bin:/usr/local/bin:/usr/sbin export PATH
scriptfn=$(echo "$0" | sed 's/.*///g') # script filename
scriptfnPath=$(dirname "$0") # script file path
home_loc=$(cat /private/tmp/home_loc)
user_shortname=$(cat /private/tmp/user_shortname)
if [[ "$home_loc" == "" ]]; then
    exit 1
elif [[ "$user_shortname" == "" ]]; then
    exit 1
fi
#####################################################################################################################################

OSVersion=$(sw_vers -productVersion)
OSBuild=$(sw_vers -buildVersion)
BuildVersionStampAsNumber=$(defaults read /Library/Preferences/com.apple.loginwindow OptimizerLastRunForBuild)
SystemVersionStampAsNumber=$(defaults read /Library/Preferences/com.apple.loginwindow OptimizerLastRunForSystem)

# Disable setup assistant
defaults write "$home_loc/Library/Preferences/com.apple.SetupAssistant" DidSeeAvatarSetup -bool true
defaults write "$home_loc/Library/Preferences/com.apple.SetupAssistant" DidSeeCloudSetup -bool true
defaults write "$home_loc/Library/Preferences/com.apple.SetupAssistant" DidSeeiCloudLoginForStorageServices -bool true
defaults write "$home_loc/Library/Preferences/com.apple.SetupAssistant" DidSeeSiriSetup -bool true
defaults write "$home_loc/Library/Preferences/com.apple.SetupAssistant" DidSeeSyncSetup -bool true
defaults write "$home_loc/Library/Preferences/com.apple.SetupAssistant" DidSeeSyncSetup2 -bool true
defaults write "$home_loc/Library/Preferences/com.apple.SetupAssistant" RunNonInteractive -bool true
defaults write "$home_loc/Library/Preferences/com.apple.SetupAssistant" GestureMovieSeen ""
defaults write "$home_loc/Library/Preferences/com.apple.SetupAssistant" LastPreLoginTasksPerformedBuild "$OSBuild"
defaults write "$home_loc/Library/Preferences/com.apple.SetupAssistant" LastPreLoginTasksPerformedVersion "$OSVersion"
defaults write "$home_loc/Library/Preferences/com.apple.SetupAssistant" LastSeenBuddyBuildVersion "$OSBuild"
defaults write "$home_loc/Library/Preferences/com.apple.SetupAssistant" LastSeenCloudProductVersion "$OSVersion"
defaults write "$home_loc/Library/Preferences/loginwindow" BuildVersionStampAsString "$OSBuild"
defaults write "$home_loc/Library/Preferences/loginwindow" SystemVersionStampAsString "$OSVersion"
defaults write "$home_loc/Library/Preferences/loginwindow" BuildVersionStampAsNumber -int "$BuildVersionStampAsNumber"
defaults write "$home_loc/Library/Preferences/loginwindow" SystemVersionStampAsNumber -int "$SystemVersionStampAsNumber"

chown "$user_shortname" "$home_loc/Library/Preferences/com.apple.SetupAssistant.plist"
chown "$user_shortname" "$home_loc/Library/Preferences/loginwindow.plist"

Forum|alt.badge.img
  • New Contributor
  • December 6, 2016

Thanks for this updated script. I am planing on inplimenting this in my latest 10.12 upgrade.

Quick question, I have scripts that run before the OS upgrade, creates a LaunchAgent that's set to use the preloginwindow so I can run scripts post upgrade but before the user logs in.

The problem is the OS upgrade completes then sort of auto logs in but not really. After the OS Upgrade the user is presented with a login window with their username pre-filled. (Looks lie FileVault login for example.) the issue is that the LaunchAgent doesn't run.

If I touch .applesetupdone before the OS upgrade completes will this stop that prepop and allow my LaunchAgent to run?

Or any thoughts on how to get it to run? If the user logs in then immediately logs out, the LaunchAgent fires as intended. It's just a bad user experience to have them login then right back out.


Forum|alt.badge.img+6
  • New Contributor
  • January 25, 2017

The ability to disable AppleID/iCloud sign-in has been added in configuration profile settings of JSS 9.93 and later.


Forum|alt.badge.img+1
  • New Contributor
  • January 31, 2017

@Bobojo This behavior was removed in 10.12 (thankfully!) so you don't have to be concerned about it.


Forum|alt.badge.img+5
  • Contributor
  • July 24, 2017

@ jgalante

The ability to disable AppleID/iCloud sign-in has been added in configuration profile settings of JSS 9.93 and later. Does this still work for 10.12? If so, do you know the means/steps in config profile to accomplish this. I want the set up assistant to NOT show up on the admin or user side at first log in.

Thank you in advance for your help or response.


Forum|alt.badge.img+8
  • Valued Contributor
  • July 22, 2019

Has anyone got this working on Sierra, High Sierra and Mojave ?

I think it works on Sierra, but newer versions seem to ignore it


mbayhylle
Forum|alt.badge.img+5
  • Contributor
  • August 2, 2019

I'd like to know if anyone else has gotten this working, too. It's killing me. It was working up until Mojave for me. I've tried everything I can think of at this point. Config profiles aren't working and the original suppression script isn't working anymore either.


Forum|alt.badge.img+4
  • Contributor
  • August 4, 2019

following ..


mbayhylle
Forum|alt.badge.img+5
  • Contributor
  • August 5, 2019

Forgot I had this package in my repository. Added it to our base install policy and all is now right with the world.

https://github.com/rtrouton/rtrouton_scripts/blob/master/rtrouton_scripts/disable_apple_icloud_data_privacy_diagnostic_touch_id_and_siri_pop_ups/payload_free_package/disable_apple_icloud_data_privacy_diagnostic_touch_id_and_siri_pop_ups.zip