Azure ファイル共有をマウントする
この記事を始める前に、SMB 経由でディレクトリおよびファイル レベルのアクセス許可を構成する方法に関する記事を読んでいることを確認してください。
この記事で説明するプロセスでは、SMB ファイル共有とアクセス許可が正しく設定されていること、および SMB Azure ファイル共有をマウントできることを確認します。 共有レベルのロールの割り当ては、有効になるまでに時間がかかる場合があることに注意してください。
アクセス許可を付与した ID の資格情報を使用してクライアントにサインインします。
適用対象
ファイル共有の種類 | SMB | NFS |
---|---|---|
Standard ファイル共有 (GPv2)、LRS/ZRS | ||
Standard ファイル共有 (GPv2)、GRS/GZRS | ||
Premium ファイル共有 (FileStorage)、LRS/ZRS |
前提条件のマウント
Azure ファイル共有をマウントする前に、次の前提条件を完了していることを確認してください。
- 対象のストレージ アカウント キーを使用してファイル共有に以前に接続したクライアントからファイル共有をマウントする場合は、その共有を切断したこと、ストレージ アカウント キーの永続的な資格情報を削除したこと、および認証に AD DS 資格情報を現在使用していることを確認してください。 AD DS または Microsoft Entra の資格情報を使って新しい接続を初期化する前にストレージ アカウント キーのキャッシュされた資格情報を削除し、既存の SMB 接続を削除する方法については、FAQ のページにある 2 段階のプロセスに従ってください。
- クライアントには、AD DS とのスムーズなネットワーク接続が必要です。 お使いのマシンまたは VM が AD DS によって管理されているネットワークの外にある場合、VPN を有効にして、認証のために AD DS に到達できるようにする必要があります。
ドメイン参加済みの VM からファイル共有をマウントする
以下の PowerShell スクリプトを実行するか、Azure portal を使用して、Azure ファイル共有を永続的にマウントし、Windows 上の Z: ドライブにマップします。 Z: が既に使用されている場合は、使用可能なドライブ文字に置き換えます。 このスクリプトでは、このストレージ アカウントに TCP ポート 445 (SMB が使用するポート) を介してアクセスできるかどうかを確認します。 プレースホルダーをお客様独自の値に置き換えてください。 詳細については、Windows での Azure ファイル共有の使用に関する記事を参照してください。
カスタム ドメイン名を使用しない限り、共有のプライベート エンドポイントを設定した場合でも、サフィックス file.core.windows.net
を使用して Azure ファイル共有をマウントする必要があります。
$connectTestResult = Test-NetConnection -ComputerName <storage-account-name>.file.core.windows.net -Port 445
if ($connectTestResult.TcpTestSucceeded) {
cmd.exe /C "cmdkey /add:`"<storage-account-name>.file.core.windows.net`" /user:`"localhost\<storage-account-name>`""
New-PSDrive -Name Z -PSProvider FileSystem -Root "\\<storage-account-name>.file.core.windows.net\<file-share-name>" -Persist -Scope global
} else {
Write-Error -Message "Unable to reach the Azure storage account via port 445. Check to make sure your organization or ISP is not blocking port 445, or use Azure P2S VPN, Azure S2S VPN, or Express Route to tunnel SMB traffic over a different port."
}
Windows プロンプトから net-use
コマンドを使用して、ファイル共有をマウントすることもできます。 忘れずに、<YourStorageAccountName>
と<FileShareName>
を独自の値に置き換えてください。
net use Z: \\<YourStorageAccountName>.file.core.windows.net\<FileShareName>
問題が発生した場合は、「AD 資格情報を使用して Azure ファイル共有をマウントできない」を参照してください。
ドメイン参加していない VM または別の AD ドメインに参加している VM からファイル共有をマウントする
ドメインに参加していない VM またはストレージ アカウントとは異なる AD ドメインに参加している VM は、ドメイン コントローラーへのネットワーク接続が妨げられず、明示的な資格情報 (ユーザー名とパスワード) を提供している場合、Azure ファイル共有にアクセスできます。 ファイル共有にアクセスするユーザーは、ストレージ アカウントが参加している AD ドメインの ID と資格情報が必要です。
ドメインに参加していない VM からファイル共有をマウントするには、username@domainFQDN の表記を使用します。ここで、domainFQDN は完全修飾ドメイン名です。 これによりクライアントはドメイン コントローラーに接続して、Kerberos チケットを要求および受信できます。 domainFQDN の値は、Active Directory PowerShell で (Get-ADDomain).Dnsroot
を実行することによって取得できます。
次に例を示します。
net use Z: \\<YourStorageAccountName>.file.core.windows.net\<FileShareName> /user:<username@domainFQDN>
Note
Azure Files では、ドメインに参加していない VM、または Windows エクスプローラーを使用して別のドメインに参加している VM のユーザーとグループの SID から UPN への変換はサポートされていません。 Windows のエクスプローラーを使用してファイルまたはディレクトリの所有者を表示したり、NTFS アクセス許可を表示/変更したりする場合は、ドメインに参加している VM からの場合のみそれを行うことができます。
カスタム ドメイン名を使用してファイル共有をマウントする
サフィックス file.core.windows.net
を使用して Azure ファイル共有をマウントしない場合は、Azure ファイル共有に関連付けられているストレージ アカウント名のサフィックスを変更してから、正規名 (CNAME) レコードを追加して、新しいサフィックスをストレージ アカウントのエンドポイントにルーティングできます。 次の手順は、単一フォレスト環境専用です。 2 つ以上のフォレストがある環境を構成する方法については、「複数の Active Directory フォレストで Azure Files を使用する」を参照してください。
Note
Azure Files では、ストレージ アカウント名をドメイン プレフィックスとして使用する CNAMES の構成のみがサポートされています。 ストレージ アカウント名をプレフィックスとして使用しない場合は、DFS 名前空間の使用を検討してください。
この例では、Active Directory ドメイン onpremad1.com があり、SMB Azure ファイル共有を含む mystorageaccount というストレージ アカウントがあります。 まず、ストレージ アカウントの SPN サフィックスを変更して、mystorageaccount.onpremad1.com を mystorageaccount.file.core.windows.net にマップする必要があります。
これにより、クライアントは net use \\mystorageaccount.onpremad1.com
を使用して共有をマウントできます。onpremad1 のクライアントが、そのストレージ アカウントに適したリソースを見つけるために onpremad1.com を検索すべきことを認識するからです。
この方法を使用するには、次の手順を実行します。
ID ベースの認証を設定し、AD ユーザー アカウントを Microsoft Entra ID に同期していることを確認します。
setspn
ツールを使用して、ストレージ アカウントの SPN を変更します。<DomainDnsRoot>
を見つけるには、Active Directory PowerShell コマンド(Get-AdDomain).DnsRoot
を実行します。setspn -s cifs/<storage-account-name>.<DomainDnsRoot> <storage-account-name>
Active Directory DNS マネージャーを使用して CNAME エントリを追加し、ストレージ アカウントが参加しているドメイン内のストレージ アカウントごとに、次の手順を実行します。 プライベート エンドポイントを使用している場合は、プライベート エンドポイント名にマップする CNAME エントリを追加します。
- Active Directory DNS マネージャーを開きます。
- ご自分のドメイン (たとえば、onpremad1.com) に移動します。
- [Forward Lookup Zones] (前方参照ゾーン) に移動します。
- ドメインの名前が付いたノード (onpremad1.com など) を選択し、[New Alias (CNAME)] (新しい別名 (CNAME)) を右クリックします。
- 別名には、ストレージ アカウント名を入力します。
- 完全修飾ドメイン名 (FQDN) には、「
<storage-account-name>
.<domain-name>
」 (例: mystorageaccount.onpremad1.com) を入力します。 FQDN のホスト名部分は、ストレージ アカウント名と一致する必要があります。 そうしないと、SMB セッションのセットアップ中にアクセス拒否エラーが発生します。 - ターゲット ホスト FQDN には、「
<storage-account-name>
.file.core.windows.net」と入力します - [OK] を選択します。
これで、storageaccount.domainname.com を使用してファイル共有をマウントできるようになりました。 ストレージ アカウント キーを使用してファイル共有をマウントすることもできます。
次のステップ
ストレージ アカウントを表すために AD DS で作成した ID が、パスワードのローテーションが適用されているドメインまたは OU 内にある場合は、AD DS でストレージ アカウント ID のパスワードを更新することが必要な場合があります。