IntuneAppProtectionPolicyiOS¶
Parameters¶
Parameter | Attribute | DataType | Description | Allowed Values |
---|---|---|---|---|
DisplayName | Key | String | Display name of the iOS App Protection Policy. | |
Identity | Write | String | Identity of the iOS App Protection Policy. | |
Description | Write | String | Description of the iOS App Protection Policy. | |
AllowedDataIngestionLocations | Write | StringArray[] | Data storage locations where a user may store managed data. Inherited from managedAppProtection. | |
AllowWidgetContentSync | Write | Boolean | Indicates if content sync for widgets is allowed for iOS on App Protection Policies. | |
AppActionIfAccountIsClockedOut | Write | String | Defines a managed app behavior, either block or warn, if the user is clocked out (non-working time). | block , wipe , warn , blockWhenSettingIsSupported |
AppActionIfUnableToAuthenticateUser | Write | String | If set, it will specify what action to take in the case where the user is unable to checkin because their authentication token is invalid. This happens when the user is deleted or disabled in AAD. . | block , wipe , warn , blockWhenSettingIsSupported |
AppGroupType | Write | String | Public Apps selection: group or individual Inherited from targetedManagedAppProtection. | selectedPublicApps , allCoreMicrosoftApps , allMicrosoftApps , allApps |
BlockDataIngestionIntoOrganizationDocuments | Write | Boolean | Indicates whether a user can bring data into org documents. | |
CustomDialerAppProtocol | Write | String | Protocol of a custom dialer app to click-to-open a phone number on iOS, for example, skype:. | |
DeployedAppCount | Write | UInt32 | Count of apps to which the current policy is deployed. | |
DialerRestrictionLevel | Write | String | The classes of dialer apps that are allowed to click-to-open a phone number. | allApps , managedApps , customApp , blocked |
ExemptedUniversalLinks | Write | StringArray[] | A list of custom urls that are allowed to invocate an unmanaged app. | |
GracePeriodToBlockAppsDuringOffClockHours | Write | String | A grace period before blocking app access during off clock hours. | |
IsAssigned | Write | Boolean | Indicates if the policy is deployed to any inclusion groups or not. | |
managedUniversalLinks | Write | StringArray[] | A list of custom urls that are allowed to invocate a managed app. | |
MaximumAllowedDeviceThreatLevel | Write | String | Maximum allowed device threat level, as reported by the MTD app Inherited from managedAppProtection. | notConfigured , secured , low , medium , high |
MaximumRequiredOsVersion | Write | String | Versions bigger than the specified version will block the managed app from accessing company data. Inherited from managedAppProtection. | |
MaximumWarningOsVersion | Write | String | Versions bigger than the specified version will block the managed app from accessing company data. Inherited from managedAppProtection. | |
MaximumWipeOsVersion | Write | String | Versions bigger than the specified version will block the managed app from accessing company data. Inherited from managedAppProtection. | |
MessagingRedirectAppUrlScheme | Write | String | When a specific app redirection is enforced by protectedMessagingRedirectAppType in an App Protection Policy, this value defines the app url redirect schemes which are allowed to be used. | |
MinimumWarningSdkVersion | Write | String | Versions less than the specified version will result in warning message on the managed app from accessing company data. | |
MobileThreatDefensePartnerPriority | Write | String | Indicates how to prioritize which Mobile Threat Defense (MTD) partner is enabled for a given platform, when more than one is enabled. An app can only be actively using a single Mobile Threat Defense partner. When NULL, Microsoft Defender will be given preference. Otherwise setting the value to defenderOverThirdPartyPartner or thirdPartyPartnerOverDefender will make explicit which partner to prioritize. | defenderOverThirdPartyPartner , thirdPartyPartnerOverDefender , unknownFutureValue |
MobileThreatDefenseRemediationAction | Write | String | Determines what action to take if the mobile threat defense threat threshold isn't met. Warn isn't a supported value for this property Inherited from managedAppProtection. | block , wipe , warn , blockWhenSettingIsSupported |
PreviousPinBlockCount | Write | UInt32 | Requires a pin to be unique from the number specified in this property. Inherited from managedAppProtection. | |
ProtectedMessagingRedirectAppType | Write | String | Defines how app messaging redirection is protected by an App Protection Policy. Default is anyApp. Inherited from managedAppProtection. | anyApp , anyManagedApp , specificApps , blocked |
ThirdPartyKeyboardsBlocked | Write | Boolean | Defines if third party keyboards are allowed while accessing a managed app. | |
PeriodOfflineBeforeAccessCheck | Write | String | The period after which access is checked when the device is not connected to the internet. | |
PeriodOnlineBeforeAccessCheck | Write | String | The period after which access is checked when the device is connected to the internet. | |
AllowedInboundDataTransferSources | Write | String | Sources from which data is allowed to be transferred. Possible values are: allApps, managedApps, none. | allApps , managedApps , none |
AllowedOutboundDataTransferDestinations | Write | String | Destinations to which data is allowed to be transferred. Possible values are: allApps, managedApps, none. | allApps , managedApps , none |
OrganizationalCredentialsRequired | Write | Boolean | Indicates whether organizational credentials are required for app use. | |
AllowedOutboundClipboardSharingLevel | Write | String | The level to which the clipboard may be shared between apps on the managed device. Possible values are: allApps, managedAppsWithPasteIn, managedApps, blocked. | allApps , managedAppsWithPasteIn , managedApps , blocked |
DataBackupBlocked | Write | Boolean | Indicates whether the backup of a managed app's data is blocked. | |
DeviceComplianceRequired | Write | Boolean | Indicates whether device compliance is required. | |
ManagedBrowserToOpenLinksRequired | Write | Boolean | Indicates whether internet links should be opened in the managed browser app, or any custom browser specified by CustomBrowserProtocol (for iOS) or CustomBrowserPackageId/CustomBrowserDisplayName (for Android). | |
SaveAsBlocked | Write | Boolean | Indicates whether users may use the Save As menu item to save a copy of protected files. | |
PeriodOfflineBeforeWipeIsEnforced | Write | String | The amount of time an app is allowed to remain disconnected from the internet before all managed data it is wiped. | |
PinRequired | Write | Boolean | Indicates whether an app-level pin is required. | |
DisableAppPinIfDevicePinIsSet | Write | Boolean | Indicates whether use of the app pin is required if the device pin is set. | |
MaximumPinRetries | Write | UInt32 | Maximum number of incorrect pin retry attempts before the managed app is either blocked or wiped. | |
SimplePinBlocked | Write | Boolean | Block simple PIN and require complex PIN to be set. | |
MinimumPinLength | Write | UInt32 | Minimum pin length required for an app-level pin if PinRequired is set to True. | |
PinCharacterSet | Write | String | Character set which may be used for an app-level pin if PinRequired is set to True. Possible values are: numeric, alphanumericAndSymbol. | numeric , alphanumericAndSymbol |
AllowedDataStorageLocations | Write | StringArray[] | Data storage locations where a user may store managed data. | |
ContactSyncBlocked | Write | Boolean | Indicates whether contacts can be synced to the user's device. | |
PeriodBeforePinReset | Write | String | TimePeriod before the all-level pin must be reset if PinRequired is set to True. | |
PrintBlocked | Write | Boolean | Indicates whether printing is allowed from managed apps. | |
FingerprintBlocked | Write | Boolean | Indicates whether use of the fingerprint reader is allowed in place of a pin if PinRequired is set to True. | |
FaceIdBlocked | Write | Boolean | Indicates whether use of the FaceID is allowed in place of a pin if PinRequired is set to True. | |
ManagedBrowser | Write | String | Indicates in which managed browser(s) that internet links should be opened. When this property is configured, ManagedBrowserToOpenLinksRequired should be true. Possible values are: notConfigured, microsoftEdge. | notConfigured , microsoftEdge |
MinimumRequiredAppVersion | Write | String | Versions less than the specified version will block the managed app from accessing company data. | |
MinimumWarningAppVersion | Write | String | Versions less than the specified version will result in warning message on the managed app from accessing company data. | |
MinimumRequiredOSVersion | Write | String | Versions less than the specified version will block the managed app from accessing company data. | |
MinimumWarningOSVersion | Write | String | Versions less than the specified version will result in warning message on the managed app from accessing company data. | |
MinimumRequiredSdkVersion | Write | String | Versions less than the specified version will block the managed app from accessing company data. | |
MinimumWipeOSVersion | Write | String | Versions less than or equal to the specified version will wipe the managed app and the associated company data. | |
MinimumWipeAppVersion | Write | String | Versions less than or equal to the specified version will wipe the managed app and the associated company data. | |
AppActionIfDeviceComplianceRequired | Write | String | Defines a managed app behavior, either block or wipe, when the device is either rooted or jailbroken, if DeviceComplianceRequired is set to true. | block , wipe , warn |
AppActionIfMaximumPinRetriesExceeded | Write | String | Defines a managed app behavior, either block or wipe, based on maximum number of incorrect pin retry attempts. | block , wipe , warn |
PinRequiredInsteadOfBiometricTimeout | Write | String | Timeout in minutes for an app pin instead of non biometrics passcode . | |
AllowedOutboundClipboardSharingExceptionLength | Write | UInt32 | Specify the number of characters that may be cut or copied from Org data and accounts to any application. This setting overrides the AllowedOutboundClipboardSharingLevel restriction. Default value of '0' means no exception is allowed. | |
NotificationRestriction | Write | String | Specify app notification restriction. | allow , blockOrganizationalData , block |
TargetedAppManagementLevels | Write | StringArray[] | The intended app management levels for this policy. | unspecified , unmanaged , mdm , androidEnterprise |
AppDataEncryptionType | Write | String | Require app data to be encrypted. | useDeviceSettings , afterDeviceRestart , whenDeviceLockedExceptOpenFiles , whenDeviceLocked |
ExemptedAppProtocols | Write | StringArray[] | Apps in this list will be exempt from the policy and will be able to receive data from managed apps. | |
MinimumWipeSdkVersion | Write | String | Versions less than the specified version will block the managed app from accessing company data. | |
AllowedIosDeviceModels | Write | StringArray[] | Semicolon seperated list of device models allowed, as a string, for the managed app to work. | |
AppActionIfIosDeviceModelNotAllowed | Write | String | Defines a managed app behavior, either block or wipe, if the specified device model is not allowed. | block , wipe , warn |
FilterOpenInToOnlyManagedApps | Write | Boolean | Defines if open-in operation is supported from the managed app to the filesharing locations selected. This setting only applies when AllowedOutboundDataTransferDestinations is set to ManagedApps and DisableProtectionOfManagedOutboundOpenInData is set to False. | |
DisableProtectionOfManagedOutboundOpenInData | Write | Boolean | Disable protection of data transferred to other apps through IOS OpenIn option. This setting is only allowed to be True when AllowedOutboundDataTransferDestinations is set to ManagedApps. | |
ProtectInboundDataFromUnknownSources | Write | Boolean | Protect incoming data from unknown source. This setting is only allowed to be True when AllowedInboundDataTransferSources is set to AllApps. | |
CustomBrowserProtocol | Write | String | A custom browser protocol to open weblink on iOS. | |
Apps | Write | StringArray[] | List of IDs representing the iOS apps controlled by this protection policy. | |
Assignments | Write | StringArray[] | List of IDs of the groups assigned to this iOS Protection Policy. | |
ExcludedGroups | Write | StringArray[] | List of IDs of the groups that are excluded from this iOS Protection Policy. | |
Ensure | Write | String | Present ensures the policy exists, absent ensures it is removed. | Present , Absent |
Credential | Write | PSCredential | Credentials of the Intune Admin. | |
ApplicationId | Write | String | ID of the Azure Active Directory application to authenticate with. | |
TenantId | Write | String | ID of the Azure Active Directory tenant used for authentication. | |
ApplicationSecret | Write | PSCredential | Secret of the Azure Active Directory tenant used for authentication. | |
CertificateThumbprint | Write | String | Thumbprint of the Azure Active Directory application's authentication certificate to use for authentication. | |
ManagedIdentity | Write | Boolean | Managed ID being used for authentication. | |
AccessTokens | Write | StringArray[] | Access token used for authentication. |
Description¶
This resource configures an Intune app protection policy for an iOS Device.
Permissions¶
Microsoft Graph¶
To authenticate with the Microsoft Graph API, this resource required the following permissions:
Delegated permissions¶
-
Read
- Group.Read.All, DeviceManagementApps.Read.All
-
Update
- Group.Read.All, DeviceManagementApps.ReadWrite.All
Application permissions¶
-
Read
- Group.Read.All, DeviceManagementApps.Read.All
-
Update
- Group.Read.All, DeviceManagementApps.ReadWrite.All
Examples¶
Example 1¶
This example creates a new App ProtectionPolicy for iOS.
Configuration Example
{
param(
[Parameter()]
[System.String]
$ApplicationId,
[Parameter()]
[System.String]
$TenantId,
[Parameter()]
[System.String]
$CertificateThumbprint
)
Import-DscResource -ModuleName Microsoft365DSC
node localhost
{
IntuneAppProtectionPolicyiOS 'MyCustomiOSPolicy'
{
DisplayName = 'My DSC iOS App Protection Policy'
AllowedDataStorageLocations = @('sharePoint')
AllowedInboundDataTransferSources = 'managedApps'
AllowedOutboundClipboardSharingLevel = 'managedAppsWithPasteIn'
AllowedOutboundDataTransferDestinations = 'managedApps'
AppDataEncryptionType = 'whenDeviceLocked'
Apps = @('com.cisco.jabberimintune.ios', 'com.pervasent.boardpapers.ios', 'com.sharefile.mobile.intune.ios')
ContactSyncBlocked = $False
DataBackupBlocked = $False
Description = ''
DeviceComplianceRequired = $True
FingerprintBlocked = $False
ManagedBrowserToOpenLinksRequired = $True
MaximumPinRetries = 5
MinimumPinLength = 4
OrganizationalCredentialsRequired = $False
PeriodOfflineBeforeAccessCheck = 'PT12H'
PeriodOfflineBeforeWipeIsEnforced = 'P90D'
PeriodOnlineBeforeAccessCheck = 'PT30M'
PinCharacterSet = 'alphanumericAndSymbol'
PinRequired = $True
PrintBlocked = $False
SaveAsBlocked = $True
SimplePinBlocked = $False
Ensure = 'Present'
ApplicationId = $ApplicationId;
TenantId = $TenantId;
CertificateThumbprint = $CertificateThumbprint;
}
}
}
Example 2¶
This example creates a new App ProtectionPolicy for iOS.
Configuration Example
{
param(
[Parameter()]
[System.String]
$ApplicationId,
[Parameter()]
[System.String]
$TenantId,
[Parameter()]
[System.String]
$CertificateThumbprint
)
Import-DscResource -ModuleName Microsoft365DSC
node localhost
{
IntuneAppProtectionPolicyiOS 'MyCustomiOSPolicy'
{
DisplayName = 'My DSC iOS App Protection Policy'
AllowedDataStorageLocations = @('sharePoint')
AllowedInboundDataTransferSources = 'managedApps'
AllowedOutboundClipboardSharingLevel = 'managedAppsWithPasteIn'
AllowedOutboundDataTransferDestinations = 'managedApps'
AppDataEncryptionType = 'whenDeviceLocked'
Apps = @('com.cisco.jabberimintune.ios', 'com.pervasent.boardpapers.ios', 'com.sharefile.mobile.intune.ios')
ContactSyncBlocked = $False
DataBackupBlocked = $False
Description = ''
DeviceComplianceRequired = $True
FingerprintBlocked = $False
ManagedBrowserToOpenLinksRequired = $True
MaximumPinRetries = 7 # Updated Property
MinimumPinLength = 4
OrganizationalCredentialsRequired = $False
PeriodOfflineBeforeAccessCheck = 'PT12H'
PeriodOfflineBeforeWipeIsEnforced = 'P90D'
PeriodOnlineBeforeAccessCheck = 'PT30M'
PinCharacterSet = 'alphanumericAndSymbol'
PinRequired = $True
PrintBlocked = $False
SaveAsBlocked = $True
SimplePinBlocked = $False
Ensure = 'Present'
ApplicationId = $ApplicationId;
TenantId = $TenantId;
CertificateThumbprint = $CertificateThumbprint;
}
}
}
Example 3¶
This example creates a new App ProtectionPolicy for iOS.
Configuration Example
{
param(
[Parameter()]
[System.String]
$ApplicationId,
[Parameter()]
[System.String]
$TenantId,
[Parameter()]
[System.String]
$CertificateThumbprint
)
Import-DscResource -ModuleName Microsoft365DSC
node localhost
{
IntuneAppProtectionPolicyiOS 'MyCustomiOSPolicy'
{
DisplayName = 'My DSC iOS App Protection Policy'
Ensure = 'Absent'
ApplicationId = $ApplicationId;
TenantId = $TenantId;
CertificateThumbprint = $CertificateThumbprint;
}
}
}