Konfigurera Microsoft Entra-hybridanslutning manuellt

Om du kan använda Microsoft Entra Anslut kan du läsa vägledningen i Konfigurera Microsoft Entra-hybridanslutning. Med hjälp av automatiseringen i Microsoft Entra Anslut förenklar konfigurationen av Microsoft Entra-hybridanslutning avsevärt.

Den här artikeln beskriver den manuella konfigurationen av krav för Microsoft Entra-hybridkoppling, inklusive steg för hanterade och federerade domäner.

Förutsättningar

  • Microsoft Entra Anslut
    • Om du vill att synkroniseringsanslutningen för enhetsregistrering ska lyckas ska du som en del av enhetsregistreringskonfigurationen inte utesluta standardattributen för enheter från din Microsoft Entra-Anslut Sync-konfiguration. Mer information om standardenhetsattribut som synkroniserats med Microsoft Entra-ID finns i Attribut som synkroniseras av Microsoft Entra Anslut.
    • Om datorobjekten för de enheter som du vill vara Microsoft Entra-hybridanslutna tillhör specifika organisationsenheter (OUs) konfigurerar du rätt organisationsenheter som ska synkroniseras i Microsoft Entra Anslut. Mer information om hur du synkroniserar datorobjekt med hjälp av Microsoft Entra Anslut finns i Organisationsenhetsbaserad filtrering.
  • Företagsadministratörsautentiseringsuppgifter för var och en av skogarna i lokal Active Directory Domain Services.
  • (För federerade domäner) Windows Server med Active Directory Federation Services (AD FS) installerat.
  • Användare kan registrera sina enheter med Microsoft Entra-ID. Mer information om den här inställningen finns under rubriken Konfigurera enhetsinställningar i artikeln Konfigurera enhetsinställningar.

Hybrid Microsoft Entra-anslutning kräver att enheterna har åtkomst till följande Microsoft-resurser i organisationens nätverk:

  • https://enterpriseregistration.windows.net
  • https://login.microsoftonline.com
  • https://device.login.microsoftonline.com
  • https://autologon.microsoftazuread-sso.com (Om du använder eller planerar att använda enkel inloggning)
  • Organisationens säkerhetstokentjänst (STS) (för federerade domäner)

Varning

Om din organisation använder proxyservrar som fångar upp SSL-trafik för scenarier som dataförlustskydd eller Microsoft Entra-klientbegränsningar kontrollerar du att trafik till dessa URL:er undantas från TLS-avbrott och inspektion. Om du inte utesluter dessa URL:er kan det orsaka störningar i klientcertifikatautentiseringen, orsaka problem med enhetsregistrering och enhetsbaserad villkorlig åtkomst.

Om din organisation kräver åtkomst till Internet via en utgående proxy kan du använda WPAD (Web Proxy Auto-Discovery) för att aktivera Windows 10- eller nyare datorer för enhetsregistrering med Microsoft Entra-ID. Information om hur du åtgärdar problem med att konfigurera och hantera WPAD finns i Felsöka automatisk identifiering.

Om du inte använder WPAD kan du konfigurera WinHTTP-proxyinställningar på datorn från och med Windows 10 1709. Mer information finns i WinHTTP Proxy Inställningar distribueras av grupprincipobjekt (GPO).

Kommentar

Om du konfigurerar proxyinställningar på datorn med hjälp av WinHTTP-inställningar kommer alla datorer som inte kan ansluta till den konfigurerade proxyn inte att ansluta till Internet.

Om din organisation kräver åtkomst till Internet via en autentiserad utgående proxy kontrollerar du att dina Windows 10- eller nyare datorer kan autentiseras till den utgående proxyn. Eftersom Windows 10- eller nyare datorer kör enhetsregistrering med hjälp av datorkontext konfigurerar du utgående proxyautentisering med hjälp av datorkontext. Kontrollera konfigurationskraven med leverantören av den utgående proxyn.

Kontrollera att enheter kan komma åt nödvändiga Microsoft-resurser under systemkontot med hjälp av skriptet Testa enhetsregistrering Anslut ivity.

Konfiguration

