Disable TouchID Setup during Monterey Upgrade

RickR
New Contributor

We have the skip TouchID setup for our new enrollments which works great for new machines, however as we upgrade to Monterey after reboot that setup wizard runs again.  I have tried many of the scripts and profiles out there but they all look old and non still work, especially with Monterey.  I am hoping someone else has worked through this already as part of their Monterey Upgrade?  Any solutions out there that have been tested and are working in Monterey?  

Thanks in advance.

6 REPLIES 6

snowfox
Contributor III

Hello,

I deploy the following configuration profile to all our machines to disable any setup assistant windows during the OS installation and during the user account setup.  I found that the Jamf Pro Prestage Enrolment Setup Assistant tick boxes were not 100% disabling all setup windows.  Apples developer documentation that covers the Apple Management Framework lists the below settings for managing the 'Setup Assistant' screens.  I have done Monterey upgrades and I haven't seen the screen you are referring to as all of our screens are disabled using the below in a Configuration Profile.

 

<?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>SkipAppearance</key>
	<true/>
	<key>SkipCloudSetup</key>
	<true/>
	<key>SkipiCloudStorageSetup</key>
	<true/>
	<key>SkipPrivacySetup</key>
	<true/>
	<key>SkipScreenTime</key>
	<true/>
	<key>SkipSiriSetup</key>
	<true/>
	<key>SkipSetupItems</key>
	<array>
		<string>Accessibility</string>
		<string>Appearance</string>
		<string>AppleID</string>
		<string>AppStore</string>
		<string>Biometric</string>
		<string>Diagnostics</string>
		<string>FileVault</string>
		<string>iCloudDiagnostics</string>
		<string>iCloudStorage</string>
		<string>Location</string>
		<string>Payment</string>
		<string>Privacy</string>
		<string>Restore</string>
		<string>ScreenTime</string>
		<string>Siri</string>
		<string>TOS</string>
		<string>UnlockWithWatch</string>
	</array>
	<key>SkipTouchIDSetup</key>
	<true/>
	<key>SkipTrueTone</key>
	<true/>
	<key>SkipUnlockWithWatch</key>
	<true/>
	<key>SkipAccessibility</key>
	<true/>
</dict>
</plist>

 

 

 

Thanks for this! I'm about to put this together for our environment.

Do you deploy this as a system configuration or a user configuration?

snowfox
Contributor III

System Configuration.  I use System Configuration Profiles as much as possible for everything I do but in this case it needs to be System because you're configuring settings for the 'Setup Assistant' which runs outside of the Desktop and typically no user is logged in when its running.

Specify com.apple.SetupAssistant.managed as the payload type.

More info from the official documentation can be found here:

https://developer.apple.com/documentation/devicemanagement/setupassistant

 

I ended up converting it to a JSON schema and using that to create the configuration profile. Worked a treat, thanks!

donmontalvo
Esteemed Contributor III

@kacey3 Any chance you can share your JSON?

--
https://donmontalvo.com

This is what I am using to suppress Setup Assistant items upon OS Updates.

{
  "title": "com.apple.SetupAssistant.managed",
  "description": "Apple SetupAssistant",
  "properties": {
    "SkipTouchIDSetup": {
      "title": "Skip TouchID Setup",
      "description": "",
      "property_order": 5,
      "anyOf": [
        {
          "type": "null",
          "title": "Not Configured"
        },
        {
          "title": "Configured",
          "type": "boolean"
        }
      ]
    },
    "SkipSetupItems": {
      "title": "SkipSetupItems",
      "description": "",
      "property_order": 10,
      "anyOf": [
        {
          "type": "null",
          "title": "Not Configured"
        },
        {
          "title": "Configured",
          "type": "array",
          "items": {
            "type": "string",
            "title": "Entries"
          }
        }
      ]
    },
    "SkipiCloudStorageSetup": {
      "title": "Skip iCloud Storage Setup",
      "description": "",
      "property_order": 15,
      "anyOf": [
        {
          "type": "null",
          "title": "Not Configured"
        },
        {
          "title": "Configured",
          "type": "boolean"
        }
      ]
    },
    "SkipAnalytics": {
      "title": "Skip Analytics",
      "description": "",
      "property_order": 20,
      "anyOf": [
        {
          "type": "null",
          "title": "Not Configured"
        },
        {
          "title": "Configured",
          "type": "boolean"
        }
      ]
    },
    "SkipPrivacySetup": {
      "title": "Skip Privacy Setup",
      "description": "",
      "property_order": 25,
      "anyOf": [
        {
          "type": "null",
          "title": "Not Configured"
        },
        {
          "title": "Configured",
          "type": "boolean"
        }
      ]
    },
    "SkipTrueTone": {
      "title": "Skip TrueTone",
      "description": "",
      "property_order": 30,
      "anyOf": [
        {
          "type": "null",
          "title": "Not Configured"
        },
        {
          "title": "Configured",
          "type": "boolean"
        }
      ]
    },
    "SkipSiriSetup": {
      "title": "Skip Siri Setup",
      "description": "This one may or may not work. Results have been inconsistent.",
      "property_order": 35,
      "anyOf": [
        {
          "type": "null",
          "title": "Not Configured"
        },
        {
          "title": "Configured",
          "type": "boolean"
        }
      ]
    },
    "SkipUnlockWithWatch": {
      "title": "SkipUnlockWithWatch",
      "description": "",
      "property_order": 40,
      "anyOf": [
        {
          "type": "null",
          "title": "Not Configured"
        },
        {
          "title": "Configured",
          "type": "boolean"
        }
      ]
    },
    "SkipAccessibility": {
      "title": "Skip Accessibility",
      "description": "",
      "property_order": 45,
      "anyOf": [
        {
          "type": "null",
          "title": "Not Configured"
        },
        {
          "title": "Configured",
          "type": "boolean"
        }
      ]
    },
    "SkipScreenTime": {
      "title": "Skip ScreenTime",
      "description": "",
      "property_order": 50,
      "anyOf": [
        {
          "type": "null",
          "title": "Not Configured"
        },
        {
          "title": "Configured",
          "type": "boolean"
        }
      ]
    },
    "SkipCloudSetup": {
      "title": "Skip Cloud Setup",
      "description": "",
      "property_order": 55,
      "anyOf": [
        {
          "type": "null",
          "title": "Not Configured"
        },
        {
          "title": "Configured",
          "type": "boolean"
        }
      ]
    },
    "SkipAppearance": {
      "title": "Skip Appearance",
      "description": "",
      "property_order": 60,
      "anyOf": [
        {
          "type": "null",
          "title": "Not Configured"
        },
        {
          "title": "Configured",
          "type": "boolean"
        }
      ]
    }
  }
}