A Microsoft Entra Domain Services engedélyezése a PowerShell használatával

A Microsoft Entra Domain Services olyan felügyelt tartományi szolgáltatásokat biztosít, mint a tartományhoz való csatlakozás, a csoportházirend, az LDAP, a Kerberos/NTLM-hitelesítés, amely teljes mértékben kompatibilis a Windows Server Active Directoryval. Ezeket a tartományi szolgáltatásokat a tartományvezérlők üzembe helyezése, kezelése és javítása nélkül használhatja. A Domain Services integrálható a meglévő Microsoft Entra-bérlővel. Ez az integráció lehetővé teszi, hogy a felhasználók vállalati hitelesítő adataikkal jelentkezzenek be, és a meglévő csoportokkal és felhasználói fiókokkal biztonságossá teheti az erőforrásokhoz való hozzáférést.

Ez a cikk bemutatja, hogyan engedélyezheti a Tartományi szolgáltatásokat a PowerShell használatával.

Feljegyzés

Javasoljuk, hogy az Azure Az PowerShell modult használja az Azure-ral való interakcióhoz. Az első lépésekhez tekintse meg az Azure PowerShell telepítését ismertető szakaszt. Az Az PowerShell-modulra történő migrálás részleteiről lásd: Az Azure PowerShell migrálása az AzureRM modulból az Az modulba.

Előfeltételek

A cikk elvégzéséhez a következő erőforrásokra van szüksége:

  • Az Azure PowerShell telepítése és konfigurálása.

  • Telepítse és konfigurálja az MS Graph PowerShellt.

  • A Tartományi szolgáltatások engedélyezéséhez globális rendszergazdai jogosultságokra van szüksége a Microsoft Entra-bérlőben.

  • A szükséges Domain Services-erőforrások létrehozásához közreműködői jogosultságokra van szüksége az Azure-előfizetésben.

    Fontos

    Bár az Az.ADDomainServices PowerShell-modul előzetes verzióban érhető el, a parancsmag használatával Install-Module külön kell telepítenie.

    Install-Module -Name Az.ADDomainServices
    

Szükséges Microsoft Entra-erőforrások létrehozása

A Domain Services használatához egy szolgáltatásnévre van szükség a hitelesítéshez és a kommunikációhoz, valamint egy Microsoft Entra-csoportra annak meghatározásához, hogy mely felhasználók rendelkeznek rendszergazdai engedélyekkel a felügyelt tartományban.

Először hozzon létre egy Microsoft Entra-szolgáltatásnevet egy Tartományvezérlő-szolgáltatások nevű alkalmazásazonosító használatával. Az azonosító értéke 2565bd9d-da50-47d4-8b85-4c97f669dc36 globális Azure- és 6ba9a5d4-8456-4118-b521-9c5ca10cdf84 más Azure-felhők esetében. Ne módosítsa ezt az alkalmazásazonosítót.

Hozzon létre egy Microsoft Entra-szolgáltatásnevet a New-MgServicePrincipal parancsmaggal:

New-MgServicePrincipal -AppId "2565bd9d-da50-47d4-8b85-4c97f669dc36"

Most hozzon létre egy Microsoft Entra-csoportot AAD DC Rendszergazda istrators néven. A csoporthoz felvett felhasználók ezután engedélyt kapnak a felügyelt tartomány felügyeleti feladatainak elvégzésére.

Először kérje le az AAD DC Rendszergazda istrators csoportobjektum-azonosítóját a Get-MgGroup parancsmaggal. Ha a csoport nem létezik, hozza létre az AAD DC Rendszergazda istrators csoporttal a New-MgGroup parancsmag használatával:

