シナリオ: Microsoft Entra ID には数百のグループがあります。 Active Directory にこれらのグループの一部をプロビジョニングしますが、すべて戻す必要はありません。 より複雑なスコープ フィルターを作成しなくてもグループに適用できるクイック フィルターが必要です。
このチュートリアルで作成する環境は、テストを行ったり、クラウド同期について理解を深めるために使用したりできます。
前提条件
- このシナリオでは、ユーザーを Microsoft Entra ID に同期する作業環境が既にあることを前提としています。
- 同期されるユーザーは 4 人います。 つまり、Britta Simon、Lola Jacobson、Anna Ringdahl、John Smith です。
- Active Directory に、Sales、Marketing、Groups という 3 つの組織単位が作成されています
- Britta Simon と Anna Ringdahl のユーザー アカウントは、Sales OU に存在します。
- Lola Jacobson と John Smith のユーザー アカウントは、Marketing OU に存在します。
- Groups OU は、Microsoft Entra ID のグループがプロビジョニングされる場所です。
ヒント
Microsoft Graph PowerShell SDK コマンドレットの実行エクスペリエンスを向上するには、ms-vscode.powershell
で拡張機能 Visual Studio Code を使用します。
Microsoft Entra ID で 2 つのグループを作成する
まず、Microsoft Entra ID で 2 つのグループを作成します。 1 つのグループは Sales で、もう 1 つは Marketing です。
2 つのグループを作成するには、次の手順に従います。
- Microsoft Entra 管理センターに、少なくともハイブリッド ID 管理者としてサインインします。
- Entra ID>Groups>All groups に移動します。
- 上部にある [ 新しいグループ] をクリックします。
- グループの種類がセキュリティに設定されていることを確認します。
- [グループ名] に「Sales」と入力します
- [ メンバーシップの種類 ] では、割り当て済みのままにします。
- [ 作成] をクリックします。
- グループ名として Marketing を使用して、このプロセスを繰り返 します。
新しく作成したグループにユーザーを追加する
- Microsoft Entra 管理センターに、少なくともハイブリッド ID 管理者としてサインインします。
- Entra ID>Groups>All groups に移動します。
- 上部の検索ボックスに「 Sales」と入力します。
- 新しい Sales グループをクリックします。
- 左側の [メンバー] をクリックします。
- 上部にある [メンバーの 追加] をクリックします。
- 上部の検索ボックスに「 Britta Simon」と入力します。
- Britta Simon と Anna Ringdahl の横にチェックを入れて、[選択] をクリックします
- これで、グループに彼女が正常に追加されるはずです。
- 左端の [ すべてのグループ ] をクリックし、 マーケティング グループを使用してこのプロセスを繰り返し、そのグループに Lola Jacobson と John Smith を追加します。
注
Marketing グループにユーザーを追加するときは、概要ページでグループ ID をメモしておきます。 この ID は、後で新しく作成したプロパティをグループに追加するために使用されます。
Microsoft Graph PowerShell SDK をインストールして接続する
まだインストールされていない場合は、 Microsoft Graph PowerShell SDK のドキュメントに従って、Microsoft Graph PowerShell SDK のメイン モジュール (
Microsoft.Graph
) をインストールします。管理者特権で PowerShell を開きます
実行ポリシーを設定するには、以下を実行します (プロンプトが表示されたら、[A] (はい) を押します)。
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
テナントに接続します (サインイン時に必ず代理を受け入れてください)。
Connect-MgGraph -Scopes "Directory.ReadWrite.All", "Application.ReadWrite.All", "User.ReadWrite.All, Group.ReadWrite.All"
CloudSyncCustomExtensionApp アプリケーションとサービス プリンシパルを作成します
重要
Microsoft Entra Cloud Sync のディレクトリ拡張機能は、識別子 URI "api://<tenantId>/CloudSyncCustomExtensionsApp" と Microsoft Entra Connect によって作成された テナント スキーマ拡張機能アプリ を持つアプリケーションでのみサポートされます。
テナント ID を取得します。
$tenantId = (Get-MgOrganization).Id $tenantId
注
これにより、現在のテナント ID が出力されます。 このテナント ID を確認するには、 Microsoft Entra 管理センター>Entra ID>Overview に移動します。
前の手順の
$tenantId
変数を使用して、CloudSyncCustomExtensionApp が存在するかどうかを確認します。$cloudSyncCustomExtApp = Get-MgApplication -Filter "identifierUris/any(uri:uri eq 'api://$tenantId/CloudSyncCustomExtensionsApp')" $cloudSyncCustomExtApp
CloudSyncCustomExtensionApp が存在する場合は、次の手順に進みます。 それ以外の場合は、新しい CloudSyncCustomExtensionApp アプリを作成します。
$cloudSyncCustomExtApp = New-MgApplication -DisplayName "CloudSyncCustomExtensionsApp" -IdentifierUris "api://$tenantId/CloudSyncCustomExtensionsApp" $cloudSyncCustomExtApp
CloudSyncCustomExtensionsApp アプリケーションにセキュリティ プリンシパルが関連付けられているかどうかを確認します。 新しいアプリを作成したばかりの場合は、次の手順に進みます。
Get-MgServicePrincipal -Filter "AppId eq '$($cloudSyncCustomExtApp.AppId)'"
新しいアプリを作成したばかりの場合、またはセキュリティ プリンシパルが返されない場合は、CloudSyncCustomExtensionsApp のセキュリティ プリンシパルを作成します。
New-MgServicePrincipal -AppId $cloudSyncCustomExtApp.AppId
カスタム拡張機能属性を作成する
ヒント
このシナリオでは、Microsoft Entra Cloud Sync スコープ フィルターで使用する WritebackEnabled
というカスタム拡張機能属性を作成し、Microsoft Entra 管理センターのライトバックが有効なフラグと同様に、WritebackEnabled が True に設定されているグループのみがオンプレミスの Active Directory に書き戻されるようにします。
テナント ID を取得します。
$tenantId = (Get-MgOrganization).Id $tenantId
CloudSyncCustomExtensionsApp アプリケーションを取得します。
$cloudSyncCustomExtApp = Get-MgApplication -Filter "identifierUris/any(uri:uri eq 'api://$tenantId/CloudSyncCustomExtensionsApp')"
次に、CloudSyncCustomExtensionApp 以下に "WritebackEnabled" というカスタム拡張機能属性を作成し、それをグループ オブジェクトに割り当てます。
New-MgApplicationExtensionProperty -ApplicationId $cloudSyncCustomExtApp.Id -Name 'WritebackEnabled' -DataType 'Boolean' -TargetObjects 'Group'
このコマンドレットを使って、extension_<guid>_WritebackEnabled のような拡張機能属性を作成します。
クラウド同期構成を作成する
Microsoft Entra 管理センターに、少なくともハイブリッド ID 管理者としてサインインします。
Entra ID>Entra Connect>Cloud 同期に移動します。
[ 新しい構成] を選択します。
[Microsoft Entra ID to AD sync] を選択します。
- 構成画面で、ドメインとパスワード ハッシュ同期を有効にするかどうかを選択します。[ 作成] をクリックします。
[ 作業の開始 ] 画面が開きます。 ここから、クラウド同期の構成を続行できます
左側で、[スコープ フィルター] をクリックし、[グループ スコープ - すべてのグループを選択します。
[ 属性マッピングの編集] をクリックし、 ターゲット コンテナー を
OU=Groups,DC=Contoso,DC=com
に変更します。 [ 保存] をクリックします。属性スコープフィルターを追加をクリックする
スコープ フィルターの名前を入力します:
Filter groups with Writeback Enabled
[ ターゲット属性 ] で、extension_<guid>_WritebackEnabledのような新しく作成された属性を選択します。
重要
このドロップダウン リストには、スコープ フィルターとして使用できないターゲット属性も表示されることがあります。これは、Entra ID ですべてのプロパティを管理できるわけではないからです (例: extensionAttribute[1-15])。したがって、この特定の目的のためにカスタム拡張プロパティを作成することをお勧めします。
- [演算子] で [IS TRUE] を選択する
- [ 保存] をクリックします。 [保存] をクリック します。
- 構成は無効のままにして、後で戻ります。
グループのいずれかに新しい拡張プロパティを追加する
この部分では、新しく作成されたプロパティを既存のグループの 1 つである Marketing に値を追加します。
Microsoft Graph PowerShell SDK を使用して拡張機能プロパティ値を設定する
テナント ID を取得します。
$tenantId = (Get-MgOrganization).Id $tenantId
CloudSyncCustomExtensionsApp アプリケーションを取得します。
$cloudSyncCustomExtApp = Get-MgApplication -Filter "identifierUris/any(uri:uri eq 'api://$tenantId/CloudSyncCustomExtensionsApp')"
拡張機能プロパティを取得します。
$gwbEnabledExtAttrib = Get-MgApplicationExtensionProperty -ApplicationId $cloudSyncCustomExtApp.Id | Where-Object {$_.Name -Like '*WritebackEnabled'} | Select-Object -First 1 $gwbEnabledExtAttrib $gwbEnabledExtName = $gwbEnabledExtAttrib.Name
次に、
Marketing
グループを取得します。$marketingGrp = Get-MgGroup -ConsistencyLevel eventual -Filter "DisplayName eq 'Marketing'" $marketingGrp
次に、
$gwbEnabledExtName
を含む変数extension_<guid>_WritebackEnabled
を使用して、マーケティング グループに値True
を設定します。Update-MgGroup -GroupId $marketingGrp.Id -AdditionalProperties @{$gwbEnabledExtName = $true}
確認するには、次のようにして
extension_<guid>_WritebackEnabled
プロパティ値を読み取ることができます。$marketingGrp = Get-MgGroup -ConsistencyLevel eventual -Filter "DisplayName eq 'Marketing'" -Property Id,$gwbEnabledExtName $marketingGrp.AdditionalProperties.$gwbEnabledExtName
Microsoft Graph Explorer を使用して拡張機能プロパティ値を設定する
Group.ReadWrite.All
に同意しておく必要があります。 これを行うには、[ アクセス許可の変更] を選択します。
テナント管理者アカウントを使用してサインインします。 その際にハイブリッド ID 管理者アカウントが必要になる場合があります。 このシナリオの作成には、ハイブリッド ID 管理者アカウントが使用されました。 ハイブリッド ID 管理者アカウントで十分な場合があります。
上部で、GET を PATCH に変更します
アドレス ボックスに「
https://graph.microsoft.com/v1.0/groups/<Group Id>
」と入力します。要求本文で、次のように入力します。
{ extension_<guid>_WritebackEnabled: true }
正常に完了すると、[] と表示されます。
上部で PATCH をGET に変更し、マーケティング グループのプロパティを見てください。
構成をテストする
注
オンデマンド プロビジョニングを使用する場合、メンバーは自動的にプロビジョニングされません。 テストするメンバーを選ぶ必要があります。また、メンバー数の上限は 5 です。
少なくともハイブリッド ID 管理者として、Microsoft Entra 管理センターにサインインします。
Entra ID>Entra Connect>Cloud 同期に移動します。
Microsoft Entra Connect Cloud Sync のホームページを示すスクリーンショット。
- [ 構成] で、構成を選択します。
- 左側で、[ オンデマンドプロビジョニング] を選択します。
- [選択したグループ] ボックスに「マーケティング」と入力します
- [ 選択したユーザー ] セクションで、テストする一部のユーザーを選択します。 ローラ・ジェイコブソンとジョン・スミスを選択します。
-
プロビジョンをクリックします。 これで正常にプロビジョニングされるはずです。
- 次に 、Sales グループを試して、 Britta Simon と Anna Ringdahl を追加します。 この場合、プロビジョニングされないはずです。
- Active Directory に、新しく作成された Marketing グループが表示されるはずです。
- Entra ID>Entra Connect>Cloud 同期>概要ページを参照して、構成を確認して同期を開始できるようになりました。