適用対象: ✔️ SMB Azure ファイル共有
Azure Files では、次の方法で Kerberos 認証プロトコルを使用したサーバー メッセージ ブロック (SMB) 経由の Windows ファイル共有の ID ベース認証がサポートされています。
- オンプレミスの Active Directory Domain Services (AD DS)
- Microsoft Entra Domain Services
- ハイブリッド ユーザー ID 用の Microsoft Entra Kerberos
この記事では、Azure ファイル共有での ID ベースの認証用に Microsoft Entra Domain Services (旧称 Azure Active Directory Domain Services) を有効にする方法に重点を置いて説明します。 この認証シナリオでは、Microsoft Entra 資格情報と Microsoft Entra Domain Services 資格情報は同じであり、同じように使用できます。
ストレージ アカウントのための適切な AD ソースを選択するために、「しくみ」のセクションを確認することを強くお勧めします。 設定は、選択する AD ソースによって異なります。
Azure Files を初めて使用する場合は、この記事を読む前に、計画ガイドに目を通すことをお勧めします。
注記
Azure Files は、RC4-HMAC および AES-256 暗号化を使った Microsoft Entra Domain Services での Kerberos 認証をサポートしています。 AES-256 を使用することをお勧めします。
Azure Files は、Microsoft Entra ID との全部または一部 (範囲指定) の同期を使った Microsoft Entra Domain Services の認証をサポートしています。 スコープ付き同期を使用する環境の場合、管理者は、Azure Files が同期されるプリンシパルに付与された Azure RBAC ロールの割り当てのみを受け入れていることに注意する必要があります。 Microsoft Entra ID から Microsoft Entra Domain Services に同期されていない ID に付与されたロールの割り当ては、Azure Files サービスによって無視されます。
前提条件
Azure ファイル共有に対して SMB 経由で Microsoft Entra Domain Services を有効にする前に、次の前提条件を満たしていることを確認してください。
Microsoft Entra テナントを選択または作成します。
新規または既存のテナントを使用できます。 アクセスするテナントとファイル共有は、同じサブスクリプションに関連付けられている必要があります。
新しい Microsoft Entra テナントを作成するには、Microsoft Entra テナントと Microsoft Entra サブスクリプションを追加します。 既存の Microsoft Entra テナントがあっても Azure ファイル共有で使うために新しいテナントを作成したい場合は、Microsoft Entra テナントの作成に関する記事を参照してください。
Microsoft Entra テナントに対して Microsoft Entra Domain Services を有効にします。
Microsoft Entra 資格情報を使った認証をサポートするには、Microsoft Entra テナントに対して Microsoft Entra Domain Services を有効にする必要があります。 Microsoft Entra テナントの管理者ではない場合は、管理者に連絡するとともに、Azure portal を使用して Microsoft Entra Domain Services を有効にするためのステップ バイ ステップ ガイダンスに従います。
通常、Microsoft Entra Domain Services のデプロイが完了するまでには 15 分ほどかかります。 次の手順に進む前に、Microsoft Entra Domain Services の正常性状態が [実行中] と表示されており、パスワード ハッシュ同期が有効になっていることを確認します。
Microsoft Entra Domain Services を使用して VM をドメイン参加させます。
Microsoft Entra 資格情報を使って VM から Azure ファイル共有にアクセスするには、VM が Microsoft Entra Domain Services にドメイン参加済みである必要があります。 VM のドメイン参加方法の詳細については、「Windows Server 仮想マシンのマネージド ドメインへの参加」を参照してください。 Azure ファイル共有を使用した SMB に対する Microsoft Entra Domain Services 認証は、Windows 7 または Windows Server 2008 R2 を超える OS バージョンを実行している Windows VM、または Ubuntu 18.04 以降を実行している Linux VM 、または同等の RHEL または SLES VM でのみサポートされます。
注記
ドメインに参加していない VM は、Microsoft Entra Domain Services のドメイン コントローラーへのネットワーク接続が妨げされていない場合にのみ、Microsoft Entra Domain Services 認証を使用して Azure ファイル共有にアクセスできます。 通常、この接続にはサイト間 VPN またはポイント対サイト VPN が必要です。
SMB Azure ファイル共有を選択または作成します。
Microsoft Entra テナントと同じサブスクリプションに関連付けられている新しいまたは既存の SMB Azure ファイル共有を選択します。 SMB Azure ファイル共有の作成に関するページを参照してください。 パフォーマンスを最適化するには、共有にアクセスする予定の VM と同じリージョンにファイル共有を配置することをお勧めします。
リージョン別の提供状況
すべての Azure パブリック リージョン、Gov リージョン、および中国リージョンで、Microsoft Entra Domain Services で Azure Files 認証を使用できます。
ワークフローの概要
次の図は、Azure Files の SMB 経由で Microsoft Entra Domain Services 認証を有効にするためのエンド ツー エンドのワークフローを示しています。
アカウントで Microsoft Entra Domain Services 認証を有効にする
Azure Files に対して SMB 経由での Microsoft Entra Domain Services 認証を有効にするには、Azure portal、Azure PowerShell、または Azure CLI を使用して、ストレージ アカウントでプロパティを設定します。 このプロパティを設定すると、関連付けられている Microsoft Entra Domain Services のデプロイにより、ストレージ アカウントが暗黙的に "ドメイン参加" します。 その後、ストレージ アカウント内のすべての新規および既存のファイル共有に対して、SMB 経由での Microsoft Entra Domain Services 認証が有効になります。
SMB 経由で Microsoft Entra Domain Services 認証を有効にできるのは、Microsoft Entra Domain Services を Microsoft Entra テナントに正常に展開した後だけです。 詳細については、前提条件を参照してください。
Azure portal を使用して SMB 経由での Microsoft Entra Domain Services 認証を有効にするには、次の手順に従います。
Azure portal で、既存のストレージ アカウントに移動するか、またはストレージ アカウントを作成します。
[データ ストレージ] > [ファイル共有] の順に選択します。
[ファイル共有の設定] セクションで、[ID ベースのアクセス: 未構成] を選択します。
[Microsoft Entra Domain Services] で [セットアップ] を選択し、チェック ボックスをオンにして機能を有効にします。
[保存] を選択します。
推奨: AES-256 暗号化を使用する
既定では、Microsoft Entra Domain Services 認証では Kerberos RC4 暗号化を使います。 次の手順に従って、代わりに Kerberos AES-256 暗号化を使用するように構成することをお勧めします。
このアクションを実行するには、ドメイン コントローラーに到達し、ドメイン オブジェクトへのプロパティの変更を要求するために、Microsoft Entra Domain Services によって管理されている Active Directory ドメインで操作を実行する必要があります。 次のコマンドレットは、Azure PowerShell コマンドレットではなく、Windows Server Active Directory PowerShell コマンドレットです。 この違いにより、Microsoft Entra Domain Services ドメインにドメイン参加しているクライアント コンピューターからこれらの PowerShell コマンドを実行する必要があります。
重要
このセクションの Windows Server Active Directory PowerShell コマンドレットは、Microsoft Entra Domain Services ドメインにドメイン参加しているクライアント マシンから Windows PowerShell 5.1 で実行する必要があります。 このシナリオでは、PowerShell 7.x と Azure Cloud Shell は機能しません。
必要なアクセス許可を持つ Microsoft Entra Domain Services ユーザーとして、ドメインに参加しているクライアント マシンにサインインします。 ドメイン オブジェクトの msDS-SupportedEncryptionTypes 属性に対する書き込みアクセス権が必要です。 通常、 AAD DC Administrators グループのメンバーには必要なアクセス許可があります。 通常の (管理者特権以外の) PowerShell セッションを開き、次のコマンドを実行します。
# 1. Find the service account in your managed domain that represents the storage account.
$storageAccountName= "<InsertStorageAccountNameHere>"
$searchFilter = "Name -like '*{0}*'" -f $storageAccountName
$userObject = Get-ADUser -filter $searchFilter
if ($userObject -eq $null)
{
Write-Error "Cannot find AD object for storage account:$storageAccountName" -ErrorAction Stop
}
# 2. Set the KerberosEncryptionType of the object
Set-ADUser $userObject -KerberosEncryptionType AES256
# 3. Validate that the object now has the expected (AES256) encryption type.
Get-ADUser $userObject -properties KerberosEncryptionType
重要
以前に RC4 暗号化を使用し、ストレージ アカウントを AES-256 を使用するように更新した場合は、クライアントで klist purge を実行し、ファイル共有を再マウントして、AES-256 で新しい Kerberos チケットを取得します。
次のステップ
- ユーザーにファイル共有へのアクセス権を付与するには、「共有レベルのアクセス許可を割り当てる」の手順に従います。