Microsoft 365のプロビジョニング処理のフローを知りたい

Microsoft 365のプロビジョニング処理のフローを説明します。

【参考】

プロビジョニングは定期的に行われるため、プロビジョニングが実施されるまでに時間がかかる場合があります。

なお、プロビジョニングの実行タイミングについては、「プロビジョニング処理の反映にかかる時間を知りたい」をご覧ください。

プロビジョニングの流れ
初回のプロビジョニング

Microsoft 365アプリケーションの作成後に、初めてプロビジョニング処理を行った際の処理の流れを説明します。

【参考】

  • Azure ADへユーザ、及びグループをエクスポートするためには、事前にプロビジョニング設定を有効にする必要があります。詳しくは、『IIJ IDサービス マニュアル[管理者用]』の「Azure AD(Microsoft 365)とのプロビジョニング設定をする 」をご覧ください。
  • Microsoft 365アプリケーションのプロビジョニングを有効にしている場合は、ユーザ、グループ、及びライセンスの管理は IIJ ID上で行ってください。
    IIJ IDからエクスポートされたユーザ、グループ、及びライセンスをAzure AD側での直接操作によって変更した場合、不整合が発生し、プロビジョニングが正しく行われないことがあります。
  • IIJ IDサービスからAzure ADへの初回のプロビジョニング時に、Azure ADユーザのobjectIDがIIJ IDサービスに保存され、以降の関連付けはAzure ADユーザのobjectID属性で行われます。
  • IIJ IDユーザ・グループにobjectIDが登録されているか、登録されている場合の登録値を確認する方法はありません。また、登録値は変更できません。

【前提となるお客様操作】ID管理者がエクスポート対象を設定する

お客様(ID管理者)が以下の操作を実施します。

  1. ID管理者が「Microsoft 365アプリケーション」のプロビジョニングを有効にします。
  2. ID管理者が手順1でプロビジョニングを有効にしたアプリケーションの利用者設定を開き、エクスポートするユーザ及びライセンスを設定します。
  3. ID管理者が手順1でプロビジョニングを有効にしたアプリケーションのグループ設定を開いて、エクスポートするグループを設定します。
    • IIJ IDサービスからAzure ADへエクスポートするグループの設定方法については、『IIJ IDサービス マニュアル[管理者用]』の「グループ設定をする」をご覧ください。
      グループに設定されたメンバーの所属情報もAzure ADにエクスポートされます。
【サービスの動作】IIJ IDサービスがAzure ADに対して定期的にプロビジョニングを行う

お客様(ID管理者)が上記の操作を実施後、IIJ IDサービスが以下のように動作します。

  1. IIJ IDサービスが「利用者(グループ)」に所属するユーザに対し、定期的にプロビジョニング処理を行います。
    • IIJ IDサービスがGraph APIを利用して、エクスポート対象となるAzure ADユーザが存在するかチェックします。詳しくは、「IIJ IDユーザとAzure ADユーザの関連付けの仕組み」をご覧ください。
      エクスポート対象となるユーザをエクスポートします。
  2. IIJ IDサービスが「グループ設定」に設定されたグループに対し、定期的にプロビジョニング処理を行います。
    1. IIJ IDサービスがGraph APIを利用して、エクスポート対象のAzure ADグループが存在するかチェックします。
      • IIJ IDのグループと同名のAzure ADのグループが既に存在する場合は、対象のAzure ADのグループへ更新処理を行います。
      • IIJ IDのグループと同名のAzure ADのグループが存在しない場合は、Azure ADのグループの作成処理を行います。
    2. エクスポート対象となるグループをエクスポートします。
  3. IIJ IDサービスが「グループ設定」に設定されたメンバーの所属情報をAzure ADにエクスポートします。
    • 対象のユーザがAzure ADで事前に作成されている必要があります。
  4. IIJ IDサービスが「利用者(グループ)」に割り当てられているライセンスを、定期的にAzure ADユーザにエクスポートします。
    • IIJ IDサービスとAzure ADでライセンスに差分があれば、Graph APIでAzure ADユーザに対してライセンスの付与または剥奪を行います。
  5. ユーザ、グループ、グループメンバー、及びライセンスのエクスポートが完了した後、IIJ IDサービスがエクスポート結果をジョブ履歴に追加します。
2回目以降のプロビジョニング

【前提となるお客様操作】ID管理者がエクスポート対象の属性情報を更新する

お客様(ID管理者)が以下の操作を実施します。

  1. ID管理者が、IIJ IDコンソール、Directory Syncなどから、IIJ IDユーザの属性情報、グループの属性情報、及びグループメンバーの所属情報を更新します。
【サービスの動作】IIJ IDサービスがAzure ADに対して定期的にプロビジョニングを行う

