デバイス同期を使用すると、AD2AADDeviceSync Cloud Sync 構成で ジョブを使用して、コンピューター オブジェクトを Active Directory (AD) から Microsoft Entra ID に同期できます。 同期後、デバイスは Microsoft Entra にハイブリッド参加できるようになります。
デバイス同期は既定で無効になっています。 開始する前に、環境が前提条件を満たしていることを確認します。 次に、サービス接続ポイント (SCP) を構成し、デバイス同期を有効にし、オンデマンドでデバイスをプロビジョニングし、Microsoft Graphを使用してデバイスの同期を管理し、削除されたデバイスを回復します。
Note
この記事では、Microsoft Entra クラウド同期でデバイス同期を構成する方法について説明します。ガイド付き移行ツールがデバイス同期を Microsoft Entra Connect Sync から転送する方法については説明しません。Connect Sync からの移行を計画する前に、移行ツールの前提条件を確認してください。プラットフォームの機能と使用可能な移行パスについては、移行決定ガイドと移行の概要を参照してください。
前提条件
環境が次の要件を満たしていることを確認します。
- オンプレミス環境に Microsoft Entra プロビジョニング エージェントをインストールします。 エージェントはバージョン 1.1.1107 以降である必要があります。 Microsoft Entra 管理センターから利用可能な最新のエージェント バージョンをダウンロードします。 エージェントのバージョンについては、Microsoft Entraプロビジョニング エージェントのリリース履歴を参照してください。
- AD から Microsoft Entra ID へのクラウド同期構成を作成します。 構成手順については、「Active DirectoryからMicrosoft Entra IDへのプロビジョニングの構成」を参照してください。
- Microsoft Entraテナント ID と、デバイスが認証に使用する検証済みドメイン。 フェデレーション環境の場合は、フェデレーション ドメインを使用します。 それ以外の場合は、プライマリ
*.onmicrosoft.comドメインを使用します。 - SCP を構成する必要がある場合は、ドメインに参加しているコンピューターを含む各 AD フォレストの Enterprise Admins グループのメンバーであるアカウントに一時的にアクセスします。 組織の Just-In-Time 特権アクセス プロセス (使用可能な場合) を使用します。
- Microsoft Entra 管理センターでデバイス同期を構成するには、少なくともハイブリッド ID 管理者ロールを持つアカウントを使用します。
サービス接続ポイントを構成する
ドメインに参加しているコンピューターを含む各 AD フォレストで SCP を構成します。 デバイスは SCP を使用して、登録するMicrosoft Entra テナントを検出します。
SCP は、フォレスト内で既に構成されている可能性があります。 スクリプトを実行する前に、 既存の SCP 値を確認し、現在の azureADName と azureADId の値を記録して、必要に応じて復元できるようにします。 値が既に目的のテナントを識別している場合は、「 デバイス同期を有効にする」に進みます。
Warning
SCP が既に存在する場合、スクリプトは現在の keywords 値をクリアし、指定された azureADName と azureADId 値に置き換えます。 ドメインとテナント ID を実行する前に確認します。
SCP を構成するには、次の手順に従います。
現在のフォレストの Enterprise Admins に所属するアカウントを使用して、ドメイン参加済みの管理ワークステーションまたはドメイン コントローラーにサインインします。 組織のポリシーでローカル スクリプトが許可されている Windows PowerShell セッションを使用します。
次のスクリプトを
ConfigureSCP.ps1として保存します。# # ConfigureSCP.ps1 # Configures the service connection point (SCP) for Microsoft Entra hybrid join in the current forest. # # REQUIREMENT: Must be run by an Enterprise Admin of the current forest. # # EXAMPLES: # .\ConfigureSCP.ps1 -Domain contoso.com -TenantId <guid> # .\ConfigureSCP.ps1 -Domain contoso.onmicrosoft.com -TenantId <guid> # [CmdletBinding()] param( # Verified domain used for device authentication. # If you use federation, enter a federated domain name. # Otherwise, enter your primary *.onmicrosoft.com domain name. [Parameter(Mandatory = $true)] [ValidateNotNullOrEmpty()] [string]$Domain, # Microsoft Entra tenant identifier (GUID). [Parameter(Mandatory = $true)] [guid]$TenantId ) $ErrorActionPreference = "Stop" Write-Output "Configuring the SCP for Microsoft Entra hybrid join in your Active Directory forest." try { ## Set variables $azureADName = "azureADName:" + $Domain.Trim() $azureADId = "azureADId:" + $TenantId.ToString() $keywords = "keywords" $ldap = "LDAP://" $rootDSE = New-Object System.DirectoryServices.DirectoryEntry($ldap + "RootDSE") $configCN = $rootDSE.Properties["configurationNamingContext"][0].ToString() $servicesCN = "CN=Services," + $configCN $drcCN = "CN=Device Registration Configuration," + $servicesCN $scpCN = "CN=62a0ff2e-97b9-4513-943f-0d221bd30080," + $drcCN ## Get/Create: CN=Device Registration Configuration,CN=Services if ([System.DirectoryServices.DirectoryEntry]::Exists($ldap + $drcCN)) { $deDRC = New-Object System.DirectoryServices.DirectoryEntry($ldap + $drcCN) } else { $de = New-Object System.DirectoryServices.DirectoryEntry($ldap + $servicesCN) $deDRC = $de.Children.Add("CN=Device Registration Configuration", "container") $deDRC.CommitChanges() } ## Edit/Create: CN=62a0ff2e-97b9-4513-943f-0d221bd30080,CN=Device Registration Configuration,CN=Services if ([System.DirectoryServices.DirectoryEntry]::Exists($ldap + $scpCN)) { $deSCP = New-Object System.DirectoryServices.DirectoryEntry($ldap + $scpCN) $deSCP.Properties[$keywords].Clear() } else { $deSCP = $deDRC.Children.Add("CN=62a0ff2e-97b9-4513-943f-0d221bd30080", "serviceConnectionPoint") } $deSCP.Properties[$keywords].Add($azureADName) | Out-Null $deSCP.Properties[$keywords].Add($azureADId) | Out-Null $deSCP.CommitChanges() Write-Output "Configuration complete!" } catch { Write-Output "Configuration could not be completed." Write-Output $_ exit 1 }目的のテナントの値を使用してスクリプトを実行します。
-
Domainの場合は、フェデレーション環境にフェデレーション ドメインを使用します。 それ以外の場合は、プライマリ*.onmicrosoft.comドメインを使用します。 -
TenantIdの場合は、Microsoft Entra テナント GUID を使用します。
.\ConfigureSCP.ps1 -Domain <verified-domain> -TenantId <tenant-id>-
PowerShell に
Configuration complete!が表示されることを確認します。Configuration could not be completed.が表示される場合は、付随するエラーを確認し、解決してから続行してください。ドメインに参加しているコンピューターを含む追加の AD フォレストごとに、既存の SCP 値を確認し、必要に応じてこの手順を繰り返します。
必要なすべてのフォレストを構成したら、 エンタープライズ管理者 アカウントからサインアウトし、組織の特権アクセス プロセスに従って一時的なアクセスを削除または非アクティブ化します。
デバイス同期を有効にする
既存のAD から Microsoft Entra ID への Cloud Sync 構成でデバイス同期を有効にします。
少なくともハイブリッド ID 管理者として Microsoft Entra 管理センターにサインインします。
Entra ID>、Entra Connect>、そしてCloud 同期にアクセスします。
既存のAD から Microsoft Entra ID への構成を選択します。
[プロパティ] を選択します。 [ 基本] で、[ デバイスの同期 ] が [無効] になっていることを確認します。
[ 基本] の横にある編集アイコンを選択します。
[ デバイス同期を有効にする] を選択し、[ 適用] を選択します。
同期されたデバイス属性を確認する
Cloud Sync デバイス同期では、次のデバイス属性マッピングがサポートされています。
| Microsoft Entra 属性 | AD 属性 | マッピングの種類 |
|---|---|---|
AccountEnabled |
userAccountControl |
Expression |
DeviceId |
objectGUID |
直接 |
DeviceOSType |
operatingSystem |
Expression |
DeviceTrustType |
なし。 値は常に ServerAd。 |
Expression |
DisplayName |
displayName、dNSHostName |
Expression |
OnPremiseSecurityIdentifier |
objectSid |
直接 |
RegisteredOwnerReference |
mS-DS-CreatorSID |
ある時 |
SourceAnchor |
objectGUID |
直接 |
UserCertificate |
userCertificate |
直接 |
RegisteredOwnerReference マッピングは、Cloud Sync が AD でコンピューター オブジェクトを初めて検出したときにのみ適用されます。
オンデマンドでデバイスをプロビジョニングする
特定の AD コンピューター オブジェクトに対してデバイス同期を実行するために、デバイスをオンデマンドでプロビジョニングします。
少なくともハイブリッド ID 管理者として Microsoft Entra 管理センターにサインインします。
Entra ID>、Entra Connect>、そしてCloud 同期にアクセスします。
- 既存のAD から Microsoft Entra ID への構成を選択します。
- オンデマンドプロビジョン を選択します。
- [ デバイス ] タブを選択します。
- AD コンピューターの識別名を入力します。
- プロビジョン を選択します。
Microsoft Graphを使用してデバイス同期を管理する
Microsoft Graphを使用して、デバイス同期ジョブを作成して開始したり、オンデマンドでデバイスをプロビジョニングしたりできます。
デバイス同期ジョブを作成して開始する
Create synchronizationJob を使用して、デバイス同期ジョブを作成します。
リクエスト内:
- AD のサービス プリンシパル ID を、Microsoft Entra ID のサービス プリンシパルに使用します。
-
templateIdをAD2AADDeviceSyncに設定します。
Start synchronizationJob を使用して、デバイス同期ジョブを開始します。
Microsoft Graphを使用してオンデマンドでデバイスをプロビジョニングする
デバイス同期ジョブで Get synchronizationSchema を使用します。
応答で、
synchronizationRulesからデバイス同期規則 ID を取得します。synchronizationJob: provisionOnDemand を使用します。 要求本文で、次の値を設定します。
- 「Active Directory ユーザーとコンピューター」から、コンピューターの識別名に
objectIdを追加します。 -
objectTypeNameからcomputer。 -
ruleIdをデバイス同期規則 ID に追加します。
- 「Active Directory ユーザーとコンピューター」から、コンピューターの識別名に
削除されたデバイスを回復する
デバイスは、次の場合にMicrosoft Entra IDから削除できます。
- 対応するコンピューターが AD で削除され、Cloud Sync によって Microsoft Entra ID 内のデバイスが削除されます。
-
dsregcmd /leaveの実行後、デバイスはクラウドから参加解除されるため、Azure Device Registration Service はMicrosoft Entra ID内のデバイスを削除します。 - 管理者は、Microsoft Entra 管理センターの Entra ID>Devices からデバイスを手動で削除します。
Cloud Sync 以外のサービスまたは管理者がデバイスを削除した場合、対応する AD コンピューター オブジェクトが変更されない限り、Cloud Sync は次の同期サイクル中にデバイスを再作成しません。
次のいずれかのオプションを使用して、デバイスを回復し、ハイブリッド結合状態を復元します。
- Microsoft Entra 管理センターで、Entra ID>Devices>削除済みのデバイスに移動し、デバイスを復元します。
- AD で対応するコンピューター オブジェクトを変更し、次のデバイス同期サイクルを待ちます。
- デバイスをオンデマンドでプロビジョニングします。