Files
DSC-Configuration-Compiler/Templates/Environment/Environment.Default.psd1
Torsten Brendgen 846dccf468 clean dev commit
2026-06-27 23:18:34 +02:00

161 lines
5.1 KiB
PowerShell

@{
Parameters = @{
DomainLabel = @{
Type = 'string'
DefaultValue = ''
Required = $false
MinLength = 2
MaxLength = 32
Pattern = '^[A-Za-z][A-Za-z0-9_-]*$'
Metadata = @{
Description = @{
'de-DE' = 'Kurzer logischer Bezeichner der Umgebung oder Domaene.'
'en-US' = 'Short logical identifier for the environment or domain.'
}
}
}
DomainFQDN = @{
Type = 'string'
DefaultValue = ''
Required = $true
Pattern = '^[A-Za-z0-9.-]+$'
Metadata = @{
Description = @{
'de-DE' = 'Vollqualifizierter DNS-Name der Active-Directory-Domaene.'
'en-US' = 'Fully qualified DNS name of the Active Directory domain.'
}
}
}
DomainNetBIOS = @{
Type = 'string'
DefaultValue = ''
Required = $true
MinLength = 1
MaxLength = 15
Pattern = '^[A-Za-z0-9_-]+$'
Metadata = @{
Description = @{
'de-DE' = 'NetBIOS-Name der Active-Directory-Domaene.'
'en-US' = 'NetBIOS name of the Active Directory domain.'
}
}
}
}
Resources = @{
NonNodeData = @{
RequiredModules = @(
@{
Name = 'ActiveDirectoryDsc'
Version = '6.7.1'
}
)
Services = @{
ActiveDirectory = @{
Domain = @{
Ensure = 'Present'
FQDN = "[parameters('DomainFQDN')]"
NetBIOS = "[parameters('DomainNetBIOS')]"
ForestMode = "[parameters('ForestMode')]"
DomainMode = "[parameters('DomainMode')]"
DnsDelegation = $false
Credentials = @{
DomainAdministrator = @{
CredentialName = "[parameters('DomainAdministratorCredentialName')]"
}
SafeModeAdministrator = @{
SecretName = "[parameters('SafeModeAdministratorPasswordSecretName')]"
}
}
}
DomainControllers = @(
@{
NodeName = '*'
Ensure = 'Present'
InstallDns = $true
IsGlobalCatalog = $true
SiteName = "[parameters('DefaultSiteName')]"
}
)
Sites = @(
@{
Name = "[parameters('DefaultSiteName')]"
Ensure = 'Present'
}
)
Subnets = @(
@{
Name = "[parameters('DefaultSubnet')]"
SiteName = "[parameters('DefaultSiteName')]"
Ensure = 'Present'
}
)
OrganizationalUnits = @(
@{
Name = 'Servers'
Path = "[concat('DC=', replace(parameters('DomainFQDN'), '.', ',DC='))]"
Ensure = 'Present'
ProtectedFromAccidentalDeletion = $true
}
@{
Name = 'Service Accounts'
Path = "[concat('DC=', replace(parameters('DomainFQDN'), '.', ',DC='))]"
Ensure = 'Present'
ProtectedFromAccidentalDeletion = $true
}
@{
Name = 'Groups'
Path = "[concat('DC=', replace(parameters('DomainFQDN'), '.', ',DC='))]"
Ensure = 'Present'
ProtectedFromAccidentalDeletion = $true
}
)
Groups = @(
@{
GroupName = 'GG-SharePoint-Admins'
Path = "[concat('OU=Groups,DC=', replace(parameters('DomainFQDN'), '.', ',DC='))]"
Scope = 'Global'
Category = 'Security'
Ensure = 'Present'
Members = @()
}
)
Users = @(
@{
UserName = 'SVC_SHP_Setup'
Path = "[concat('OU=Service Accounts,DC=', replace(parameters('DomainFQDN'), '.', ',DC='))]"
Ensure = 'Present'
Enabled = $true
Password = @{
SecretName = 'SVC_SHP_Setup'
}
}
)
Trusts = @()
Dns = @{
Forwarders = @()
ReverseLookupZones = @()
}
}
}
}
}
}