はじめに
皆様、こんにちは!
ネットワールドのSEの福村です。
本日はEntra ID Join構成のAVDへクラウドID(Entra ID上のみで作成したアカウント)で接続し、FSLogixの機能を用いて、Azure Files上にプロファイルが生成されるか検証します。
概要
こちらの機能は最近プレビューとしてリリースされ、個人的には注目しておりました。
理由としては、ユーザープロファイルをAzure Filesへ保存する際に、Entra IDのみで完結できるという点になります。
※これまではハイブリットID(Active Directoryから同期されたアカウント)またはEntra IDからEntra Domain Servicesへ同期されたIDでないと、FSLogixを用いたプロファイル管理は不可だったため、実質的にActive DirectoryもしくはEntra Domain Servicesの構築が必須でした。
実施作業としては以下になります。
- ストレージアカウントの設定
- イメージ取得元VMでの設定
- リソースグループに対する権限付与
概要図としては以下になります。

設定作業
ストレージアカウントの設定
- ストレージアカウントの作成
通常通り作成します。
- ロールの割り当て
ストレージアカウントを作成後、接続ユーザーに対して「記憶域ファイル データの SMB 共有の共同作成者」のロールを付与します。
※配下のファイル共有にもロールが付与されます。
Azure Filesの設定
- Azure Filesの作成
通常通り作成します。

- Microsoft Entra Kerberos認証の有効化とファイル共有レベルのアクセス許可の設定
ロールについてはAzure Filesで書き込みを実施するので共同作成者のロールを付与します。

Microsoft Entra Kerberosに関する設定
- サービスプリンシパルに管理者の同意を与える
Microsoft Entra Kerberos 認証を有効にした後は、Microsoft Entra テナントに登録された新しい Microsoft Entra アプリケーションに、管理者の同意を明示的に付与する必要があります。
Entra IDのアプリケーションの一覧から[Storage Account] <ストレージアカウント名>.file.core.windows.netを選択します。
サービス メニューで、「API のアクセス許可」 を選択します。「[ディレクトリ名] に管理者の同意を与えます」を選択して、ディレクトリ内のすべてのアカウントに対して要求された 3 つの API アクセス許可 (openid、profile、User.Read) の同意を付与します。

はいを選択します。
同意が付与されました。

- アプリケーション マニフェスト ファイルのタグの更新
Entra IDのアプリケーションの一覧から[Storage Account] <ストレージアカウント名>.file.core.windows.netを選択し、マニュフェストを選択し、tags プロパティに以下の内容を追記します。"kdc_enable_cloud_group_sids"

こちらを実施する理由としては以下であると認識しています。- Kerberos は認証チケットにユーザー属性(グループ SID など)を含め、グループベースの承認に利用する。
- Windows/AD 互換の Kerberos では、チケットに含められるグループ SID は最大 1,010 個の上限がある。
- クラウド IDのサポートにより、チケットにオンプレミスとクラウド両方のグループ SID を含める必要が生じ、合計で 1,010個を超えるリスクが高まる。
- アプリのマニフェスト(タグ)設定で、トークンに含めるグループ情報の出し方を制御し、SID の列挙を抑えることで上限超過を回避できる。なお、これは上限を引き上げるのではなく、含める SID を減らすアプローチとなる。
イメージ取得元VMでの設定
- グループポリシーの設定
Entra ID Join端末からAzureファイル共有上のFSLogixプロファイルコンテナにアクセス・マウントできるようにするため以下の設定を実施します。
以下のポリシーを有効にします。
Administrative Templates\System\Kerberos\Allow retrieving the Azure AD Kerberos Ticket Granting Ticket during logon
- レジストリの追加(ローミング プロファイル ソリューション)
以下のレジストリ値を追加します。
reg add HKLM\Software\Policies\Microsoft\AzureADAccount /v LoadCredKeyFromProfile /t REG_DWORD /d 1

- FSLogixエージェントのインストール
VM上に最新版のエージェントをインストールします。
https://learn.microsoft.com/ja-jp/fslogix/how-to-install-fslogix - レジストリの追加(FSLogix利用のため)
FSLogixを利用するためのレジストリを追加します。
※グループポリシーでも可能です。

リソースグループに対する権限付与
- 仮想マシンの管理者ログイン権限の付与
今回は管理者としてログインさせるため上記の権限をリソースグループに対して付与しています。
※一般ユーザーとしてログインさせるのであれば仮想マシンのユーザー ログイン権限を付与します。
※リソースグループではなく、セッションホスト単位での権限付与も可能です。

接続確認
取得したイメージをセッションホストとして展開しアクセス。Azureファイル共有上にユーザープロファイルができていることを確認できました。

セッションホスト上で編集したファイルも保存されています。

参考情報
Microsoft Entra ID を使用して AZURE Files に FSLogix プロファイル コンテナーを格納する - FSLogix | Microsoft Learn
免責事項
- 本ブログ(以降:本書)の記載にあたりまして、細心の注意を払っておりますが、正確性・完全性を保証するものではありません。
- 本書の利用によって生じたあらゆる損害に関して、一切の責任を負いかねます。