DSCResources/MSFT_IntuneDeviceConfigurationPolicyAndroidWorkProfile/MSFT_IntuneDeviceConfigurationPolicyAndroidWorkProfile.schema.mof

[ClassVersion("1.0.0.0")]
class MSFT_DeviceManagementConfigurationPolicyAssignments
{
    [Write, Description("The type of the target assignment."), ValueMap{"#microsoft.graph.groupAssignmentTarget","#microsoft.graph.allLicensedUsersAssignmentTarget","#microsoft.graph.allDevicesAssignmentTarget","#microsoft.graph.exclusionGroupAssignmentTarget","#microsoft.graph.configurationManagerCollectionAssignmentTarget"}, Values{"#microsoft.graph.groupAssignmentTarget","#microsoft.graph.allLicensedUsersAssignmentTarget","#microsoft.graph.allDevicesAssignmentTarget","#microsoft.graph.exclusionGroupAssignmentTarget","#microsoft.graph.configurationManagerCollectionAssignmentTarget"}] String dataType;
    [Write, Description("The type of filter of the target assignment i.e. Exclude or Include. Possible values are:none, include, exclude."), ValueMap{"none","include","exclude"}, Values{"none","include","exclude"}] String deviceAndAppManagementAssignmentFilterType;
    [Write, Description("The Id of the filter for the target assignment.")] String deviceAndAppManagementAssignmentFilterId;
    [Write, Description("The group Id that is the target of the assignment.")] String groupId;
    [Write, Description("The group Display Name that is the target of the assignment.")] String groupDisplayName;
    [Write, Description("The collection Id that is the target of the assignment.(ConfigMgr)")] String collectionId;
};
 