Du kan konfigurera Microsoft Entra Hybrid-anslutna enheter för olika typer av Windows-enhetsplattformar.

När de här konfigurationerna har slutförts följer du vägledningen för att verifiera registreringen.

Konfigurera en tjänstanslutningspunkt

Dina enheter använder ett SCP-objekt (Service Connection Point) under registreringen för att identifiera Microsoft Entra-klientinformation. I din lokal Active Directory-instans måste SCP-objektet för Microsoft Entra Hybrid-anslutna enheter finnas i kontextpartitionen för konfigurationsnamngivning i datorns skog. Det finns bara en konfigurationsnamngivningskontext per skog. I en Active Directory-konfiguration med flera skogar måste tjänstanslutningspunkten finnas i alla skogar som innehåller domänanslutna datorer.

SCP-objektet innehåller två nyckelordsvärden – azureADid:<TenantID> och azureADName:<verified domain>. Värdet <verified domain> i nyckelordet azureADName avgör typen av enhetsregistreringsflöde (federerat eller hanterat) som enheten följer efter att ha läst SCP-värdet från din lokal Active Directory-instans. Mer information om hanterade och federerade flöden finns i artikeln Hur Enhetsregistrering i Microsoft Entra fungerar.

Du kan använda cmdleten Get-ADRootDSE för att hämta skogens kontext för konfigurationsnamngivning.

För en skog med Active Directory-domännamnet fabrikam.com, är kontexten för konfigurationsnamngivning:

CN=Configuration,DC=fabrikam,DC=com

I skogen finns SCP-objektet för automatisk registrering av domänanslutna enheter på:

CN=62a0ff2e-97b9-4513-943f-0d221bd30080,CN=Device Registration Configuration,CN=Services,[Your Configuration Naming Context]

Beroende på hur du distribuerar Microsoft Entra Anslut kanske SCP-objektet redan har konfigurerats. Du kan kontrollera att objektet finns och hämta identifieringsvärdena med hjälp av följande PowerShell-skript:

$scp = New-Object System.DirectoryServices.DirectoryEntry;

$scp.Path = "LDAP://CN=62a0ff2e-97b9-4513-943f-0d221bd30080,CN=Device Registration Configuration,CN=Services,CN=Configuration,DC=fabrikam,DC=com";

$scp.Keywords;

$scp . Nyckelordsutdata visar information om Microsoft Entra-klientorganisationen. Här är ett exempel:

azureADName:microsoft.com
azureADId:72f988bf-86f1-41af-91ab-2d7cd011db47

Konfigurera utfärdande av anspråk

I en federerad Microsoft Entra-konfiguration förlitar sig enheterna på AD FS eller en lokal federationstjänst från en Microsoft-partner för att autentisera till Microsoft Entra-ID. Enheter autentiserar för att hämta en åtkomsttoken för registrering mot Microsoft Entra Device Registration Service (Azure DRS).

Windows aktuella enheter autentiseras med hjälp av integrerad Windows-autentisering till en aktiv WS-Trust-slutpunkt (antingen 1.3 eller 2005 versioner) som hanteras av den lokala federationstjänsten.

När du använder AD FS måste du aktivera följande WS-Trust-slutpunkter:

  • /adfs/services/trust/2005/windowstransport
  • /adfs/services/trust/13/windowstransport
  • /adfs/services/trust/2005/usernamemixed
  • /adfs/services/trust/13/usernamemixed
  • /adfs/services/trust/2005/certificatemixed
  • /adfs/services/trust/13/certificatemixed

Varning

Både adfs/services/trust/2005/windowstransport och adfs/services/trust/13/windowstransport ska endast aktiveras som intranätuppkopplade slutpunkter och får INTE exponeras som extranätsinriktade slutpunkter via Programproxy. Mer information om hur du inaktiverar Windows-slutpunkter för WS-Trust finns i Inaktivera Windows-slutpunkter för WS-Trust på proxyn. Du kan se vilka slutpunkter som är aktiverade via AD FS-hanteringskonsolen under Tjänst>Slutpunkter.

Kommentar

Om du inte har AD FS som din lokala federationstjänst följer du anvisningarna från leverantören för att se till att de stöder WS-Trust 1.3- eller 2005-slutpunkter och att dessa publiceras via Metadata Exchange-filen (MEX).