# First, retrieve the object ID of the 'AAD DC Administrators' group.
$GroupObject = Get-MgGroup `
  -Filter "DisplayName eq 'AAD DC Administrators'"

# If the group doesn't exist, create it
if (!$GroupObject) {
  $GroupObject = New-MgGroup -DisplayName "AAD DC Administrators" `
    -Description "Delegated group to administer Microsoft Entra Domain Services" `
    -SecurityEnabled:$true `
    -MailEnabled:$false `
    -MailNickName "AADDCAdministrators"
  } else {
  Write-Output "Admin group already exists."
}

Az AAD DC Rendszergazda istrators csoport létrehozásával kérje le a kívánt felhasználó objektumazonosítóját a Get-MgUser parancsmaggal, majd adja hozzá a felhasználót a csoporthoz a New-MgGroupMember parancsmaggal.

Az alábbi példában a fiók felhasználói objektumazonosítója admin@contoso.onmicrosoft.coma következő egyszerű felhasználónévvel: . Cserélje le ezt a felhasználói fiókot az AAD DC Rendszergazda istrators csoporthoz hozzáadni kívánt felhasználó UPN-jével:

# 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 $GroupObject.Id -DirectoryObjectId $UserObjectId.Id

Hálózati erőforrások létrehozása

Először regisztrálja a Microsoft Entra Domain Services erőforrás-szolgáltatót a Register-AzResourceProvider parancsmaggal:

Register-AzResourceProvider -ProviderNamespace Microsoft.AAD

Ezután hozzon létre egy erőforráscsoportot a New-AzResourceGroup parancsmaggal. Az alábbi példában az erőforráscsoport neve myResourceGroup , és a westus régióban jön létre. Használja a saját nevét és a kívánt régiót:

$ResourceGroupName = "myResourceGroup"
$AzureLocation = "westus"

# Create the resource group.
New-AzResourceGroup `
  -Name $ResourceGroupName `
  -Location $AzureLocation

Hozza létre a Microsoft Entra Domain Services virtuális hálózatát és alhálózatait. Két alhálózat jön létre – egyet a DomainServiceshez, egyet pedig a számítási feladatokhoz. A tartományi szolgáltatások a dedikált DomainServices alhálózatban lesznek üzembe helyezve. Ne helyezzen üzembe más alkalmazásokat vagy számítási feladatokat ebben az alhálózatban. A többi virtuális géphez használja a különálló számítási feladatokat vagy egyéb alhálózatokat.

Hozza létre az alhálózatokat a New-AzVirtualNetworkSubnetConfig parancsmaggal, majd hozza létre a virtuális hálózatot a New-AzVirtualNetwork parancsmaggal.

$VnetName = "myVnet"

# Create the dedicated subnet for Microsoft Entra Domain Services.
$SubnetName = "DomainServices"
$AaddsSubnet = New-AzVirtualNetworkSubnetConfig `
  -Name $SubnetName `
  -AddressPrefix 10.0.0.0/24

# Create an additional subnet for your own VM workloads
$WorkloadSubnet = New-AzVirtualNetworkSubnetConfig `
  -Name Workloads `
  -AddressPrefix 10.0.1.0/24

# Create the virtual network in which you will enable Microsoft Entra Domain Services.
$Vnet= New-AzVirtualNetwork `
  -ResourceGroupName $ResourceGroupName `
  -Location westus `
  -Name $VnetName `
  -AddressPrefix 10.0.0.0/16 `
  -Subnet $AaddsSubnet,$WorkloadSubnet

Hálózati biztonsági csoport létrehozása

A Domain Servicesnek hálózati biztonsági csoportra van szüksége a felügyelt tartományhoz szükséges portok védelméhez és az összes többi bejövő forgalom letiltásához. A hálózati biztonsági csoport (NSG) azon szabályok listáját tartalmazza, amelyek engedélyezik vagy letiltják az Azure-beli virtuális hálózatok forgalmának hálózati forgalmát. A Domain Servicesben a hálózati biztonsági csoport további védelmi rétegként működik a felügyelt tartományhoz való hozzáférés zárolásához. A szükséges portok megtekintéséhez tekintse meg a hálózati biztonsági csoportokat és a szükséges portokat.

A következő PowerShell-parancsmagok a New-AzNetworkSecurityRuleConfig használatával hozzák létre a szabályokat, majd a New-AzNetworkSecurityGroup parancsmagot a hálózati biztonsági csoport létrehozásához. A rendszer ezután a Set-AzVirtualNetworkSubnetConfig parancsmaggal társítja a hálózati biztonsági csoportot és a szabályokat a virtuális hálózati alhálózathoz.

