Sdílet prostřednictvím


Vytvoření spravované domény Služby Microsoft Entra Domain Services pomocí šablony Azure Resource Manageru

Služba Microsoft Entra Domain Services poskytuje spravované doménové služby, jako je připojení k doméně, zásady skupiny, LDAP, ověřování Kerberos/NTLM, které je plně kompatibilní se službou Windows Server Active Directory. Tyto doménové služby využíváte bez nasazení, správy a oprav řadičů domény sami. Domain Services se integruje s vaším stávajícím tenantem Microsoft Entra. Tato integrace umožňuje uživatelům přihlásit se pomocí firemních přihlašovacích údajů a k zabezpečení přístupu k prostředkům můžete použít existující skupiny a uživatelské účty.

V tomto článku se dozvíte, jak vytvořit spravovanou doménu pomocí šablony Azure Resource Manageru. Podpůrné prostředky se vytvářejí pomocí Azure PowerShellu.

Požadavky

K dokončení tohoto článku potřebujete následující zdroje informací:

  • Instalace a konfigurace Azure Powershellu.
  • Nainstalujte a nakonfigurujte MS Graph PowerShell.
  • K povolení služby Domain Services potřebujete role Správce aplikací a skupiny Microsoft Entra ve vašem tenantovi.
  • K vytvoření požadovaných prostředků Domain Services potřebujete roli Přispěvatel služby Domain Services v Azure.

Požadavky na pojmenování DNS

Při vytváření spravované domény Domain Services zadáte název DNS. Při výběru tohoto názvu DNS je potřeba vzít v úvahu některé aspekty:

  • Předdefinovaný název domény: Ve výchozím nastavení se používá předdefinovaný název domény adresáře ( přípona .onmicrosoft.com ). Pokud chcete povolit zabezpečený přístup LDAP ke spravované doméně přes internet, nemůžete vytvořit digitální certifikát pro zabezpečení připojení k této výchozí doméně. Microsoft vlastní doménu .onmicrosoft.com , takže certifikační autorita (CA) nevydá certifikát.
  • Vlastní názvy domén: Nejběžnějším přístupem je zadat vlastní název domény, obvykle takový, který už vlastníte a směrovatelný. Pokud používáte směrovatelnou vlastní doménu, provoz může podle potřeby správně tokovat, aby podporoval vaše aplikace.
  • Přípony nesměrovatelné domény: Obecně doporučujeme vyhnout se nesměrovatelné příponě názvu domény, například contoso.local. Přípona .local není směrovatelná a může způsobovat problémy s překladem DNS.

Tip

Pokud vytvoříte vlastní název domény, zastarejte se o existující obory názvů DNS. Doporučujeme použít název domény oddělený od všech existujících prostorů názvů DNS nebo Azure v místním prostředí.

Pokud máte například existující prostor názvů DNS contoso.com, vytvořte spravovanou doménu s vlastním názvem domény aaddscontoso.com. Pokud potřebujete použít protokol SECURE LDAP, musíte registrovat a vlastnit tento vlastní název domény, aby se vygenerovaly požadované certifikáty.

Možná budete muset vytvořit další záznamy DNS pro jiné služby ve vašem prostředí nebo podmíněné služby pro předávání DNS mezi existujícími názvovými prostory DNS ve vašem prostředí. Pokud například spustíte webový server, který je hostitelem webu pomocí kořenového názvu DNS, můžou existovat konflikty pojmenování, které vyžadují další položky DNS.

V této ukázce a článcích s postupy se vlastní doména aaddscontoso.com používá jako krátký příklad. Ve všech příkazech zadejte vlastní název domény.

