25.2K Views
August 27, 24
スライド概要
Microsoft Entra KerberosでのAzure FilesをKerberos認証でSSOする
.NETラボ 2024 08月勉強会 小鮒 通成
自己紹介です  都内Sierに勤務し、Windows/MEID認証基盤のコンサ ル・設計・トラブルシュート・ブログ公開などをやっています。  Microsoft Q&Aで、ときどき回答しています。  商業誌でWindows記事の寄稿を行うことがあります。  MSMVP Directory Services→Enterprise Mobility →Securityを受賞しています(MVP受賞回数22回+α)。  秋葉原によく現れます。最近は48型有機ELディスプレイ を買いました…。
クラウドリフトとクラウドシフト  クラウドリフトは「移動」  Serverのバーチャル化  ネットワークのクラウド化  物理位置の移動  クラウドシフトは「変換」  Server機能のPaaS化  ネットワークのエンドポイント化(オンプレミス含む)  Server機能の解体と再編成
認証と認可のPaaS化  認証のPaaS化  比較的やりやすい  業界標準仕様によるコモディティ化  異種システム間の連携は考慮ずみ  認可のPaaS化  かなりやりづらい  リソース・アプリケーションへの依存度が高い  業界標準仕様はOAuthぐらい(認可プロトコル)  OAシステムからの認可PaaS化は「やりづらい」
Azure Filesとは  Windows File ServicesのフルマネージドPaaS  SMB(Server Message Block)  NFS(Network File System)  使用目的として  オンプレミスのファイル サーバーの置換または補完  アプリケーションの "リフトアンドシフト"  クラウド開発の簡略化(ログデータやInsight情報を取り出し やすくする)  コンテナー化
Azure Filesの認証  IDベース認証 (Kerberos)  オンプレミス Active Directory Domain Services  Microsoft Entra Domain Services  ハイブリッド ID 用の Microsoft Entra Kerberos  Linux クライアントの SMB 経由の Active Directory 認証  共有キー認証 (NTLMv2)  Azure ストレージ アカウント キー  ホストベース認証 (UNIX)  公開ホストキー
Azure Filesのプロトコル  SMB (445/tcp)  SMB 3.1.1 / 3.1 /2.1  NFS (2049/tcp)  NFS 4.1  SMB over QUIC (443/udp)  Azure Files Sync + Windows Server 2022 Azure Edition またはWindows Server 2025 (Preview)  Windows ServerにAzure Filesのキャッシュを置くことで間 接的に実現可能
Azure Filesの暗号化  SMB  SMB 3.1.1 / 3.1 はサポート  SMB 2.1 は未サポート  NFS  NFS 4.1 は未サポート  パブリックエンドポイント  暗号化は必須  サービスエンドポイントの非暗号化はサポート  オンプレミス・リージョンまたぎの非暗号化は未サポート  プライベートエンドポイント  暗号化・非暗号化通信はサポート
Azure Filesのストレージ  ストレージアカウント  Standard (汎用v2)  Premium (FileStorage)  冗長性  ローカル冗長ストレージ (LRS)  ゾーン冗長ストレージ (ZRS)  Geo 冗長ストレージ (GRS)  Geo ゾーン冗長ストレージ (GZRS)  暗号化  マネージド キーによる暗号化  NTFS  NTFS固有機能(8.3形式・NTFS圧縮・代替データストリーム等)は未サ ポート
Azure Filesの基本構成  共有アクセス許可  既定の共有レベルのアクセス許可 SMB共有の共同作成者  SMB共有の管理者特権の共同作成者  SMB共有の閲覧者   特定のユーザーまたはグループに対するアクセス許可  ポータルからファイル共有のIAMでロールを追加する  NTFSアクセス許可  ドメインベースのACL設定が可能  管理時はストレージ共有キーでのアクセスを推奨
Microsoft Entra Kerberos  ドメインコントローラーとの接続を要さないKerberos認証  Microsoft Entra Hybrid Join環境が必須  KDC Proxyによるインターネット経由での「サービスチケッ ト」の受け取り  Entra ID認証時にクラウドTGTを取得  RealmマップによるKDC Proxyの構成とTGS要求  Entra IDによるTGS応答  Deep dive - Azure AD Kerberos の仕組み | Japan Azure Identity Support Blog (jpazureid.github.io)
検証環境  Windows Server 2025 ドメインコントローラー  Windows 11 Insider クライアント  Azureポータルでカスタムドメイン名を構成  Microsoft Entra Hybrid Joinを構成
Azureでのカスタムドメインの構成  Azureポータルでカスタムドメイン名を構成。オンプレミス ADのDNS名と同一のモノをAzure DNSに設定。
オンプレミス環境の構成  ドメインコントローラーの構成。Microsoft Entra Connect を追加インストール。  クライアントの構成。
ストレージアカウントの作成  Azureポータルからストレージアカウントを作成  Standardで通常は問題ない  パブリックアクセスで構成
ファイル共有の作成  ストレージアカウントの[データストレージ]ブレードからファ イル共有を作成  ストレージごとに1つのファイル共有が推奨  複数作る場合は、高負荷と低負荷を組み合わせるようにす る
Microsoft Entra Kerberos有効化  [データストレージ]-[ファイル共有]-[IDベースのアクセス] から設定  ドメイン名とドメインGUIDが必要  Get-ADDomain | Select DNSRoot, objectGUID で取得 可能
API アクセス許可の設定  [Microsoft Entra ID]-[アプリの登録]-[すべてのアプリ ケーション]からSAアプリを選択  [管理]-[APIのアクセス許可]でテナントからのアクセス許 可の同意を付与
共有レベルのアクセス許可の設定  [IDベースのアクセス]から[認証されているすべてのユーザーとグ ループについてアクセス許可を有効にする]  SMB共有の共同作成者:変更  SMB共有の管理者特権の共同作成者:+ACL変更権取得  SMB共有の閲覧者:読み取りと実行  設定後利用可能になるのは、「数時間後」なので注意!
GPOの設定  [ログオン中にAzure AD Kerberosチケット保証チケットの 取得を許可する]ポリシーを有効にする  クライアントコンピューターに適用する  クライアントがクラウドTGTを取得できるようになる
NTFSアクセス許可の設定  ストレージアカウントの共有アクセスキーでのネットワーク ドライブ接続  net use Z: \\<SA名>.file.core.windows.net\<共有名> /user:localhost\<SA名> <共有アクセスキー>  操作マシンがドメインコントローラーと直接通信できること  フルコントロールが可能  「管理者特権の共同作成者」でも新規構築は可能だが、 移行環境で問題がでることがある
オンプレミスでのアクセス  問題なくアクセスが可能  シングルサインオン  ACLに添ったアクセス結果
インターネットでのアクセス  問題なくアクセスが可能  シングルサインオン  ACLに添ったアクセス結果
KDCチケットはどうなっている?  オンプレミスでは「プライマリTGT」「クラウドTGT」「CIFS」 のチケットを保持
KDCチケットはどうなっている?  クラウドでは「クラウドTGT」「CIFS」のチケットを保持
まとめ  SMBはやっぱりKerberosでアクセスしたい、という要望は まだまだ健在なのだな、と実感。それに合わせたSSOが 簡単にできるMicrosoft Entra Kerberosは、クラウドシフト の決定版といえそう。  設定はとても簡単ですが、ACLがすぐ使えないので、ここ はゆっくり待ちましょう。  今回は紹介していませんが、実はオンプレto Azure移行 がキモかと。機会をあらためて、紹介できればと考えてい ます。
参考情報  Azure Files の概要 | Microsoft Learn  Azure Files のデプロイの計画 | Microsoft Learn  Azure Files のネットワークに関する考慮事項 | Microsoft Learn  Azure Files データ保護の概要 | Microsoft Learn  概要 - Azure Files の ID ベースの認証 | Microsoft Learn