Aktivera Azure Active Directory Domain Services powershell

Azure Active Directory Domain Services (Azure AD DS) tillhandahåller hanterade domäntjänster som domänkoppling, grupprincip, LDAP- och Kerberos/NTLM-autentisering som är helt kompatibel med Windows Server Active Directory. Du använder dessa domäntjänster utan att distribuera, hantera och korrigera domänkontrollanter själv. Azure AD DS integreras med din befintliga Azure AD-klientorganisation. Med den här integreringen kan användarna logga in med sina företagsautentiseringsuppgifter och du kan använda befintliga grupper och användarkonton för att skydda åtkomsten till resurser.

Den här artikeln visar hur du aktiverar Azure AD DS powershell.

Anteckning

I den här artikeln används Azure Az PowerShell-modulen, som är den rekommenderade PowerShell-modulen för att interagera med Azure. För att komma igång med Az PowerShell kan du läsa artikeln om att installera Azure PowerShell. Information om hur du migrerar till Az PowerShell-modulen finns i artikeln om att migrera Azure PowerShell från AzureRM till Az.

Förutsättningar

För att kunna slutföra den här artikeln behöver du följande resurser:

Skapa nödvändiga Azure AD-resurser

Azure AD DS kräver ett huvudnamn för tjänsten för autentisering och kommunikation och en Azure AD-grupp för att definiera vilka användare som har administratörsbehörighet i den hanterade domänen.

Skapa först ett Azure AD-tjänsthuvudnamn med hjälp av ett specifikt program-ID med namnet Domain Controller Services. I offentliga Azure är ID-värdet 2565bd9d-da50-47d4-8b85-4c97f669dc36. I andra moln är värdet 6ba9a5d4-8456-4118-b521-9c5ca10cdf84. Ändra inte det här program-ID:t.

Skapa ett Huvudnamn för Azure AD-tjänsten med hjälp av cmdleten New-AzureADServicePrincipal:

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

Skapa nu en Azure AD-grupp med namnet AAD DC-administratörer. Användare som läggs till i den här gruppen beviljas sedan behörighet att utföra administrationsuppgifter på den hanterade domänen.

Hämta först gruppobjekt-ID:t för AAD DC-administratörer med hjälp av cmdleten Get-AzureADGroup. Om gruppen inte finns skapar du den med gruppen AAD DC-administratörer med hjälp av cmdleten New-AzureADGroup:

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

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

När gruppen AAD DC-administratörer har skapats hämtar du den önskade användarens objekt-ID med hjälp av cmdleten Get-AzureADUser och lägger sedan till användaren i gruppen med hjälp av cmdleten Add-AzureADGroupMember.

I följande exempel är användarobjektets ID för kontot med UPN:et admin@contoso.onmicrosoft.com . Ersätt det här användarkontot med UPN för den användare som du vill lägga till i gruppen AAD DC-administratörer:

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

# Add the user to the 'AAD DC Administrators' group.
Add-AzureADGroupMember -ObjectId $GroupObjectId.ObjectId -RefObjectId $UserObjectId.ObjectId

Skapa nätverksresurser

Registrera först Azure AD Domain Services resursprovidern med cmdleten Register-AzResourceProvider:

Register-AzResourceProvider -ProviderNamespace Microsoft.AAD

Skapa sedan en resursgrupp med hjälp av cmdleten New-AzResourceGroup. I följande exempel heter resursgruppen myResourceGroup och skapas i regionen westus. Använd ditt eget namn och din önskade region:

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

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

Skapa det virtuella nätverket och undernäten för Azure AD Domain Services. Två undernät skapas – ett för DomainServices och ett för Arbetsbelastningar. Azure AD DS distribueras till det dedikerade DomainServices-undernätet. Distribuera inte andra program eller arbetsbelastningar till det här undernätet. Använd separata arbetsbelastningar eller andra undernät för resten av dina virtuella datorer.

Skapa undernäten med cmdleten New-AzVirtualNetworkSubnetConfig och skapa sedan det virtuella nätverket med hjälp av cmdleten New-AzVirtualNetwork.

$VnetName = "myVnet"

