Software Update settings declarative configuration for Apple devices

Use the Software Update settings configuration to enforce software updates at a certain time. For more information, see Deploy software updates using declarative management in Apple Developer documentation.

The Software Update settings configuration supports the following:

  • Minimum supported operating system versions and channels: iOS 18, iPadOS 18, Shared iPad device, macOS 15 device.

  • Requires supervision: Yes, except the following: Enforcement keys, beta testing OfferPrograms keys.

  • Supported enrollment methods: Device Enrollment, Automated Device Enrollment.

AutomaticActions dictionary keys

The AutomaticActions dictionary offers the keys shown below (default is Allowed and not required).

Key

Type

Merge behavior

Description

Download

Enum

The last value from the list: Allowed, AlwaysOn, AlwaysOff.

Specifies whether automatic downloads and preparation of available updates only (not upgrades and Background Security Improvements) can be controlled by the user:

  • Allowed: The user can turn on or turn off automatic downloads.

  • AlwaysOn: Automatic downloads are always turned on.

  • AlwaysOff: Automatic downloads are always turned off.

InstallOSUpdates

Enum

The last value from the list: Allowed, AlwaysOn, AlwaysOff.

Specifies whether automatic installation of available operating system updates only (not upgrades and Background Security Improvements) can be controlled by the user:

  • Allowed: The user can turn on or turn off automatic installations.

  • AlwaysOn: Automatic installations are always turned on.

  • AlwaysOff: Automatic installations are always turned off.

InstallSecurityUpdates

(macOS only)

Enum

The last value from the list: Allowed, AlwaysOn, AlwaysOff.

Specifies whether automatic installation of available security updates can be controlled by the user:

  • Allowed: The user can turn on or turn off automatic installations.

  • AlwaysOn: Automatic installations are always turned on.

  • AlwaysOff: Automatic installations are always turned off.

In case multiple declarations include a value for the same key, the last value in the following list applied by any of those declarations takes precedence: Allowed, AlwaysOn, AlwaysOff.

RapidSecurityResponse dictionary keys for iOS, iPadOS, and macOS

The RapidSecurityResponse dictionary contains the keys shown below (default is TRUE and not required).

Key

Type

Merge behavior

Description

Enable

Boolean

Logical AND operation of the values

If FALSE, Background Security Improvements aren’t offered for user installation.

This defines whether Background Security Improvements are automatically installed on user’s devices.

EnableRollback

Boolean

Logical AND operation of the values

If FALSE, Background Security Improvement rollbacks aren’t offered to the user.

This controls whether users have the option to remove a Background Security Improvement.

Independent of the Enable key, Background Security Improvements can still be installed with the com.apple.configuration.softwareupdate.enforcement.specific declaration.

Deferrals dictionary keys for iOS, iPadOS, and tvOS

The Deferrals dictionaries offer different keys to configure the behavior depending on the platform (no defaults, not required).

Key

Type

Merge behavior

Description

CombinedPeriodInDays

Integer 1–90

Maximum number of days

Specifies the number of days to defer a software update. When set, software updates and upgrades appear only after the specified delay, following the release of the software update or upgrade.

RecommendedCadence

Enum

The last value from the list: All, Oldest, Newest

Specifies how the device shows software upgrades to the user. When a software update and upgrade is available, the device behaves as follows:

  • All: Shows all software updates and upgrades.

  • Oldest: Shows only updates for the oldest (lower numbered) software version.

  • Newest: Shows only a software upgrade to the newest (highest numbered) software version.

Both CombinedPeriodInDays and RecommendedCadence can be used in combination. For example, if RecommendedCadence is set to Oldest and CombinedPeriodInDays is set to 30, a user sees only software updates for the oldest release after 30 days of their publishing date.

Deferrals dictionary keys for macOS

Key

Type

Merge behavior

Description

MajorPeriodInDays

Integer 1–90

Maximum number of days

Specifies the number of days to defer a software upgrade on the device. When set, software upgrades appear only after the specified delay, following the release of the software upgrade.

MinorPeriodInDays

Integer 1–90

Maximum number of days

Specifies the number of days to defer a software update only (not a software upgrade or Background Security Improvement) on the device. When set, software updates appear only after the specified delay, following the release of the software update.

SystemPeriodInDays

Integer 1–90

Maximum number of days

