DSCResources/MSFT_IntuneDeviceConfigurationSCEPCertificatePolicyWindows10/MSFT_IntuneDeviceConfigurationScepCertificatePolicyWindows10.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")]
class MSFT_MicrosoftGraphCustomSubjectAlternativeName
{
    [Write, Description("Custom SAN Name")] String Name;
    [Write, Description("Custom SAN Type. Possible values are: none, emailAddress, userPrincipalName, customAzureADAttribute, domainNameService, universalResourceIdentifier."), ValueMap{"none","emailAddress","userPrincipalName","customAzureADAttribute","domainNameService","universalResourceIdentifier"}, Values{"none","emailAddress","userPrincipalName","customAzureADAttribute","domainNameService","universalResourceIdentifier"}] String SanType;
};
[ClassVersion("1.0.0")]
class MSFT_MicrosoftGraphExtendedKeyUsage
{
    [Write, Description("Extended Key Usage Name")] String Name;
    [Write, Description("Extended Key Usage Object Identifier")] String ObjectIdentifier;
};
 
[ClassVersion("1.0.0.0"), FriendlyName("IntuneDeviceConfigurationScepCertificatePolicyWindows10")]
class MSFT_IntuneDeviceConfigurationScepCertificatePolicyWindows10 : OMI_BaseResource
{
    [Write, Description("Target store certificate. Possible values are: user, machine."), ValueMap{"user","machine"}, Values{"user","machine"}] String CertificateStore;
    [Write, Description("SCEP Hash Algorithm. Possible values are: sha1, sha2."), ValueMap{"sha1","sha2"}, Values{"sha1","sha2"}] String HashAlgorithm;
    [Write, Description("SCEP Key Size. Possible values are: size1024, size2048, size4096."), ValueMap{"size1024","size2048","size4096"}, Values{"size1024","size2048","size4096"}] String KeySize;
    [Write, Description("SCEP Key Usage. Possible values are: keyEncipherment, digitalSignature."), ValueMap{"keyEncipherment","digitalSignature"}, Values{"keyEncipherment","digitalSignature"}] String KeyUsage;
    [Write, Description("SCEP Server Url(s).")] String ScepServerUrls[];
    [Write, Description("Custom String that defines the AAD Attribute.")] String SubjectAlternativeNameFormatString;
    [Write, Description("Custom format to use with SubjectNameFormat = Custom. Example: CN={{UserName}},E={{EmailAddress}},OU=Enterprise Users,O=Contoso Corporation,L=Redmond,ST=WA,C=US")] String SubjectNameFormatString;
    [Write, Description("Custom Subject Alternative Name Settings. This collection can contain a maximum of 500 elements."), EmbeddedInstance("MSFT_MicrosoftGraphcustomSubjectAlternativeName")] String CustomSubjectAlternativeNames[];
    [Write, Description("Extended Key Usage (EKU) settings. This collection can contain a maximum of 500 elements."), EmbeddedInstance("MSFT_MicrosoftGraphextendedKeyUsage")] String ExtendedKeyUsages[];
    [Write, Description("Scale for the Certificate Validity Period. Possible values are: days, months, years."), ValueMap{"days","months","years"}, Values{"days","months","years"}] String CertificateValidityPeriodScale;
    [Write, Description("Value for the Certificate Validity Period")] UInt32 CertificateValidityPeriodValue;
    [Write, Description("Key Storage Provider (KSP). Possible values are: useTpmKspOtherwiseUseSoftwareKsp, useTpmKspOtherwiseFail, usePassportForWorkKspOtherwiseFail, useSoftwareKsp."), ValueMap{"useTpmKspOtherwiseUseSoftwareKsp","useTpmKspOtherwiseFail","usePassportForWorkKspOtherwiseFail","useSoftwareKsp"}, Values{"useTpmKspOtherwiseUseSoftwareKsp","useTpmKspOtherwiseFail","usePassportForWorkKspOtherwiseFail","useSoftwareKsp"}] String KeyStorageProvider;
    [Write, Description("Certificate renewal threshold percentage. Valid values 1 to 99")] UInt32 RenewalThresholdPercentage;
    [Write, Description("Certificate Subject Alternative Name Type. Possible values are: none, emailAddress, userPrincipalName, customAzureADAttribute, domainNameService, universalResourceIdentifier."), ValueMap{"none","emailAddress","userPrincipalName","customAzureADAttribute","domainNameService","universalResourceIdentifier"}, Values{"none","emailAddress","userPrincipalName","customAzureADAttribute","domainNameService","universalResourceIdentifier"}] String SubjectAlternativeNameType;
    [Write, Description("Certificate Subject Name Format. Possible values are: commonName, commonNameIncludingEmail, commonNameAsEmail, custom, commonNameAsIMEI, commonNameAsSerialNumber, commonNameAsAadDeviceId, commonNameAsIntuneDeviceId, commonNameAsDurableDeviceId."), ValueMap{"commonName","commonNameIncludingEmail","commonNameAsEmail","custom","commonNameAsIMEI","commonNameAsSerialNumber","commonNameAsAadDeviceId","commonNameAsIntuneDeviceId","commonNameAsDurableDeviceId"}, Values{"commonName","commonNameIncludingEmail","commonNameAsEmail","custom","commonNameAsIMEI","commonNameAsSerialNumber","commonNameAsAadDeviceId","commonNameAsIntuneDeviceId","commonNameAsDurableDeviceId"}] String SubjectNameFormat;
    [Write, Description("Trusted Root Certificate Id")] String RootCertificateId;
    [Write, Description("Admin provided description of the Device Configuration.")] String Description;
    [Key, Description("Admin provided name of the device configuration.")] String DisplayName;
    [Write, Description("The unique identifier for an entity. Read-only.")] String Id;
    [Write, Description("Represents the assignment to the Intune policy."), EmbeddedInstance("MSFT_DeviceManagementConfigurationPolicyAssignments")] String Assignments[];
    [Write, Description("Present ensures the policy exists, absent ensures it is removed."), ValueMap{"Present","Absent"}, Values{"Present","Absent"}] string Ensure;
    [Write, Description("Credentials of the Admin"), EmbeddedInstance("MSFT_Credential")] string Credential;
    [Write, Description("Id of the Azure Active Directory application to authenticate with.")] String ApplicationId;
    [Write, Description("Id of the Azure Active Directory tenant used for authentication.")] 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;
};