För att enhetsregistrering ska kunna slutföras måste följande anspråk finnas i den token som tas emot av Azure DRS. Azure DRS skapar ett enhetsobjekt i Microsoft Entra-ID med viss information. Microsoft Entra Anslut använder sedan den här informationen för att associera det nyligen skapade enhetsobjektet med datorkontot lokalt.

  • http://schemas.microsoft.com/ws/2012/01/accounttype
  • http://schemas.microsoft.com/identity/claims/onpremobjectguid
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/primarysid

Om du behöver fler än ett verifierat domännamn måste du ange följande anspråk för datorer:

  • http://schemas.microsoft.com/ws/2008/06/identity/claims/issuerid

Om du redan utfärdar ett ImmutableID-anspråk (till exempel med ett mS-DS-ConsistencyGuid annat attribut som källvärde för ImmutableID) måste du ange ett motsvarande anspråk för datorer:

  • http://schemas.microsoft.com/LiveID/Federation/2008/05/ImmutableID

I följande avsnitt hittar du information om:

  • De värden som varje anspråk ska ha.
  • Hur en definition skulle se ut i AD FS.

Definitionen hjälper dig att verifiera om värdena finns eller om du behöver skapa dem.

Kommentar

Om du inte använder AD FS för din lokala federationsserver följer du leverantörens instruktioner för att skapa lämplig konfiguration för att utfärda dessa anspråk.

Utfärda kontotypsanspråk

Anspråket http://schemas.microsoft.com/ws/2012/01/accounttype måste innehålla värdet DJ, som identifierar enheten som en domänansluten dator. I AD FS kan du lägga till en utfärdanderegel för transformering som ser ut så här:

@RuleName = "Issue account type for domain-joined computers"
c:[
   Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid",
   Value =~ "-515$",
   Issuer =~ "^(AD AUTHORITY|SELF AUTHORITY|LOCAL AUTHORITY)$"
]
=> issue(
   Type = "http://schemas.microsoft.com/ws/2012/01/accounttype",
   Value = "DJ"
);

Utfärda objectGUID för datorkontot lokalt

Anspråket http://schemas.microsoft.com/identity/claims/onpremobjectguid måste innehålla värdet objectGUID på det lokala datorkontot. I AD FS kan du lägga till en utfärdanderegel för transformering som ser ut så här:

@RuleName = "Issue object GUID for domain-joined computers"
c1:[
   Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid",
   Value =~ "-515$", 
   Issuer =~ "^(AD AUTHORITY|SELF AUTHORITY|LOCAL AUTHORITY)$"
]
&&
c2:[
   Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname",
   Issuer =~ "^(AD AUTHORITY|SELF AUTHORITY|LOCAL AUTHORITY)$"
]
=> issue(
   store = "Active Directory",
   types = ("http://schemas.microsoft.com/identity/claims/onpremobjectguid"),
   query = ";objectguid;{0}",
   param = c2.Value
);

Utfärda objectSid för datorkontot lokalt

Anspråket http://schemas.microsoft.com/ws/2008/06/identity/claims/primarysid måste innehålla värdet objectSid på det lokala datorkontot. I AD FS kan du lägga till en utfärdanderegel för transformering som ser ut så här:

@RuleName = "Issue objectSID for domain-joined computers"
c1:[
   Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid",
   Value =~ "-515$",
   Issuer =~ "^(AD AUTHORITY|SELF AUTHORITY|LOCAL AUTHORITY)$"
]
&&
c2:[
   Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/primarysid",
   Issuer =~ "^(AD AUTHORITY|SELF AUTHORITY|LOCAL AUTHORITY)$"
]
=> issue(claim = c2);

Utfärda issuerID för datorn när flera verifierade domännamn finns i Microsoft Entra-ID

Anspråket http://schemas.microsoft.com/ws/2008/06/identity/claims/issuerid måste innehålla URI (Uniform Resource Identifier) för något av de verifierade domännamnen som ansluts med den lokala federationstjänst (AD FS eller partner) som utfärdar token. I AD FS kan du lägga till utfärdande av transformeringsregler som ser ut som de följande i den specifika ordningen efter de föregående. En regel för att uttryckligen utfärda regeln för användare är nödvändig. I följande regler läggs det till en första regel som identifierar användaren mot datorautentisering.

