※ 本記事は、Sagar Takkarによる”Automatic deletion of identities from Azure AD to OCI IAM“を翻訳したものです。

2023年6月26日


Oracle Cloud Infrastructure(OCI)のお客様の一般的なシナリオは、サードパーティのアイデンティティ・プロバイダを使用してOCIへの認証を管理することです。その機能を有効にするには、システム管理者が、ソース・アイデンティティ・プロバイダからOCI Identity and Access Management (IAM)サービスへの自動アイデンティティ・ライフサイクル管理を構成します。この自動化には通常、ユーザー・アカウントの作成、管理および削除が含まれます。

このブログ投稿では、Microsoft Azure Active Directory (Azure AD)でアイデンティティ・ライフサイクル管理を有効にする方法について説明します。

Azure ADからのアイデンティティの作成

Azure ADを介したOCIへの認証を有効にするには、まずユーザー・アカウントのOCI IAMへの自動プロビジョニングを構成する必要があります。このプロセスにより、Azure ADはユーザー・アカウントおよびグループをOCI IAMに自動的にプロビジョニングおよびプロビジョニング解除できます。この自動プロセスは、次のシナリオをサポートします。:

  • Azure AD内からOCIへのアクセス権が割り当てられている場合のOCI IAMでのユーザー・アカウントの自動作成。
  • Azure AD内からOCIアクセスが削除された場合のOCI IAMのユーザー・アカウントの自動削除。
  • Azure ADとOCI IAM間のユーザー属性の自動同期。
  • OCI IAMへのグループおよびグループ・メンバーシップの自動プロビジョニング。

このシナリオを有効化するには、上位レベルで次のステップが必要です。:

  1. OCI IAMで、機密アプリケーションを作成します。
  2. OCI IAMで、ドメインURLを取得し、シークレット・トークンを生成します。
  3. Azure ADで、OCIアプリケーションを作成します。
  4. Azure ADで、ユーザーおよびグループをOCIアプリケーションに割り当てます。

Azure ADからアイデンティティ・ライフサイクル管理を構成する方法の詳細な手順については、チュートリアル「Azure ADの認証ソースとしてのAzure AD Galleryアプリケーションを使用してアイデンティティを管理」を参照してください。

Azure ADからのアイデンティティの削除

Azure ADユーザーがOCI IAMにプロビジョニングされたら、アクセス権が取り消されたとき、またはユーザーが削除されたときに、それらのユーザーも削除する必要があります。この削除は通常、従業員が退職した場合に発生します。

Azure ADからユーザー・アカウントを削除すると、同じユーザーがOCI IAMで削除または非アクティブ化される必要があります。しかし、一見すると、期待した結果が見えないかもしれません。

Azure ADでユーザーが削除されると、同じユーザーがOCI IAMで非アクティブ化されますが、削除されません。そのため、ユーザーのアカウントが非アクティブ化されているため、ユーザーのアクセスは拒否されますが、ユーザー・アカウントはOCI IAMに引き続き存在し、それ以上のアクションを行わずに、非アクティブ化されたユーザーは時間の経過とともにOCI IAMに累積される可能性があります。

Azure ADでは、ユーザーを削除してもすぐに削除されないため、この非アクティブ化はデフォルトの動作です。Azure ADはまずユーザーを非アクティブ化し、ユーザーを「削除されたユーザー」コンテナに移動します。このコンテナは30日間残ります。その30日間、ユーザーは非アクティブ化状態でOCI IAMに引き続き存在します。

OCI IAMで非アクティブ化されたユーザーの蓄積に対処する1つの方法は、Azure ADの「削除されたユーザー(Deleted Users)」コンテナから削除することです。ユーザーがAzure ADから完全に削除されると、OCI IAMからも同時に削除されます。

Azure ADコンソールまたはMicrosoft PowerShellを使用して、ユーザーを手動で削除できます。次のサンプル・コマンドは、Azure ADの「削除されたユーザー(Deleted Users)」コンテナからユーザーを削除します。このコマンドを実行すると、ユーザーは最初にAzure ADから完全に削除され、その後、自動プロビジョニング・プロセスによって、非アクティブ化されたユーザーがOCI IAMから削除されます。

Remove-MsolUser -UserPrincipalName UPN OF THE USER -RemoveFromRecycleBin

このコマンドを実行するには、Connect-MsolServiceを介してMSonline PSモジュールに接続していることを確認します。

前のコマンドは、単一ユーザーを削除するのに役立ちます。「削除されたユーザー(Deleted Users)」コンテナからユーザーの一括セットを削除する場合は、次のPowerShellコマンドを使用します:

Import-CSV c:\temp\DeletedUsers.csv | ForEach-Object { remove-msoluser -UserPrincipalName $_.UserPrincipalName -RemoveFromRecycleBin }

このコマンドを使用するには、まず、コンテナから削除するユーザーのUserPrincipalName属性を含むカンマ区切り値(CSV)ファイルを作成します。次のサンプルCSVファイルの内容を参照してください:

UserPrincipalName
Test1@stakk.onmicrosoft.com
Test2@stakk.onmicrosoft.com

このコマンドは対話型で、「削除されたユーザー(Deleted Users)」ディレクトリからの削除は永続的なため、実行時のユーザーの削除を確認する必要があります。このアプローチを使用すると、このプロセスを自動化して一定の間隔で実行できます。

まとめ

このブログ投稿では、Azure ADからOCI IAMへの自動アイデンティティ・ライフサイクル管理を有効にする方法について説明しました。OCI IAMでユーザー・アカウント作成を有効にする方法、Azure ADでユーザーが削除されると予想されること、および非アクティブ化されたユーザーのクリーンアップを有効にする方法について詳しく説明しました。

詳細またはOracle Cloud Infrastructure IAMサービスを試すには、OCI Identity and Access Managementにアクセスしてください。