# Create the dedicated subnet for Azure AD 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 Azure AD Domain Services.
$Vnet= New-AzVirtualNetwork `
  -ResourceGroupName $ResourceGroupName `
  -Location westus `
  -Name $VnetName `
  -AddressPrefix 10.0.0.0/16 `
  -Subnet $AaddsSubnet,$WorkloadSubnet

Skapa en nätverkssäkerhetsgrupp

Azure AD DS behöver en nätverkssäkerhetsgrupp för att skydda portarna som behövs för den hanterade domänen och blockera all annan inkommande trafik. En nätverkssäkerhetsgrupp (NSG) innehåller en lista över regler som tillåter eller nekar nätverkstrafik till trafik i ett virtuellt Azure-nätverk. I Azure AD DS fungerar nätverkssäkerhetsgruppen som ett extra skyddslager för att låsa åtkomsten till den hanterade domänen. Information om vilka portar som krävs finns i Nätverkssäkerhetsgrupper och portar som krävs.

Följande PowerShell-cmdlets använder New-AzNetworkSecurityRuleConfig för att skapa reglerna och sedan New-AzNetworkSecurityGroup för att skapa nätverkssäkerhetsgruppen. Nätverkssäkerhetsgruppen och reglerna associeras sedan med det virtuella nätverkets undernät med hjälp av cmdleten Set-AzVirtualNetworkSubnetConfig.

$NSGName = "aaddsNSG"

# 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

Skapa en hanterad domän

Nu ska vi skapa en hanterad domän. Ange id:t för din Azure-prenumeration och ange sedan ett namn för den hanterade domänen, till exempel aaddscontoso.com. Du kan hämta ditt prenumerations-ID med hjälp av cmdleten Get-AzSubscription.

Om du väljer en region som stöder Tillgänglighetszoner distribueras Azure AD DS mellan zoner för ytterligare redundans.

Tillgänglighetszoner är unika fysiska platser inom en Azure-region. Varje zon utgörs av ett eller flera datacenter som är utrustade med oberoende kraft, kylning och nätverk. För att säkerställa återhämtning finns det minst tre separata zoner i alla aktiverade regioner.

Det finns inget du kan konfigurera för att Azure AD DS ska distribueras mellan zoner. Azure-plattformen hanterar automatiskt zondistributionen av resurser. Mer information och information om regionstillgänglighet finns i Vad är Tillgänglighetszoner i Azure?.

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

# Enable Azure AD 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

Det tar några minuter att skapa resursen och återgå till PowerShell-prompten. Den hanterade domänen fortsätter att etableras i bakgrunden och det kan ta upp till en timme att slutföra distributionen. I Azure Portal visar sidan Översikt för din hanterade domän den aktuella statusen i hela det här distributionssteget.

När Azure Portal visar att etableringen av den hanterade domänen har slutförts måste följande uppgifter slutföras:

  • Uppdatera DNS-inställningarna för det virtuella nätverket så att virtuella datorer kan hitta den hanterade domänen för domänkoppling eller autentisering.
    • Om du vill konfigurera DNS väljer du din hanterade domän i portalen. I fönstret Översikt uppmanas du att konfigurera de här DNS-inställningarna automatiskt.
  • Aktivera lösenordssynkronisering Azure AD DS så att slutanvändarna kan logga in på den hanterade domänen med sina företagsuppgifter.

Slutför PowerShell-skript

Följande fullständiga PowerShell-skript kombinerar alla uppgifter som visas i den här artikeln. Kopiera skriptet och spara det i en fil med ett .ps1 tillägg. Kör skriptet i en lokal PowerShell-konsol eller Azure Cloud Shell.

Anteckning

Om du Azure AD DS måste du vara global administratör för Azure AD-klientorganisationen. Du behöver även minst deltagarbehörighet i Azure-prenumerationen.

# 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 = "aaddscontoso.com"

# Connect to your Azure AD directory.
Connect-AzureAD

# Login to your Azure subscription.
Connect-AzAccount

# Create the service principal for Azure AD Domain Services.
New-AzureADServicePrincipal -AppId "2565bd9d-da50-47d4-8b85-4c97f669dc36"

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

# Create the delegated administration group for Azure AD Domain Services if it doesn't already exist.
if (!$GroupObjectId) {
  $GroupObjectId = New-AzureADGroup -DisplayName "AAD DC Administrators" `
    -Description "Delegated group to administer Azure AD 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-AzureADUser `
  -Filter "UserPrincipalName eq '$AaddsAdminUserUpn'" | `
  Select-Object ObjectId

# Add the user to the 'AAD DC Administrators' group.
Add-AzureADGroupMember -ObjectId $GroupObjectId.ObjectId -RefObjectId $UserObjectId.ObjectId

# Register the resource provider for Azure AD 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 AAD 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 Azure AD Domain Services.
$Vnet=New-AzVirtualNetwork `
  -ResourceGroupName $ResourceGroupName `
  -Location $AzureLocation `
  -Name $VnetName `
  -AddressPrefix 10.0.0.0/16 `
  -Subnet $AaddsSubnet,$WorkloadSubnet

$NSGName = "aaddsNSG"

# 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 Azure AD 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

Det tar några minuter att skapa resursen och återgå till PowerShell-prompten. Den hanterade domänen fortsätter att etableras i bakgrunden och det kan ta upp till en timme att slutföra distributionen. I Azure Portal visar sidan Översikt för din hanterade domän den aktuella statusen i hela det här distributionssteget.

När Azure Portal visar att etableringen av den hanterade domänen har slutförts måste följande uppgifter slutföras:

  • Uppdatera DNS-inställningarna för det virtuella nätverket så att virtuella datorer kan hitta den hanterade domänen för domänkoppling eller autentisering.
    • Om du vill konfigurera DNS väljer du din hanterade domän i portalen. I fönstret Översikt uppmanas du att konfigurera dessa DNS-inställningar automatiskt.
  • Aktivera lösenordssynkronisering Azure AD DS så att slutanvändarna kan logga in på den hanterade domänen med sina företagsuppgifter.

Nästa steg

Om du vill se den hanterade domänen i praktiken kan du ansluta till en virtuell Windows-dator,konfigurera säkert LDAPoch konfigurera synkronisering av lösenordshashar.