DSCResources/MSFT_EXOApplicationAccessPolicy/MSFT_EXOApplicationAccessPolicy.schema.mof

[ClassVersion("1.0.0.0"), FriendlyName("EXOApplicationAccessPolicy")]
class MSFT_EXOApplicationAccessPolicy : OMI_BaseResource
{
    [Key, Description("The Identity parameter specifies the application access policy that you want to modify.")] String Identity;
    [Write, Description("The AccessRight parameter specifies the permission that you want to assign in the application access policy."), ValueMap{"RestrictAccess","DenyAccess"}, Values{"RestrictAccess","DenyAccess"}] String AccessRight;
    [Write, Description("The AppID parameter specifies the GUID of the apps to include in the policy.")] String AppID[];
    [Write, Description("The PolicyScopeGroupID parameter specifies the recipient to define in the policy. You can use any value that uniquely identifies the recipient.")] String PolicyScopeGroupId;
    [Write, Description("The Description parameter specifies a description for the policy.")] String Description;
    [Write, Description("Specify if the Application Access Policy should exist or not."), ValueMap{"Present","Absent"}, Values{"Present","Absent"}] String Ensure;
    [Write, Description("Credentials of the Exchange Global Admin"), EmbeddedInstance("MSFT_Credential")] string GlobalAdminAccount;
    [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("Thumbprint of the Azure Active Directory application's authentication certificate to use for authentication.")] String CertificateThumbprint;
    [Write, Description("Username can be made up to anything but password will be used for CertificatePassword"), EmbeddedInstance("MSFT_Credential")] String CertificatePassword;
    [Write, Description("Path to certificate used in service principal usually a PFX file.")] String CertificatePath;
};