Platí také následující omezení názvů DNS:

  • Omezení předpony domény: Spravovanou doménu s předponou delší než 15 znaků nelze vytvořit. Předpona zadaného názvu domény (například aaddscontoso v názvu domény aaddscontoso.com ) musí obsahovat 15 nebo méně znaků.
  • Konflikty názvů sítí: Název domény DNS pro vaši spravovanou doménu by ve virtuální síti ještě neměl existovat. Konkrétně zkontrolujte následující scénáře, které by vedly ke konfliktu názvů.
    • Pokud už máte doménu Active Directory se stejným názvem domény DNS ve virtuální síti Azure.
    • Pokud má virtuální síť, ve které chcete povolit spravovanou doménu, připojení VPN k vaší místní síti. V tomto scénáři se ujistěte, že ve vaší místní síti nemáte doménu se stejným názvem domény DNS.
    • Pokud máte existující cloudovou službu Azure s tímto názvem ve virtuální síti Azure.

Vytvoření požadovaných prostředků Microsoft Entra

Služba Domain Services vyžaduje instanční objekt a skupinu Microsoft Entra. Tyto prostředky umožňují spravované doméně synchronizovat data a definovat, kteří uživatelé mají oprávnění správce ve spravované doméně.

Nejprve pomocí rutiny Register-AzResourceProvider zaregistrujte poskytovatele prostředků služby Microsoft Entra Domain Services:

Register-AzResourceProvider -ProviderNamespace Microsoft.AAD

Vytvořte instanční objekt Microsoft Entra pomocí rutiny New-MgServicePrincipal pro Službu Domain Services ke komunikaci a ověření. Konkrétní ID aplikace se používá s názvem Domain Controller Services s ID 2565bd9d-da50-47d4-8b85-4c97f669dc36 pro Globální Azure. V případě jiných cloudů Azure vyhledejte hodnotu AppId 6ba9a5d4-8456-4118-b521-9c5ca10cdf84.

New-MgServicePrincipal

Teď vytvořte skupinu Microsoft Entra s názvem AAD DC Administrators pomocí rutiny New-MgGroup . Uživatelům přidaným do této skupiny se pak udělí oprávnění k provádění úloh správy ve spravované doméně.

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

Pomocí vytvořené skupiny AAD DC Administrators přidejte uživatele do skupiny pomocí rutiny New-MgGroupMemberByRef. Nejprve pomocí rutiny Get-MgGroup získáte ID objektu skupiny AAD DC Administrators a pak ID objektu požadovaného uživatele pomocí rutiny Get-MgUser.

V následujícím příkladu ID objektu uživatele pro účet s hlavní název uživatele (UPN) admin@contoso.onmicrosoft.com. Nahraďte tento uživatelský účet hlavním názvem uživatele, kterého chcete přidat do skupiny 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

Nakonec vytvořte skupinu prostředků pomocí rutiny New-AzResourceGroup . V následujícím příkladu se skupina prostředků jmenuje myResourceGroup a vytvoří se v oblasti westus . Použijte vlastní název a požadovanou oblast:

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

Pokud zvolíte oblast, která podporuje Zóny dostupnosti, prostředky služby Domain Services se distribuují napříč zónami, aby byla větší redundance. Zóny dostupnosti jsou jedinečná fyzická umístění uvnitř oblasti Azure. Každou zónu tvoří jedno nebo několik datacenter vybavených nezávislým napájením, chlazením a sítí. Kvůli odolnosti ve všech aktivovaných oblastech existují minimálně tři samostatné zóny.

Není nic, co byste nakonfigurovali, aby služba Domain Services byla distribuována napříč zónami. Platforma Azure automaticky zpracovává distribuci zón prostředků. Další informace a zobrazení dostupnosti oblastí najdete v tématu Co jsou Zóny dostupnosti v Azure?.

Definice prostředku pro Domain Services

V rámci definice prostředku Resource Manageru jsou vyžadovány následující parametry konfigurace:

Parametr Hodnota
domainName Název domény DNS pro vaši spravovanou doménu s ohledem na předchozí body názvů předpon a konfliktů.
filteredSync Domain Services umožňuje synchronizovat všechny uživatele a skupiny dostupné v Microsoft Entra ID nebo v omezené synchronizaci pouze konkrétních skupin.

Další informace o vymezené synchronizaci naleznete v tématu Microsoft Entra Domain Services s vymezenou synchronizací.
notificationSettings Pokud ve spravované doméně vygenerují nějaká upozornění, můžou se odesílat e-mailová oznámení.