@RuleName = "Issue account type with the value User when its not a computer"
NOT EXISTS(
[
   Type == "http://schemas.microsoft.com/ws/2012/01/accounttype",
   Value == "DJ"
]
)
=> add(
   Type = "http://schemas.microsoft.com/ws/2012/01/accounttype",
   Value = "User"
);

@RuleName = "Capture UPN when AccountType is User and issue the IssuerID"
c1:[
   Type == "http://schemas.xmlsoap.org/claims/UPN"
]
&&
c2:[
   Type == "http://schemas.microsoft.com/ws/2012/01/accounttype",
   Value == "User"
]
=> issue(
   Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/issuerid",
   Value = regexreplace(
   c1.Value,
   ".+@(?<domain>.+)",
   "http://${domain}/adfs/services/trust/"
   )
);

@RuleName = "Issue issuerID for domain-joined computers"
c:[
   Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid",
   Value =~ "-515$",
   Issuer =~ "^(AD AUTHORITY|SELF AUTHORITY|LOCAL AUTHORITY)$"
]
=> issue(
   Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/issuerid",
   Value = "http://<verified-domain-name>/adfs/services/trust/"
);

I föregående anspråk är <verified-domain-name> en platshållare. Ersätt det med ett av dina verifierade domännamn i Microsoft Entra-ID. Använd till exempel Value = "http://contoso.com/adfs/services/trust/".

Mer information om verifierade domännamn finns i Lägga till ett anpassat domännamn i Microsoft Entra-ID.

Om du vill hämta en lista över dina verifierade företagsdomäner kan du använda cmdleten Get-MgDomain .

Lista över företagsdomäner

Problem med OföränderligtID för datorn när det finns ett för användare (till exempel med mS-DS-ConsistencyGuid som källa för ImmutableID)

Anspråket http://schemas.microsoft.com/LiveID/Federation/2008/05/ImmutableID måste innehålla ett giltigt värde för datorer. I AD FS kan du skapa en utfärdanderegel för transformering enligt följande:

@RuleName = "Issue ImmutableID for computers"
c1:[
   Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid",
   Value =~ "-515$",
   Issuer =~ "^(AD AUTHORITY|SELF AUTHORITY|LOCAL AUTHORITY)$"
]
&&
c2:[
   Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname",
   Issuer =~ "^(AD AUTHORITY|SELF AUTHORITY|LOCAL AUTHORITY)$"
]
=> issue(
   store = "Active Directory",
   types = ("http://schemas.microsoft.com/LiveID/Federation/2008/05/ImmutableID"),
   query = ";objectguid;{0}",
   param = c2.Value
);

Hjälpskript för att skapa utfärdande av transformeringsregler för AD FS

Med följande skript kan du skapa utfärdande av transformeringsregler såsom beskrivits tidigare.

$multipleVerifiedDomainNames = $false
$immutableIDAlreadyIssuedforUsers = $false
$oneOfVerifiedDomainNames = 'example.com'   # Replace example.com with one of your verified domains

$rule1 = '@RuleName = "Issue account type for domain-joined computers"
c:[
   Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid",
   Value =~ "-515$",
   Issuer =~ "^(AD AUTHORITY|SELF AUTHORITY|LOCAL AUTHORITY)$"
]
=> issue(
   Type = "http://schemas.microsoft.com/ws/2012/01/accounttype",
   Value = "DJ"
);'

$rule2 = '@RuleName = "Issue object GUID for domain-joined computers"
c1:[
   Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid",
   Value =~ "-515$",
   Issuer =~ "^(AD AUTHORITY|SELF AUTHORITY|LOCAL AUTHORITY)$"
]
&&
c2:[
   Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname",
   Issuer =~ "^(AD AUTHORITY|SELF AUTHORITY|LOCAL AUTHORITY)$"
]
=> issue(
   store = "Active Directory",
   types = ("http://schemas.microsoft.com/identity/claims/onpremobjectguid"),
   query = ";objectguid;{0}",
   param = c2.Value
);'