$NSGName = "dsNSG"

# Create a rule to allow inbound TCP port 3389 traffic from Microsoft secure access workstations for troubleshooting
$nsg201 = New-AzNetworkSecurityRuleConfig -Name AllowRD `
    -Access Allow `
    -Protocol Tcp `
    -Direction Inbound `
    -Priority 201 `
    -SourceAddressPrefix CorpNetSaw `
    -SourcePortRange * `
    -DestinationAddressPrefix * `
    -DestinationPortRange 3389

# Create a rule to allow TCP port 5986 traffic for PowerShell remote management
$nsg301 = New-AzNetworkSecurityRuleConfig -Name AllowPSRemoting `
    -Access Allow `
    -Protocol Tcp `
    -Direction Inbound `
    -Priority 301 `
    -SourceAddressPrefix AzureActiveDirectoryDomainServices `
    -SourcePortRange * `
    -DestinationAddressPrefix * `
    -DestinationPortRange 5986

# Create the network security group and rules
$nsg = New-AzNetworkSecurityGroup -Name $NSGName `
    -ResourceGroupName $ResourceGroupName `
    -Location $AzureLocation `
    -SecurityRules $nsg201,$nsg301

# Get the existing virtual network resource objects and information
$vnet = Get-AzVirtualNetwork -Name $VnetName -ResourceGroupName $ResourceGroupName
$subnet = Get-AzVirtualNetworkSubnetConfig -VirtualNetwork $vnet -Name $SubnetName
$addressPrefix = $subnet.AddressPrefix

# Associate the network security group with the virtual network subnet
Set-AzVirtualNetworkSubnetConfig -Name $SubnetName `
    -VirtualNetwork $vnet `
    -AddressPrefix $addressPrefix `
    -NetworkSecurityGroup $nsg
$vnet | Set-AzVirtualNetwork

Felügyelt tartomány létrehozása

Most hozzunk létre egy felügyelt tartományt. Állítsa be az Azure-előfizetés azonosítóját, majd adja meg a felügyelt tartomány nevét, például dscontoso.com. Az előfizetés azonosítóját a Get-AzSubscription parancsmaggal szerezheti be.

Ha olyan régiót választ, amely támogatja a rendelkezésre állási zónákat, a tartományi szolgáltatások erőforrásai a redundancia zónái között lesznek elosztva.

A rendelkezésreállási zónák fizikailag elkülönített helyek egy Azure-régión belül. Minden rendelkezésreállási zóna egy vagy több, független áramforrással, hűtéssel és hálózatkezelési megoldással ellátott adatközpontból áll. A rugalmasság biztosítása érdekében minden engedélyezett régióban legalább három elkülönített zóna található.

Nincs mit konfigurálnia a Domain Services zónák közötti elosztásához. Az Azure-platform automatikusan kezeli az erőforrások zónaeloszlását. További információkért és a régiók elérhetőségének megtekintéséhez tekintse meg az Azure rendelkezésre állási zónáinak ismertetése című témakört.

$AzureSubscriptionId = "YOUR_AZURE_SUBSCRIPTION_ID"
$ManagedDomainName = "dscontoso.com"

# Enable Microsoft Entra Domain Services for the directory.
$replicaSetParams = @{
  Location = $AzureLocation
  SubnetId = "/subscriptions/$AzureSubscriptionId/resourceGroups/$ResourceGroupName/providers/Microsoft.Network/virtualNetworks/$VnetName/subnets/DomainServices"
}
$replicaSet = New-AzADDomainServiceReplicaSetObject @replicaSetParams

$domainServiceParams = @{
  Name = $ManagedDomainName
  ResourceGroupName = $ResourceGroupName
  DomainName = $ManagedDomainName
  ReplicaSet = $replicaSet
}
New-AzADDomainService @domainServiceParams

Az erőforrás létrehozása és az irányítás powerShell-parancssorba való visszajuttatása néhány percet vesz igénybe. A felügyelt tartomány továbbra is ki van építve a háttérben, és akár egy órát is igénybe vehet az üzembe helyezés befejezéséhez. A Microsoft Entra Felügyeleti központban a felügyelt tartomány Áttekintés lapján az üzemelő példány aktuális állapota látható.