Specifies the number of days to defer non-operating system updates. When set, updates appear only after the specified delay, following the release of the update.

An additional key is available in macOS to determine whether both standard users and local administrators can perform an update or upgrade (the default behavior), or determine whether administrative permissions are required (default is TRUE and not required).

Key

Type

Merge behavior

Description

AllowStandardUserOSUpdates

Boolean

Logical AND operation of the values

If true, a standard user can perform updates and upgrades.

If FALSE, only administrators can perform updates and upgrades.

Notifications key

The Notifications key changes the default notification behavior to show only a notification one hour before the enforcement time and the restart countdown (default is True and not required).

Key

Type

Merge behavior

Description

Notifications

Boolean

Logical AND operation of the values

If true, the device shows all software update enforcement notifications.

If FALSE, the device only shows notifications triggered one hour before the enforcement deadline, and the restart countdown notification.

Manage beta software updates

On unsupervised iPhone or iPad devices, only the OfferPrograms array can be used to allow users to manually enroll into beta programs the organization has subscribed to. The beta dictionary offers the following keys (not required):

Key

Type

Default

Merge behavior

Description

ProgramEnrollment

Enum

Allowed

The last value from the list: Allowed, AlwaysOn, AlwaysOff

Specifies whether beta program enrollment can be controlled by the user in the software update settings user interface:

  • Allowed: The user can enroll in any applicable beta programs associated with the Apple Account they used to sign in. If the OfferPrograms key is present, then the programs listed in that key are also presented to the user.

  • AlwaysOn: The beta programs specified by the organization are used, and the user isn’t able to enroll in a beta program with the Apple Account they used to sign in. The device is automatically enrolled into the beta program specified by the RequireProgram key, if it’s present. Otherwise, the programs listed in the OfferPrograms key are presented to the user to choose in which to enroll.

  • AlwaysOff: The device isn’t allowed to enroll in any beta programs. The device is removed from any beta programs, if already enrolled.

OfferPrograms

Array

Unique union of all values

An array of beta programs allowed on the device. This key needs to only be present if the ProgramEnrollment key is set to Allowed or AlwaysOn. This key can’t be present if the RequireProgram key is present. This key can be present on unsupervised devices where the ProgramEnrollment key isn’t supported but is implicitly set to Allowed.

RequireProgram

Dictionary

First configuration applied

The device automatically enrolls in this beta program. This key needs to be present only if the ProgramEnrollment key is set to AlwaysOn. The OfferPrograms key can’t be present if this key is present.

In addition to sending the name of the program, the OfferPrograms and RequireProgram options require that the token of the beta program be sent to the device. This token is used with Apple to verify eligibility and receive an updated software update configuration.

To allow users to enroll using their personal Apple Account or Managed Apple Account, a device management service can set the ProgramEnrollment key to Allowed. This allows users to enroll in any program available to their account and in any beta program that the OfferPrograms array specifies. Each Program dictionary in the OfferPrograms array needs to consist of the following keys (all strings, all required):

Key

Description

Description

A human-readable description of the beta program.

Token

The seeding service token that the device management service is part of for the organization. This token is for enrolling the device in the corresponding beta program.

If an organization wants to allow users to participate without the need to sign in, they can set the ProgramEnrollment key to AlwaysOn. In this case users are offered all programs listed in the OfferPrograms array. They can also automatically enroll devices into a beta program using a combination of ProgramEnrollment set to AlwaysOn and defining the beta program that the device needs to be enrolled into with the RequireProgram dictionary. The RequireProgram dictionary requires the following keys (all strings):

Key

Description

Description

A human-readable description of the beta program.

Token

The seeding service token that the device management service is part of for the organization. This token is for enrolling the device in the corresponding beta program.

In case an organization wants to prevent users from enrolling, they can set the ProgramEnrollment key to AlwaysOff. This also unenrolls the device from any beta program that it was already manually or automatically enrolled in.

Note: Each device management service developer implements these settings differently. To learn how various Software Update settings are applied to your devices and users, consult your developer’s device management service documentation.

Published Date: September 25, 2024
Morty Proxy This is a proxified and sanitized view of the page, visit original site.
Helpful?
Character limit: 250
Maximum character limit is 250.
Thanks for your feedback.
Morty Proxy This is a proxified and sanitized view of the page, visit original site.