Share via


Een door Microsoft Entra Domain Services beheerd domein maken met behulp van een Azure Resource Manager-sjabloon

Microsoft Entra Domain Services biedt beheerde domeinservices zoals domeindeelname, groepsbeleid, LDAP, Kerberos/NTLM-verificatie die volledig compatibel is met Windows Server Active Directory. U gebruikt deze domeinservices zonder zelf domeincontrollers te implementeren, te beheren en er patches op toe te passen. Domain Services kan worden geïntegreerd met uw bestaande Microsoft Entra-tenant. Met deze integratie kunnen gebruikers zich aanmelden met behulp van hun bedrijfsreferenties, en u kunt bestaande groepen en gebruikersaccounts gebruiken om de toegang tot resources te beveiligen.

Dit artikel laat zien hoe u een beheerd domain maakt met behulp van een Azure Resource Manager-sjabloon. Ondersteunende resources worden gemaakt met Azure PowerShell.

Vereisten

U hebt de volgende resources nodig om dit artikel te voltooien:

DNS-naamgevingsvereisten

Wanneer u een door Domain Services beheerd domein maakt, geeft u een DNS-naam op. Er is een aantal factoren waar u rekening mee moet houden wanneer u deze DNS-naam kiest:

  • Ingebouwde domeinnaam: standaard wordt de ingebouwde domeinnaam van de map gebruikt (een .onmicrosoft.com achtervoegsel). Als u beveiligde LDAP-toegang tot het beheerde domein wilt krijgen via een internetverbinding, kunt u geen digitaal certificaat maken om de verbinding met dit standaarddomein te beveiligen. Microsoft is eigenaar van het domein .onmicrosoft.com , dus een certificeringsinstantie (CA) geeft geen certificaat uit.
  • Aangepaste domeinnamen: De meest voorkomende benadering is het opgeven van een aangepaste domeinnaam, meestal een domeinnaam die u al bezit en routeerbaar is. Wanneer u een routeerbaar, aangepast domein gebruikt, kan verkeer op de juiste manier stromen om uw toepassingen te ondersteunen.
  • Niet-routeerbare domeinachtervoegsels: Over het algemeen wordt u aangeraden een niet-routable domeinnaamachtervoegsel te voorkomen, zoals contoso.local. Het achtervoegsel .local is niet routeerbaar en kan problemen veroorzaken met de DNS-resolutie.

Tip

Als u een aangepaste domeinnaam maakt, wees dan voorzichtig met bestaande DNS-naamruimten. U wordt aangeraden een domeinnaam te gebruiken die losstaat van een bestaande Azure- of on-premises DNS-naamruimte.

Als u bijvoorbeeld contoso.com als bestaande DNS-naamruimte hebt, maakt u een beheerd domein met de aangepaste domeinnaam aaddscontoso.com. Als u beveiligde LDAP moet gebruiken, moet u dit aangepaste domeinnaam registreren en hier eigenaar van zijn om de vereiste certificaten te genereren.

Mogelijk moet u een aantal aanvullende DNS-records maken voor andere services in uw omgeving, of voorwaardelijke DNS-doorstuurservers maken tussen bestaande DNS-naamruimten in uw omgeving. Als u bijvoorbeeld een webserver hebt waar een site wordt gehost met de root-DNS-naam, kunnen naamconflicten ontstaan waardoor extra DNS-vermeldingen vereist zijn.

In dit voorbeeld en deze artikelen met instructies wordt het aangepaste domein aaddscontoso.com gebruikt als een kort voorbeeld. In alle opdrachten geeft u uw eigen domeinnaam op.

De volgende DNS-naambeperkingen zijn ook van toepassing:

  • Beperkingen voor domeinvoorvoegsels: u kunt geen beheerd domein maken met een voorvoegsel dat langer is dan 15 tekens. Het voorvoegsel van uw opgegeven domeinnaam (zoals aaddscontoso in de domeinnaam aaddscontoso.com) mag maximaal 15 tekens bevatten.
  • Netwerknaamconflicten: de DNS-domeinnaam voor uw beheerde domein mag nog niet bestaan in het virtuele netwerk. Controleer met name op de volgende scenario's die leiden tot een naamconflict.
    • Of u al een Active Directory-domein met deze DNS-domeinnaam in het virtuele Azure-netwerk hebt.
    • Of het virtuele netwerk waarin u het beheerde domein wilt inschakelen, over een VPN-verbinding met uw on-premises netwerk beschikt. In dit scenario moet u ervoor zorgen dat u geen domein met dezelfde DNS-domeinnaam in uw on-premises netwerk hebt.
    • Als u een bestaande Azure-cloudservice hebt met die naam op het virtuele Azure-netwerk.

Vereiste Microsoft Entra-resources maken