Pro tato oznámení můžou být povoleni vysoce privilegovaní správci v tenantovi Microsoft Entra ID a členové skupiny AAD DC Administrators.

V případě potřeby můžete k oznámením přidat další příjemce, pokud existují výstrahy vyžadující pozornost.
domainConfigurationType Ve výchozím nastavení se spravovaná doména vytvoří jako doménová struktura uživatele . Tento typ doménové struktury synchronizuje všechny objekty z ID Microsoft Entra, včetně všech uživatelských účtů vytvořených v místním prostředí SLUŽBY AD DS. Pro vytvoření doménové struktury uživatele nemusíte zadávat hodnotu domainConfiguration .

Doménová struktura prostředků synchronizuje pouze uživatele a skupiny vytvořené přímo v ID Microsoft Entra. Nastavte hodnotu na ResourceTrusting a vytvořte tak doménovou strukturu prostředků.

Další informace o doménových strukturách prostředků , včetně důvodů, proč můžete použít jednu doménovou strukturu a jak vytvořit vztahy důvěryhodnosti doménové struktury s místními doménami služby AD DS, najdete v tématu Přehled doménových struktur prostředků služby Domain Services.

Následující definice zhuštěných parametrů ukazuje, jak jsou tyto hodnoty deklarovány. Doménová struktura uživatele s názvem aaddscontoso.com se vytvoří se všemi uživateli z ID Microsoft Entra synchronizované se spravovanou doménou:

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

Následující zhuštěný typ prostředku šablony Resource Manageru se pak použije k definování a vytvoření spravované domény. Virtuální síť a podsíť Azure už musí existovat nebo musí být vytvořeny jako součást šablony Resource Manageru. Spravovaná doména je připojená k této podsíti.

"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')]"
        }
    },
    [...]
]

Tyto parametry a typ prostředku lze použít jako součást širší šablony Resource Manageru k nasazení spravované domény, jak je znázorněno v následující části.

Vytvoření spravované domény pomocí ukázkové šablony

Následující úplná ukázková šablona Resource Manageru vytvoří spravovanou doménu a podpůrná pravidla virtuální sítě, podsítě a skupiny zabezpečení sítě. Pravidla skupiny zabezpečení sítě jsou nutná k zabezpečení spravované domény a zajištění správného toku provozu. Vytvoří se doménová struktura uživatele s názvem DNS aaddscontoso.com se všemi uživateli synchronizovanými z ID Microsoft Entra:

{
    "$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": {}
}

Tuto šablonu můžete nasadit pomocí preferované metody nasazení, jako je centrum pro správu Microsoft Entra, Azure PowerShell nebo kanál CI/CD. Následující příklad používá rutinu New-AzResourceGroupDeployment . Zadejte vlastní název skupiny prostředků a název souboru šablony:

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

Vytvoření prostředku a vrácení ovládacího prvku do příkazového řádku PowerShellu trvá několik minut. Spravovaná doména se bude dál zřizovat na pozadí a dokončení nasazení může trvat až hodinu. V Centru pro správu Microsoft Entra se na stránce Přehled pro vaši spravovanou doménu zobrazuje aktuální stav v celé této fázi nasazení.

Když Centrum pro správu Microsoft Entra ukazuje, že spravovaná doména dokončí zřizování, je potřeba dokončit následující úlohy:

  • Aktualizujte nastavení DNS pro virtuální síť, aby virtuální počítače mohly najít spravovanou doménu pro připojení k doméně nebo ověřování.
    • Pokud chcete nakonfigurovat DNS, vyberte na portálu spravovanou doménu. V okně Přehled se zobrazí výzva k automatické konfiguraci těchto nastavení DNS.
  • Povolte synchronizaci hesel se službou Domain Services , aby se koncoví uživatelé mohli přihlásit ke spravované doméně pomocí firemních přihlašovacích údajů.

Další kroky

Pokud chcete vidět spravovanou doménu v akci, můžete se připojit k virtuálnímu počítači s Windows, nakonfigurovat zabezpečený protokol LDAP a nakonfigurovat synchronizaci hodnot hash hesel.