DSCResources/MSFT_SPWebAppPolicy/MSFT_SPWebAppPolicy.schema.mof

[ClassVersion("1.0.0.0")]
Class MSFT_SPWebPolicyPermissions
{
    [Required, Description("Name of the account")] String Username;
    [Write, Description("Permission level of the account"), ValueMap{"Deny All","Deny Write","Full Read","Full Control"}, Values{"Deny All","Deny Write","Full Read","Full Control"}] String PermissionLevel[];
    [Write, Description("Identity type for this entry, either claims or native. If not specified it will default to whatever mode the web application is in."), ValueMap{"Claims","Native"}, Values{"Claims","Native"}] String IdentityType;
    [Write, Description("Specifies if the account is allowed to act as a system account")] Boolean ActAsSystemAccount;
};
[ClassVersion("1.0.0.0"), FriendlyName("SPWebAppPolicy")]
class MSFT_SPWebAppPolicy : OMI_BaseResource
{
    [Key, Description("The URL of the web application")] string WebAppUrl;
    [Write, Description("Exact list of accounts that will have to get Web Policy permissions"), EmbeddedInstance("MSFT_SPWebPolicyPermissions")] String Members[];
    [Write, Description("List of all accounts that must be in the Web Policy group"), EmbeddedInstance("MSFT_SPWebPolicyPermissions")] String MembersToInclude[];
    [Write, Description("List of all accounts that are not allowed to have any Web Policy permissions"), EmbeddedInstance("MSFT_SPWebPolicyPermissions")] String MembersToExclude[];
    [Write, Description("Include the Cache Accounts in the policy or not")] Boolean SetCacheAccountsPolicy;
};