DSCResources/MSFT_AADApplication/MSFT_AADApplication.schema.mof

[ClassVersion("1.0.0")]
class MSFT_AADApplicationPermission
{
    [Write, Description("Name of the requested permission.")] String Name;
    [Write, Description("Name of the API from which the permission comes from.")] String SourceAPI;
    [Write, Description("Type of permission."), ValueMap{"AppOnly", "Delegated"}, Values{"AppOnly", "Delegated"}] String Type;
    [Write, Description("Represented whether or not the Admin consent been granted on the app.")] Boolean AdminConsentGranted;
};
 
[ClassVersion("1.0.0.0"), FriendlyName("AADApplication")]
class MSFT_AADApplication : OMI_BaseResource
{
    [Key, Description("DisplayName of the app")] string DisplayName;
    [Write, Description("ObjectID of the app.")] String ObjectId;
    [Write, Description("AppId for the app.")] String AppId;
    [Write, Description("Indicates whether this application is available in other tenants.")] Boolean AvailableToOtherTenants;
    [Write, Description("A free text field to provide a description of the application object to end users. The maximum allowed size is 1024 characters.")] String Description;
    [Write, Description("A bitmask that configures the groups claim issued in a user or OAuth 2.0 access token that the application expects.")] String GroupMembershipClaims;
    [Write, Description("The URL to the application's homepage.")] String Homepage;
    [Write, Description("User-defined URI(s) that uniquely identify a Web application within its Azure AD tenant, or within a verified custom domain.")] string IdentifierUris[];
    [Write, Description("Specifies the fallback application type as public client, such as an installed application running on a mobile device. The default value is false, which means the fallback application type is confidential client such as web app. There are certain scenarios where Microsoft Entra ID cannot determine the client application type (for example, ROPC flow where it is configured without specifying a redirect URI). In those cases, Microsoft Entra ID will interpret the application type based on the value of this property.")] Boolean IsFallbackPublicClient;
    [Write, Description("Client applications that are tied to this resource application.")] string KnownClientApplications[];
    [Write, Description("The logout url for this application.")] string LogoutURL;
    [Write, Description("Specifies whether this application is a public client (such as an installed application running on a mobile device). Default is false.")] Boolean PublicClient;
    [Write, Description("Specifies the URLs that user tokens are sent to for sign in, or the redirect URIs that OAuth 2.0 authorization codes and access tokens are sent to.")] String ReplyURLs[];
    [Write, Description("UPN or ObjectID values of the app's owners.")] String Owners[];
    [Write, Description("Specify if the Azure AD App should exist or not."), ValueMap{"Present","Absent"}, Values{"Present","Absent"}] String Ensure;
    [Write, Description("Credentials for the Microsoft Graph delegated permissions."), EmbeddedInstance("MSFT_Credential")] string Credential;
    [Write, Description("Id of the Azure Active Directory application to authenticate with.")] String ApplicationId;
    [Write, Description("Secret of the Azure Active Directory application to authenticate with."), EmbeddedInstance("MSFT_Credential")] String ApplicationSecret;
    [Write, Description("Id of the Azure Active Directory tenant used for authentication.")] String TenantId;
    [Write, Description("API permissions for the Azure Active Directory Application."),EmbeddedInstance("MSFT_AADApplicationPermission")] String Permissions[];
    [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;
};