Amikor a Microsoft Entra felügyeleti központ azt mutatja, hogy a felügyelt tartomány kiépítése befejeződött, a következő feladatokat kell elvégezni:

  • Frissítse a virtuális hálózat DNS-beállításait, hogy a virtuális gépek megtalálják a tartományhoz való csatlakozáshoz vagy hitelesítéshez használt felügyelt tartományt.
    • A DNS konfigurálásához válassza ki a felügyelt tartományt a portálon. Az Áttekintés ablakban a rendszer kéri, hogy automatikusan konfigurálja ezeket a DNS-beállításokat.
  • Engedélyezze a jelszó-szinkronizálást a Domain Services szolgáltatásba, hogy a végfelhasználók a vállalati hitelesítő adataikkal jelentkezzenek be a felügyelt tartományba.

PowerShell-szkript befejezése

Az alábbi teljes PowerShell-szkript egyesíti a cikkben bemutatott összes feladatot. Másolja ki a szkriptet, és mentse egy kiterjesztésű .ps1 fájlba. Az Azure Global esetében használja a 2565bd9d-da50-47d4-8b85-4c97f669dc36 appId értéket. Más Azure-felhők esetén használja a 6ba9a5d4-8456-4118-b521-9c5ca10cdf84 appId értéket. Futtassa a szkriptet egy helyi PowerShell-konzolon vagy az Azure Cloud Shellben.

Feljegyzés

A Domain Services engedélyezéséhez globális rendszergazdának kell lennie a Microsoft Entra-bérlőhöz. Legalább közreműködői jogosultságokra is szüksége van az Azure-előfizetésben.

# Change the following values to match your deployment.
$AaddsAdminUserUpn = "admin@contoso.onmicrosoft.com"
$ResourceGroupName = "myResourceGroup"
$VnetName = "myVnet"
$AzureLocation = "westus"
$AzureSubscriptionId = "YOUR_AZURE_SUBSCRIPTION_ID"
$ManagedDomainName = "dscontoso.com"

# Connect to your Microsoft Entra directory.
Connect-MgGraph -Scopes "Application.ReadWrite.All","Directory.ReadWrite.All"

# Login to your Azure subscription.
Connect-AzAccount

# Create the service principal for Microsoft Entra Domain Services.
New-MgServicePrincipal -AppId "2565bd9d-da50-47d4-8b85-4c97f669dc36"

# First, retrieve the object of the 'AAD DC Administrators' group.
$GroupObject = Get-MgGroup `
  -Filter "DisplayName eq 'AAD DC Administrators'"

# Create the delegated administration group for Microsoft Entra Domain Services if it doesn't already exist.
if (!$GroupObject) {
  $GroupObject = New-MgGroup -DisplayName "AAD DC Administrators" `
    -Description "Delegated group to administer Microsoft Entra Domain Services" `
    -SecurityEnabled:$true `
    -MailEnabled:$false `
    -MailNickName "AADDCAdministrators"
  } else {
  Write-Output "Admin group already exists."
}

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

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

# Register the resource provider for Microsoft Entra Domain Services with Resource Manager.
Register-AzResourceProvider -ProviderNamespace Microsoft.AAD

# Create the resource group.
New-AzResourceGroup `
  -Name $ResourceGroupName `
  -Location $AzureLocation

# Create the dedicated subnet for Microsoft Entra Domain Services.
$SubnetName = "DomainServices"
$AaddsSubnet = New-AzVirtualNetworkSubnetConfig `
  -Name DomainServices `
  -AddressPrefix 10.0.0.0/24

$WorkloadSubnet = New-AzVirtualNetworkSubnetConfig `
  -Name Workloads `
  -AddressPrefix 10.0.1.0/24

# Create the virtual network in which you will enable Microsoft Entra Domain Services.
$Vnet=New-AzVirtualNetwork `
  -ResourceGroupName $ResourceGroupName `
  -Location $AzureLocation `
  -Name $VnetName `
  -AddressPrefix 10.0.0.0/16 `
  -Subnet $AaddsSubnet,$WorkloadSubnet

$NSGName = "dsNSG"

# Create a rule to allow inbound TCP port 3389 traffic from Microsoft secure access workstations for troubleshooting
$nsg201 = New-AzNetworkSecurityRuleConfig -Name AllowRD `
    -Access Allow `
    -Protocol Tcp `
    -Direction Inbound `
    -Priority 201 `
    -SourceAddressPrefix CorpNetSaw `
    -SourcePortRange * `
    -DestinationAddressPrefix * `
    -DestinationPortRange 3389

# Create a rule to allow TCP port 5986 traffic for PowerShell remote management
$nsg301 = New-AzNetworkSecurityRuleConfig -Name AllowPSRemoting `
    -Access Allow `
    -Protocol Tcp `
    -Direction Inbound `
    -Priority 301 `
    -SourceAddressPrefix AzureActiveDirectoryDomainServices `
    -SourcePortRange * `
    -DestinationAddressPrefix * `
    -DestinationPortRange 5986

# Create the network security group and rules
$nsg = New-AzNetworkSecurityGroup -Name $NSGName `
    -ResourceGroupName $ResourceGroupName `
    -Location $AzureLocation `
    -SecurityRules $nsg201,$nsg301

# Get the existing virtual network resource objects and information
$vnet = Get-AzVirtualNetwork -Name $VnetName -ResourceGroupName $ResourceGroupName
$subnet = Get-AzVirtualNetworkSubnetConfig -VirtualNetwork $vnet -Name $SubnetName
$addressPrefix = $subnet.AddressPrefix

# Associate the network security group with the virtual network subnet
Set-AzVirtualNetworkSubnetConfig -Name $SubnetName `
    -VirtualNetwork $vnet `
    -AddressPrefix $addressPrefix `
    -NetworkSecurityGroup $nsg
$vnet | Set-AzVirtualNetwork

# Enable Microsoft Entra Domain Services for the directory.
$replicaSetParams = @{
  Location = $AzureLocation
  SubnetId = "/subscriptions/$AzureSubscriptionId/resourceGroups/$ResourceGroupName/providers/Microsoft.Network/virtualNetworks/$VnetName/subnets/DomainServices"
}
$replicaSet = New-AzADDomainServiceReplicaSet @replicaSetParams

$domainServiceParams = @{
  Name = $ManagedDomainName
  ResourceGroupName = $ResourceGroupName
  DomainName = $ManagedDomainName
  ReplicaSet = $replicaSet
}
New-AzADDomainService @domainServiceParams

Az erőforrás létrehozása és az irányítás powerShell-parancssorba való visszajuttatása néhány percet vesz igénybe. A felügyelt tartomány továbbra is ki van építve a háttérben, és akár egy órát is igénybe vehet az üzembe helyezés befejezéséhez. A Microsoft Entra Felügyeleti központban a felügyelt tartomány Áttekintés lapján az üzemelő példány aktuális állapota látható.

Amikor a Microsoft Entra felügyeleti központ azt mutatja, hogy a felügyelt tartomány kiépítése befejeződött, a következő feladatokat kell elvégezni:

  • Frissítse a virtuális hálózat DNS-beállításait, hogy a virtuális gépek megtalálják a tartományhoz való csatlakozáshoz vagy hitelesítéshez használt felügyelt tartományt.
    • A DNS konfigurálásához válassza ki a felügyelt tartományt a portálon. Az Áttekintés ablakban a rendszer kéri, hogy automatikusan konfigurálja ezeket a DNS-beállításokat.
  • Engedélyezze a jelszó-szinkronizálást a Domain Services szolgáltatásba, hogy a végfelhasználók a vállalati hitelesítő adataikkal jelentkezzenek be a felügyelt tartományba.

Következő lépések

Ha működés közben szeretné látni a felügyelt tartományt, csatlakoztathat tartományt egy Windows rendszerű virtuális géphez, konfigurálhatja a biztonságos LDAP-t, és konfigurálhatja a jelszókivonat-szinkronizálást.