Domain Services vereist een service-principal en een Microsoft Entra-groep. Met deze resources kunnen via het beheerde domein gegevens worden gesynchroniseerd, en worden gedefinieerd welke gebruikers beheerdersbevoegdheden hebben in het beheerde domein.

Registreer eerst de Microsoft Entra Domain Services-resourceprovider met behulp van de cmdlet Register-AzResourceProvider :

Register-AzResourceProvider -ProviderNamespace Microsoft.AAD

Maak een Microsoft Entra-service-principal met behulp van de cmdlet New-MgServicePrincipal voor Domain Services om zichzelf te communiceren en te verifiëren. Een specifieke toepassings-id wordt gebruikt met de naam Domain Controller Services met een id van 2565bd9d-da50-47d4-8b85-4c97f669dc36 voor Azure Global. Zoek naar app-waarde 6ba9a5d4-8456-4118-b521-9c5ca10cdf84 voor andere Azure-clouds.

New-MgServicePrincipal

Maak nu een Microsoft Entra-groep met de naam AAD DC-beheerders met behulp van de cmdlet New-MgGroup . Aan gebruikers die zijn toegevoegd aan deze groep, worden vervolgens machtigingen verleend voor het uitvoeren van beheertaken in het beheerde domein.

New-MgGroup -DisplayName "AAD DC Administrators" `
  -Description "Delegated group to administer Microsoft Entra Domain Services" `
  -SecurityEnabled:$true -MailEnabled:$false `
  -MailNickName "AADDCAdministrators"

Wanneer de groep AAD DC-beheerders is gemaakt, voegt u een gebruiker toe aan de groep met behulp van de cmdlet New-MgGroupMemberByRef . U haalt eerst de groepsobject-id van de AAD DC-beheerders op met behulp van de cmdlet Get-MgGroup en vervolgens de object-id van de gewenste gebruiker met behulp van de cmdlet Get-MgUser .

In het volgende voorbeeld ziet u de gebruikersobject-id voor het account met een UPN van admin@contoso.onmicrosoft.com. Vervang dit gebruikersaccount door de UPN van de gebruiker die u wilt toevoegen aan de groep AAD DC Administrators:

# First, retrieve the object ID of the newly created 'AAD DC Administrators' group.
$GroupObjectId = Get-MgGroup `
  -Filter "DisplayName eq 'AAD DC Administrators'" | `
  Select-Object Id

# Now, retrieve the object ID of the user you'd like to add to the group.
$UserObjectId = Get-MgUser `
  -Filter "UserPrincipalName eq 'admin@contoso.onmicrosoft.com'" | `
  Select-Object Id

# Add the user to the 'AAD DC Administrators' group.
New-MgGroupMember -GroupId $GroupObjectId.Id -DirectoryObjectId $UserObjectId.Id

Maak ten slotte een resourcegroep met behulp van de cdmlet New-AzResourceGroup. De resourcegroep in het volgende voorbeeld heet myResourceGroup en is gemaakt in de regio westus. Gebruik uw eigen naam en gewenste regio:

New-AzResourceGroup `
  -Name "myResourceGroup" `
  -Location "WestUS"

Als u een regio kiest die ondersteuning biedt voor Beschikbaarheidszones, worden de Domain Services-resources verdeeld over zones voor meer redundantie. Beschikbaarheidszones zijn unieke, fysieke locaties binnen een Azure-regio. Elke zone bestaat uit een of meer datacenters met onafhankelijke stroomvoorziening, koeling en netwerken. Tolerantie wordt gegarandeerd door aanwezigheid van minimaal drie afzonderlijke zones in alle actieve regio's.

U hoeft niets te configureren voor Domain Services om te worden gedistribueerd over zones. De distributie van resources over zones wordt automatisch afgehandeld op het Azure-platform. Zie Wat zijn beschikbaarheidszones in Azure? voor meer informatie en om de beschikbaarheid van regio’s te zien.

Resourcedefinitie voor Domain Services

Als onderdeel van de Resource Manager-resourcedefinitie zijn de volgende configuratieparameters vereist:

Parameter Weergegeven als
domainName De DNS-domeinnaam voor uw beheerde domein, waarbij u rekening houdt met de vorige punten over de namen van prefixen en conflicten.
filteredSync Met Domain Services kunt u alle gebruikers en groepen synchroniseren die beschikbaar zijn in Microsoft Entra ID of een bereiksynchronisatie van alleen specifieke groepen.

Zie Synchronisatie met bereik van Microsoft Entra Domain Services voor meer informatie over synchronisatiebereik.
notificationSettings Als er waarschuwingen worden gegenereerd in het beheerde domein, kunnen e-mailmeldingen worden verzonden.

Beheerders met hoge bevoegdheden in de Microsoft Entra ID-tenant en leden van de groep AAD DC-beheerders kunnen worden ingeschakeld voor deze meldingen.

Desgewenst kunt u andere geadresseerden toevoegen voor meldingen wanneer er waarschuwingen zijn die aandacht vereisen.
domainConfigurationType Standaard wordt een beheerd domein gemaakt als een gebruikersforest. Dit type forest synchroniseert alle objecten van Microsoft Entra ID, inclusief alle gebruikersaccounts die zijn gemaakt in een on-premises AD DS-omgeving. U hoeft geen domainConfiguration-waarde op te geven om een gebruikersforest te maken.

Een resourceforest synchroniseert alleen gebruikers en groepen die rechtstreeks in Microsoft Entra-id zijn gemaakt. Stel de waarde in op ResourceTrusting om een resourceforest te maken.

Zie het overzicht van resourceforests voor meer informatie over resourceforests, waaronder waarom u er een kunt gebruiken en hoe u forestvertrouwensrelaties maakt met on-premises AD DS-domeinen.

De volgende verkorte parameterdefinitie laat zien hoe deze waarden worden gedeclareerd. Een gebruikersforest met de naam aaddscontoso.com wordt gemaakt met alle gebruikers van Microsoft Entra-id die is gesynchroniseerd met het beheerde domein:

"parameters": {
    "domainName": {
        "value": "aaddscontoso.com"
    },
    "filteredSync": {
        "value": "Disabled"
    },
    "notificationSettings": {
        "value": {
            "notifyGlobalAdmins": "Enabled",
            "notifyDcAdmins": "Enabled",
            "additionalRecipients": []
        }
    },
    [...]
}

Vervolgens wordt het volgende verkorte Resource Manager-sjabloonbrontype gebruikt om het beheerde domein te definiëren en te maken. Er moeten al een virtueel netwerk van Azure en een subnet bestaan, of als onderdeel van de Resource Manager-sjabloon worden gemaakt. Het beheerde domein wordt verbonden met dit subnet.

"resources": [
    {
        "apiVersion": "2017-06-01",
        "type": "Microsoft.AAD/DomainServices",
        "name": "[parameters('domainName')]",
        "location": "[parameters('location')]",
        "dependsOn": [
            "[concat('Microsoft.Network/virtualNetworks/', parameters('vnetName'))]"
        ],
        "properties": {
            "domainName": "[parameters('domainName')]",
            "subnetId": "[concat('/subscriptions/', subscription().subscriptionId, '/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/virtualNetworks/', parameters('vnetName'), '/subnets/', parameters('subnetName'))]",
            "filteredSync": "[parameters('filteredSync')]",
            "notificationSettings": "[parameters('notificationSettings')]"
        }
    },
    [...]
]

Deze parameters en dit resourcetype kunnen worden gebruikt als onderdeel van een bredere Resource Manager-sjabloon voor het implementeren van een beheerd domein, zoals wordt weergegeven in de volgende sectie.

Een beheerd domein maken met behulp van een voorbeeldsjabloon

Met de volgende volledige Resource Manager-voorbeeldsjabloon worden een beheerd domein en de ondersteunende virtuele netwerk-, subnet- en netwerkbeveiligingsgroepregels gemaakt. De netwerkbeveiligingsgroepregels zijn nodig om het beheerde domein te beveiligen en ervoor te zorgen dat het verkeer correct kan verlopen. Er wordt een gebruikersforest met de DNS-naam van aaddscontoso.com gemaakt, waarbij alle gebruikers zijn gesynchroniseerd vanuit Microsoft Entra-id:

{
    "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "apiVersion": {
            "value": "2017-06-01"
        },
        "domainConfigurationType": {
            "value": "FullySynced"
        },
        "domainName": {
            "value": "aaddscontoso.com"
        },
        "filteredSync": {
            "value": "Disabled"
        },
        "location": {
            "value": "westus"
        },
        "notificationSettings": {
            "value": {
                "notifyGlobalAdmins": "Enabled",
                "notifyDcAdmins": "Enabled",
                "additionalRecipients": []
            }
        },
        "subnetName": {
            "value": "aadds-subnet"
        },
        "vnetName": {
            "value": "aadds-vnet"
        },
        "vnetAddressPrefixes": {
            "value": [
                "10.1.0.0/24"
            ]
        },
        "subnetAddressPrefix": {
            "value": "10.1.0.0/24"
        },
        "nsgName": {
            "value": "aadds-nsg"
        }
    },
    "resources": [
        {
            "apiVersion": "2017-06-01",
            "type": "Microsoft.AAD/DomainServices",
            "name": "[parameters('domainName')]",
            "location": "[parameters('location')]",
            "dependsOn": [
                "[concat('Microsoft.Network/virtualNetworks/', parameters('vnetName'))]"
            ],
            "properties": {
                "domainName": "[parameters('domainName')]",
                "subnetId": "[concat('/subscriptions/', subscription().subscriptionId, '/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/virtualNetworks/', parameters('vnetName'), '/subnets/', parameters('subnetName'))]",
                "filteredSync": "[parameters('filteredSync')]",
                "domainConfigurationType": "[parameters('domainConfigurationType')]",
                "notificationSettings": "[parameters('notificationSettings')]"
            }
        },
        {
            "type": "Microsoft.Network/NetworkSecurityGroups",
            "name": "[parameters('nsgName')]",
            "location": "[parameters('location')]",
            "properties": {
                "securityRules": [
                    {
                        "name": "AllowSyncWithAzureAD",
                        "properties": {
                            "access": "Allow",
                            "priority": 101,
                            "direction": "Inbound",
                            "protocol": "Tcp",
                            "sourceAddressPrefix": "AzureActiveDirectoryDomainServices",
                            "sourcePortRange": "*",
                            "destinationAddressPrefix": "*",
                            "destinationPortRange": "443"
                        }
                    },
                    {
                        "name": "AllowPSRemoting",
                        "properties": {
                            "access": "Allow",
                            "priority": 301,
                            "direction": "Inbound",
                            "protocol": "Tcp",
                            "sourceAddressPrefix": "AzureActiveDirectoryDomainServices",
                            "sourcePortRange": "*",
                            "destinationAddressPrefix": "*",
                            "destinationPortRange": "5986"
                        }
                    },
                    {
                        "name": "AllowRD",
                        "properties": {
                            "access": "Allow",
                            "priority": 201,
                            "direction": "Inbound",
                            "protocol": "Tcp",
                            "sourceAddressPrefix": "CorpNetSaw",
                            "sourcePortRange": "*",
                            "destinationAddressPrefix": "*",
                            "destinationPortRange": "3389"
                        }
                    }
                ]
            },
            "apiVersion": "2018-04-01"
        },
        {
            "type": "Microsoft.Network/virtualNetworks",
            "name": "[parameters('vnetName')]",
            "location": "[parameters('location')]",
            "apiVersion": "2018-04-01",
            "dependsOn": [
                "[concat('Microsoft.Network/NetworkSecurityGroups/', parameters('nsgName'))]"
            ],
            "properties": {
                "addressSpace": {
                    "addressPrefixes": "[parameters('vnetAddressPrefixes')]"
                },
                "subnets": [
                    {
                        "name": "[parameters('subnetName')]",
                        "properties": {
                            "addressPrefix": "[parameters('subnetAddressPrefix')]",
                            "networkSecurityGroup": {
                                "id": "[concat('/subscriptions/', subscription().subscriptionId, '/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/NetworkSecurityGroups/', parameters('nsgName'))]"
                            }
                        }
                    }
                ]
            }
        }
    ],
    "outputs": {}
}

Deze sjabloon kan worden geïmplementeerd met behulp van uw voorkeursimplementatiemethode, zoals het Microsoft Entra-beheercentrum, Azure PowerShell of een CI/CD-pijplijn. In het volgende voorbeeld wordt de New-AzResourceGroupDeployment-cmdlet gebruikt. Geef de naam van uw eigen resourcegroep en de bestandsnaam van de sjabloon op:

New-AzResourceGroupDeployment -ResourceGroupName "myResourceGroup" -TemplateFile <path-to-template>

Het duurt enkele minuten om de resource te maken en het beheer terug te geven aan de PowerShell-prompt. Het inrichten van het beheerde domein wordt op de achtergrond voortgezet. Het kan een uur duren voordat de implementatie is voltooid. In het Microsoft Entra-beheercentrum toont de pagina Overzicht voor uw beheerde domein de huidige status in deze implementatiefase.

Wanneer in het Microsoft Entra-beheercentrum wordt aangegeven dat het beheerde domein klaar is met inrichten, moeten de volgende taken worden voltooid:

  • Werk de DNS-instellingen voor het virtuele netwerk bij, zodat virtuele machines het beheerde domein kunnen vinden voor domeindeelname of verificatie.
    • Selecteer het beheerde domein in de portal om DNS te configureren. In het venster Overzicht wordt u gevraagd deze DNS-instellingen automatisch te configureren.
  • Schakel wachtwoordsynchronisatie in voor Domain Services , zodat eindgebruikers zich met hun bedrijfsreferenties kunnen aanmelden bij het beheerde domein.

Volgende stappen

Als u het beheerde domein in actie wilt zien, kunt u een Windows-VM koppelen, beveiligde LDAP configureren en wachtwoordhashsynchronisatie configureren.