$rule3 = '@RuleName = "Issue objectSID for domain-joined computers"
c1:[
   Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid",
   Value =~ "-515$",
   Issuer =~ "^(AD AUTHORITY|SELF AUTHORITY|LOCAL AUTHORITY)$"
]
&&
c2:[
   Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/primarysid",
   Issuer =~ "^(AD AUTHORITY|SELF AUTHORITY|LOCAL AUTHORITY)$"
]
=> issue(claim = c2);'

$rule4 = ''
if ($multipleVerifiedDomainNames -eq $true) {
$rule4 = '@RuleName = "Issue account type with the value User when it is not a computer"
NOT EXISTS(
[
   Type == "http://schemas.microsoft.com/ws/2012/01/accounttype",
   Value == "DJ"
]
)
=> add(
   Type = "http://schemas.microsoft.com/ws/2012/01/accounttype",
   Value = "User"
);

@RuleName = "Capture UPN when AccountType is User and issue the IssuerID"
c1:[
   Type == "http://schemas.xmlsoap.org/claims/UPN"
]
&&
c2:[
   Type == "http://schemas.microsoft.com/ws/2012/01/accounttype",
   Value == "User"
]
=> issue(
   Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/issuerid",
   Value = regexreplace(
   c1.Value,
   ".+@(?<domain>.+)",
   "http://${domain}/adfs/services/trust/"
   )
);

@RuleName = "Issue issuerID for domain-joined computers"
c:[
   Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid",
   Value =~ "-515$",
   Issuer =~ "^(AD AUTHORITY|SELF AUTHORITY|LOCAL AUTHORITY)$"
]
=> issue(
   Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/issuerid",
   Value = "http://' + $oneOfVerifiedDomainNames + '/adfs/services/trust/"
);'
}

$rule5 = ''
if ($immutableIDAlreadyIssuedforUsers -eq $true) {
$rule5 = '@RuleName = "Issue ImmutableID for computers"
c1:[
   Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid",
   Value =~ "-515$",
   Issuer =~ "^(AD AUTHORITY|SELF AUTHORITY|LOCAL AUTHORITY)$"
]
&&
c2:[
   Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname",
   Issuer =~ "^(AD AUTHORITY|SELF AUTHORITY|LOCAL AUTHORITY)$"
]
=> issue(
   store = "Active Directory",
   types = ("http://schemas.microsoft.com/LiveID/Federation/2008/05/ImmutableID"),
   query = ";objectguid;{0}",
   param = c2.Value
);'
}

$existingRules = (Get-ADFSRelyingPartyTrust -Identifier urn:federation:MicrosoftOnline).IssuanceTransformRules

$updatedRules = $existingRules + $rule1 + $rule2 + $rule3 + $rule4 + $rule5

$crSet = New-ADFSClaimRuleSet -ClaimRule $updatedRules

Set-AdfsRelyingPartyTrust -TargetIdentifier urn:federation:MicrosoftOnline -IssuanceTransformRules $crSet.ClaimRulesString

Kommentarer

  • Det här skriptet lägger till reglerna till befintliga regler. Kör inte skriptet två gånger eftersom regeluppsättningen läggs till två gånger. Kontrollera att det inte finns några motsvarande regler för anspråken (under motsvarande villkor) innan du kör skriptet igen.

  • Om du har flera verifierade domännamn anger du värdet för $multipleVerifiedDomainNames i skriptet till $true. Se också till att du tar bort alla befintliga issuerid-anspråk som skapats av Microsoft Entra Anslut eller på annat sätt. Här är ett exempel för den här regeln:

    c:[Type == "http://schemas.xmlsoap.org/claims/UPN"]
    => issue(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/issuerid", Value = regexreplace(c.Value, ".+@(?<domain>.+)",  "http://${domain}/adfs/services/trust/")); 
    

Om du har utfärdat ett ImmutableID-anspråk för användarkonton anger du värdet för $immutableIDAlreadyIssuedforUsers i skriptet till $true.

Felsöka din implementering

Om du har problem med att slutföra Microsoft Entra-hybridanslutningen för domänanslutna Windows-enheter kan du läsa: