DSCResources/MSFT_EXOSharingPolicy/MSFT_EXOSharingPolicy.schema.mof

[ClassVersion("1.0.0.0"), FriendlyName("EXOSharingPolicy")]
class MSFT_EXOSharingPolicy : OMI_BaseResource
{
    [Key, Description("The Name parameter specifies the unique name of the sharing policy. The maximum length is 64 characters.")] String Name;
    [Write, Description("The Default switch specifies that the sharing policy is the default sharing policy for all mailboxes.")] Boolean Default;
    [Write, Description("The Enabled parameter specifies whether to enable the sharing policy. Valid values for this parameter are $true or $false.")] Boolean Enabled;
    [Write, Description("The Domains parameter specifies domains to which this policy applies and the sharing policy action.")] String Domains[];
    [Write, Description("Specify if the Sharing 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 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("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;
    [Write, Description("Managed ID being used for authentication.")] Boolean ManagedIdentity;
};