お客様(ID管理者)が上記の操作を実施後、IIJ IDサービスが以下のように動作します。

  1. IIJ IDサービスが「利用者(グループ)」に所属するユーザに対し、定期的にプロビジョニング処理を行います。
    IIJ IDサービスがGraph APIを利用し、Azure ADにIIJ IDのユーザと関連付けられているAzure ADのユーザが存在するかチェックします。
    • IIJ IDユーザと関連付けられているAzure ADのユーザについて、属性情報を更新します。
    • IIJ IDユーザと関連付けが行われていないAzure ADのユーザについて、新たにユーザを作成して関連付けを行います。詳しくは「IIJ_IDユーザとAzure_ADユーザの関連付けの仕組み」をご覧ください。
  2. IIJ IDサービスが「グループ設定」に設定されたグループに対し、定期的にプロビジョニング処理を行います。
    IIJ IDサービスとAzure ADでグループ、及びグループメンバーに差分があれば、Graph APIでAzure ADのグループ、及びグループメンバーを更新します。
  3. IIJ IDサービスが「利用者(グループ)」に割り当てられているライセンスを、定期的にAzure ADユーザに対してプロビジョニング処理を行います。
    IIJ IDサービスとAzure ADでライセンスに差分があれば、Graph APIでAzure ADのユーザに対してライセンスの付与または剥奪を行います。
  4. ユーザ、グループ、グループメンバー、及びライセンスのエクスポートが完了した後、IIJ IDサービスがエクスポート結果をジョブ履歴に追加します。
【注意】

ライセンスの差分チェックを行った結果、IIJ IDサービスで割当対象にないライセンスが付与されていた場合、そのライセンスを剥奪します。ただし、セルフサービス※1で付与されたライセンスはIIJ IDで剥奪することができないため、エラーになります。

※1:セルフサービスはユーザ自身がID管理者を介さずに、ライセンスの付与などができる仕組みです。詳しくは、「Microsoft 365のプロビジョニングでInsufficient privileges to complete the operation.が発生する」ご覧ください。

IIJ IDユーザとAzure ADユーザの関連付けの仕組み

IIJ IDサービスからAzure ADにユーザがエクスポートする際、ユーザの関連付けは以下の流れで行われます。

IIJ IDサービスからAzure ADへの初回のプロビジョニング時に、Azure ADユーザのobjectIDがIIJ IDサービスに保存され、以降の関連付けはAzure ADユーザのobjectID属性で行われます。

objectIDについては、以下サイトをご覧ください。

なお、IIJ IDユーザ・グループにobjectIDが登録されているか、登録されている場合の登録値を確認する方法はありません。また、登録値は変更できません。

関連付けされたユーザの更新に失敗するケース

以下のケースではAzure ADでユーザを操作したことにより、プロビジョニング実行時にuserPrincipalNameが重複した状態になり、ユーザ属性の更新に失敗します。

  1. IIJ IDサービスで、ユーザ(例: taro@example.com)をAzure ADにエクスポートします。
  2. IIJ IDサービスからエクスポートされたユーザのuserPrincipalNameを、Azure ADで直接変更(例:taro@example.com→taro@new.example.com)します。
  3. 変更前のuserPrincipalNameと同じ値を持つユーザ(例:taro@example.com)を、Azure ADで新規作成します。
  4. 次回のプロビジョニング実行時にIIJ IDサービスは、IIJ IDに登録されているユーザ属性情報をもとに、Azure ADに対してユーザの更新を行います。
    IIJ IDサービスは対象ユーザのuserPrincipalNameをIIJ IDサービス上のID名に更新(例:taro@new.example.comのuserPrincipalNameをtaro@example.comに更新)しようとします。
  5. Azure AD側に同じuserPrincipalNameを持つユーザ(例:taro@example.com)が既に存在するため、更新処理が失敗します。

この結果、プロビジョニング処理はエラーになり、ユーザ属性の同期及びライセンスの付与が正常に完了しません。プロビジョニングを有効にしている場合は、IIJ IDサービスからエクスポートされたAzure ADユーザに対して、属性変更を行わないでください。

「Microsoft 365へのエクスポート」の各項目について

「利用者設定」の「Microsoft 365へのエクスポート」によって、エクスポート及びライセンス付与の切り替えを行うことができます。この設定によりプロビジョニングの処理が変わるため、注意してください。

項目 内容
エクスポートする(ライセンスを付与する) Azure ADにユーザをエクスポートし、ライセンスとプランを付与します。Azure AD側の操作などにより、該当ユーザに別のライセンスとプランが付与されている場合は剥奪されます
エクスポートする(ライセンスを付与しない) Azure ADにユーザをエクスポートします。ライセンスとプランを付与せず、Azure ADで該当ユーザに既にライセンスやプランが付与されている場合は、ライセンスとプランを剥奪します
エクスポートしない Azure ADにユーザをエクスポートしません。認証はIIJ IDサービスで行い、ID・ライセンス管理はAzure ADで行いたい場合の設定になります。IIJ IDサービスから既にエクスポートされていたユーザは、ブロック状態となりライセンスは剥奪されます