[ClassVersion("1.0.0.0"), FriendlyName("IntuneDeviceConfigurationPolicyAndroidWorkProfile")]
class MSFT_IntuneDeviceConfigurationPolicyAndroidWorkProfile : OMI_BaseResource
{
    [Key, Description("Display name of the device general configuration policy for Android WorkProfile.")] String DisplayName;
    [Write, Description("Description of the device general configuration policy for Android WorkProfile")] String Description;
    [Write, Description("Assignments of the Intune Policy."), EmbeddedInstance("MSFT_DeviceManagementConfigurationPolicyAssignments")] String Assignments[];
    [Write, Description("Indicates whether or not to block face unlock.")] Boolean PasswordBlockFaceUnlock;
    [Write, Description("Indicates whether or not to block fingerprint unlock")] Boolean PasswordBlockFingerprintUnlock;
    [Write, Description("Indicates whether or not to block iris unlock.")] Boolean PasswordBlockIrisUnlock;
    [Write, Description("Indicates whether or not to block Smart Lock and other trust agents.")] Boolean passwordBlockTrustAgents;
    [Write, Description("Number of days before the password expires")] Uint32 PasswordExpirationDays;
    [Write, Description("Minimum length of passwords")] Uint32 PasswordMinimumLength;
    [Write, Description("Minutes of inactivity before the screen times out")] Uint32 PasswordMinutesOfInactivityBeforeScreenTimeout;
    [Write, Description("Number of previous passwords to block")] Uint32 PasswordPreviousPasswordBlockCount;
    [Write, Description("Number of sign in failures allowed before factory reset")] Uint32 PasswordSignInFailureCountBeforeFactoryReset;
    [Write, Description("Type of password that is required"),ValueMap{"deviceDefault","lowSecurityBiometric","required", "atLeastNumeric", "numericComplex", "atLeastAlphabetic", "atLeastAlphanumeric", "alphanumericWithSymbols"}, Values{"deviceDefault","lowSecurityBiometric","required", "atLeastNumeric", "numericComplex", "atLeastAlphabetic", "atLeastAlphanumeric", "alphanumericWithSymbols"}] String PasswordRequiredType;
    [Write, Description("Indicates the required device password complexity on Android. One of: NONE, LOW, MEDIUM, HIGH."),ValueMap{"none","low","medium", "high"}, Values{"none","low","medium", "high"}] String RequiredPasswordComplexity;
    [Write, Description("Indicates whether to allow installation of apps from unknown sources.")] Boolean WorkProfileAllowAppInstallsFromUnknownSources;
    [Write, Description("Type of data sharing that is allowed"), ValueMap{"deviceDefault", "preventAny", "allowPersonalToWork", "noRestrictions"}, Values{"deviceDefault", "preventAny", "allowPersonalToWork", "noRestrictions"}] String WorkProfileDataSharingType;
    [Write, Description("Indicates whether or not to block notifications while device locked")] Boolean WorkProfileBlockNotificationsWhileDeviceLocked;
    [Write, Description("Block users from adding/removing accounts in work profile")] Boolean WorkProfileBlockAddingAccounts;
    [Write, Description("Allow bluetooth devices to access enterprise contacts")] Boolean WorkProfileBluetoothEnableContactSharing;
    [Write, Description("Block screen capture in work profile")] Boolean WorkProfileBlockScreenCapture;
    [Write, Description("Block display work profile caller ID in personal profile")] Boolean WorkProfileBlockCrossProfileCallerId;
    [Write, Description("Block work profile camera")] Boolean WorkProfileBlockCamera;
    [Write, Description("Block work profile contacts availability in personal profile")] Boolean WorkProfileBlockCrossProfileContactsSearch;
    [Write, Description("Boolean that indicates if the setting disallow cross profile copy paste is enabled")] Boolean WorkProfileBlockCrossProfileCopyPaste;
    [Write, Description("Type of password that is required"), ValueMap{"deviceDefault", "prompt", "autoGrant", "autoDeny"}, Values{"deviceDefault", "prompt", "autoGrant", "autoDeny"}] String WorkProfileDefaultAppPermissionPolicy;
    [Write, Description("Indicates whether or not to block face unlock in work profile.")] Boolean WorkProfilePasswordBlockFaceUnlock;
    [Write, Description("Indicates whether or not to block fingerprint unlock in work profile")] Boolean WorkProfilePasswordBlockFingerprintUnlock;
    [Write, Description("Indicates whether or not to block iris unlock in work profile.")] Boolean WorkProfilePasswordBlockIrisUnlock;
    [Write, Description("Indicates whether or not to block Smart Lock and other trust agents for work profile")] Boolean WorkProfilePasswordBlockTrustAgents;
    [Write, Description("Number of days before the work profile password expires")] Uint32 WorkProfilePasswordExpirationDays;
    [Write, Description("Minimum length of work profile password")] Uint32 WorkProfilePasswordMinimumLength;
    [Write, Description("Minimum count of numeric characters required in work profile password")] Uint32 WorkProfilePasswordMinNumericCharacters;
    [Write, Description("Minimum count of non-letter characters required in work profile password")] Uint32 WorkProfilePasswordMinNonLetterCharacters;
    [Write, Description("Minimum count of letter characters required in work profile password")] Uint32 WorkProfilePasswordMinLetterCharacters;
    [Write, Description("Minimum count of lower-case characters required in work profile password")] Uint32 WorkProfilePasswordMinLowerCaseCharacters;
    [Write, Description("Minimum count of upper-case characters required in work profile password")] Uint32 WorkProfilePasswordMinUpperCaseCharacters;
    [Write, Description("Minimum count of symbols required in work profile password")] Uint32 WorkProfilePasswordMinSymbolCharacters;
    [Write, Description("Minutes of inactivity before the screen times out")] Uint32 WorkProfilePasswordMinutesOfInactivityBeforeScreenTimeout;
    [Write, Description("Number of previous work profile passwords to block")] Uint32 WorkProfilePasswordPreviousPasswordBlockCount;
    [Write, Description("Number of sign in failures allowed before work profile is removed and all corporate data deleted")] Uint32 WorkProfilePasswordSignInFailureCountBeforeFactoryReset;
    [Write, Description("Type of work profile password that is required"), ValueMap{"deviceDefault", "lowSecurityBiometric", "required", "atLeastNumeric", "numericComplex", "atLeastAlphabetic", "atLeastAlphanumeric", "alphanumericWithSymbols"}, Values{"deviceDefault", "lowSecurityBiometric", "required", "atLeastNumeric", "numericComplex", "atLeastAlphabetic", "atLeastAlphanumeric", "alphanumericWithSymbols"}] String WorkProfilePasswordRequiredType;
    [Write, Description("Indicates the required device password complexity on Android. One of: NONE, LOW, MEDIUM, HIGH in work profile."),ValueMap{"none","low","medium", "high"}, Values{"none","low","medium", "high"}] String WorkProfileRequiredPasswordComplexity;
    [Write, Description("Password is required or not for work profile")] Boolean WorkProfileRequirePassword;
    [Write, Description("Require the Android Verify apps feature is turned on")] Boolean SecurityRequireVerifyApps;
    [Write, Description("Package identifier for always-on VPN.")] String VpnAlwaysOnPackageIdentifier;
    [Write, Description("Enable lockdown mode for always-on VPN.")] Boolean VpnEnableAlwaysOnLockdownMode;
    [Write, Description("Allow widgets from work profile apps.")] Boolean WorkProfileAllowWidgets;
    [Write, Description("Prevent app installations from unknown sources in the personal profile.")] Boolean WorkProfileBlockPersonalAppInstallsFromUnknownSources;
    [Write, Description("Present ensures the site collection exists, absent ensures it is removed"), ValueMap{"Present","Absent"}, Values{"Present","Absent"}] string Ensure;
    [Write, Description("Credentials of the Intune Admin"), EmbeddedInstance("MSFT_Credential")] string Credential;
    [Write, Description("Id of the Azure Active Directory application to authenticate with.")] String ApplicationId;
    [Write, Description("Name of the Azure Active Directory tenant used for authentication. Format contoso.onmicrosoft.com")] String TenantId;
    [Write, Description("Secret of the Azure Active Directory tenant used for authentication."), EmbeddedInstance("MSFT_Credential")] String ApplicationSecret;
    [Write, Description("Thumbprint of the Azure Active Directory application's authentication certificate to use for authentication.")] String CertificateThumbprint;
    [Write, Description("Managed ID being used for authentication.")] Boolean ManagedIdentity;
};