Skip to content

Commit

Permalink
Updated {Update} AAD Integration Tests
Browse files Browse the repository at this point in the history
  • Loading branch information
NikCharlebois committed Jul 15, 2024
1 parent 2efdcf5 commit d7aaa77
Showing 1 changed file with 123 additions and 39 deletions.
Original file line number Diff line number Diff line change
@@ -1,38 +1,60 @@
param
(
[Parameter()]
[System.Management.Automation.PSCredential]
$Credential
[System.String]
$ApplicationId,

[Parameter()]
[System.String]
$TenantId,

[Parameter()]
[System.String]
$CertificateThumbprint
)

Configuration Master
{
param
(
[Parameter(Mandatory = $true)]
[System.Management.Automation.PSCredential]
$Credscredential
[Parameter()]
[System.String]
$ApplicationId,

[Parameter()]
[System.String]
$TenantId,

[Parameter()]
[System.String]
$CertificateThumbprint
)

Import-DscResource -ModuleName Microsoft365DSC
$Domain = $Credscredential.Username.Split('@')[1]
$Domain = $TenantId
Node Localhost
{
AADAdministrativeUnit 'TestUnit'
{
DisplayName = 'Test-Unit'
Ensure = 'Absent'
Credential = $Credscredential
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
}
AADApplication 'AADApp1'
{
DisplayName = "AppDisplayName"
Ensure = "Absent"
Credential = $Credscredential
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
}
AADAuthenticationContextClassReference 'AADAuthenticationContextClassReference-Test'
{
Credential = $credsCredential;
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
Description = "Context test Updated"; # Updated Property
DisplayName = "My Context";
Ensure = "Absent";
Expand All @@ -51,91 +73,131 @@
);
IsSoftwareOathEnabled = $True; # Updated Property
State = "enabled";
Credential = $credsCredential;
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
}
AADAuthenticationMethodPolicyFido2 'AADAuthenticationMethodPolicyFido2-Fido2'
{
Ensure = "Absent";
Id = "Fido2";
Credential = $credsCredential;
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
}
AADAuthenticationMethodPolicySms 'AADAuthenticationMethodPolicySms-Sms'
{
Credential = $credsCredential;
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
Ensure = "Absent";
Id = "Sms";
}
AADAuthenticationMethodPolicySoftware 'AADAuthenticationMethodPolicySoftware-SoftwareOath'
{
Credential = $credsCredential;
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
Ensure = "Absent";
Id = "SoftwareOath";
}
AADAuthenticationMethodPolicyTemporary 'AADAuthenticationMethodPolicyTemporary-TemporaryAccessPass'
{
Credential = $credsCredential;
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
Ensure = "Absent";
Id = "TemporaryAccessPass";
}
AADAuthenticationMethodPolicyVoice 'AADAuthenticationMethodPolicyVoice-Voice'
{
Credential = $credsCredential;
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
Ensure = "Absent";
Id = "Voice";
}
AADAuthenticationMethodPolicyX509 'AADAuthenticationMethodPolicyX509-X509Certificate'
{
Credential = $credsCredential;
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
Ensure = "Absent";
Id = "X509Certificate";
}
AADAuthenticationStrengthPolicy 'AADAuthenticationStrengthPolicy-Example'
{
DisplayName = "Example";
Ensure = "Absent";
Credential = $Credscredential;
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
}
AADConditionalAccessPolicy 'ConditionalAccessPolicy'
{
DisplayName = 'Example CAP'
Ensure = 'Absent'
Credential = $Credscredential
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
}
AADCrossTenantAccessPolicyConfigurationPartner 'AADCrossTenantAccessPolicyConfigurationPartner'
{
Credential = $Credscredential;
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
Ensure = "Absent";
PartnerTenantId = "12345-12345-12345-12345-12345";
}
AADEntitlementManagementAccessPackage 'myAccessPackage'
{
DisplayName = 'Integration Package'
Ensure = 'Absent'
Credential = $Credscredential
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
}
AADEntitlementManagementAccessPackageAssignmentPolicy 'myAssignmentPolicyWithAccessReviewsSettings'
{
DisplayName = "External tenant";
Ensure = "Absent"
Credential = $Credscredential
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
}
AADEntitlementManagementAccessPackageCatalog 'myAccessPackageCatalog'
{
DisplayName = 'My Catalog'
Ensure = 'Absent'
Credential = $Credscredential
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
}
AADEntitlementManagementAccessPackageCatalogResource 'myAccessPackageCatalogResource'
{
DisplayName = 'Communication site'
Ensure = 'Absent'
Credential = $Credscredential
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
}
AADEntitlementManagementConnectedOrganization 'MyConnectedOrganization'
{
DisplayName = "Test Tenant - DSC";
Ensure = "Absent"
Credential = $Credscredential
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
}
AADEntitlementManagementRoleAssignment 'AADEntitlementManagementRoleAssignment-Remove'
{
AppScopeId = "/";
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
Ensure = "Absent";
Principal = "John.Smith@$TenantId";
RoleDefinition = "Catalog creator";
}
AADGroup 'MyGroups'
{
Expand All @@ -144,51 +206,65 @@
MailEnabled = $True
DisplayName = "DSCGroup"
Ensure = "Absent"
Credential = $Credscredential
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
}
AADGroupLifecyclePolicy 'GroupLifecyclePolicy'
{
IsSingleInstance = "Yes"
AlternateNotificationEmails = @("john.smith@contoso.com")
AlternateNotificationEmails = @("john.smith@$TenantId")
GroupLifetimeInDays = 99
ManagedGroupTypes = "Selected"
Ensure = "Absent"
Credential = $Credscredential
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
}
AADGroupsNamingPolicy 'GroupsNamingPolicy'
{
IsSingleInstance = "Yes"
Ensure = "Absent"
Credential = $Credscredential
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
}
AADGroupsSettings 'GeneralGroupsSettings'
{
IsSingleInstance = "Yes"
Ensure = "Absent"
Credential = $Credscredential
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
}
AADNamedLocationPolicy 'CompanyNetwork'
{
DisplayName = "Company Network"
Ensure = "Absent"
Credential = $Credscredential
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
}
AADRoleDefinition 'AADRoleDefinition1'
{
IsEnabled = $true
RolePermissions = "microsoft.directory/applicationPolicies/allProperties/read"
DisplayName = "DSCRole1"
Ensure = "Absent"
Credential = $Credscredential
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
}
AADRoleEligibilityScheduleRequest 'MyRequest'
{
Action = "AdminAssign";
Credential = $Credscredential;
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
DirectoryScopeId = "/";
Ensure = "Absent";
IsValidationOnly = $True; # Updated Property
Principal = "John.Smith@$OrganizationName";
Principal = "AdeleV@$TenantId";
RoleDefinition = "Teams Communications Administrator";
ScheduleInfo = MSFT_AADRoleEligibilityScheduleRequestSchedule {
startDateTime = '2023-09-01T02:40:44Z'
Expand All @@ -204,13 +280,17 @@
AppId = "AppDisplayName"
DisplayName = "AppDisplayName"
Ensure = "Absent"
Credential = $Credscredential
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
}
AADSocialIdentityProvider 'AADSocialIdentityProvider-Google'
{
ClientId = "Google-OAUTH";
ClientSecret = "FakeSecret-Updated"; # Updated Property
Credential = $credsCredential;
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
DisplayName = "My Google Provider";
Ensure = "Absent";
IdentityProviderType = "Google";
Expand All @@ -219,14 +299,18 @@
{
DisplayName = "PolicyDisplayName"
Ensure = "Absent"
Credential = $Credscredential
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
}
AADUser 'ConfigureJohnSMith'
{
UserPrincipalName = "John.Smith@$Domain"
UserPrincipalName = "John.Smith@$TenantId"
DisplayName = "John J. Smith"
Ensure = "Absent"
Credential = $Credscredential
ApplicationId = $ApplicationId
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
}
}
}
Expand All @@ -243,7 +327,7 @@
# Compile and deploy configuration
try
{
Master -ConfigurationData $ConfigurationData -Credscredential $Credential
Master -ConfigurationData $ConfigurationData -ApplicationId $ApplicationId -TenantId $TenantId -CertificateThumbprint $CertificateThumbprint
Start-DscConfiguration Master -Wait -Force -Verbose -ErrorAction Stop
}
catch
Expand Down

0 comments on commit d7aaa77

Please sign in to comment.