SMB アクセスに対する Azure Files の ID ベースの認証の概要
この記事では、オンプレミスまたは Azure で ID ベースの認証を使って、SMB による Azure ファイル共有への ID ベースのアクセスを有効にする方法について説明します。 Windows ファイル サーバーと同様に、ファイル共有、ディレクトリ、またはファイルのレベルで ID にアクセス許可を付与できます。 ストレージ アカウントで ID ベースの認証を有効にしても、追加のサービス料金は発生しません。
現在、ネットワーク ファイル システム (NFS) 共有では ID ベースの認証はサポートされていません。 ただし、Windows と Linux クライアントでは、SMB 経由で使用できます。
セキュリティ上の理由から、ファイル共有へのアクセスには、ストレージ アカウント キーを使うより、ID ベースの認証を使うことをお勧めします。
重要
ストレージ アカウント キーを共有しないでください。 代わりに ID ベースの認証を使ってください。
しくみ
Azure ファイル共有では、ID ソースでの認証に Kerberos プロトコルが使われます。 クライアントで実行されているユーザーまたはアプリケーションに関連付けられている ID が、Azure ファイル共有内のデータにアクセスしようとすると、要求は ID ソースに送信されて、ID の認証が行われます。 認証が成功した場合、ID ソースは Kerberos チケットを返します。 その後、クライアントは Kerberos トークンを含む要求を送信し、Azure Files はそのトークンを使って要求を認可します。 Azure Files サービスは Kerberos チケットのみを受け取り、ユーザーのアクセス資格情報は受け取りません。
一般的なユース ケース
SMB Azure ファイル共有での ID ベースの認証は、さまざまなシナリオで役に立ちます。
オンプレミスのファイル サーバーの置換
オンプレミスの分散したファイル サーバーの置き換えは、IT の最新化の過程で組織が直面する課題です。 Azure Files で ID ベースの認証を使うと、シームレスな移行エクスペリエンスが提供され、エンド ユーザーは同じ資格情報でデータに引き続きアクセスできます。
Azure へのアプリケーションのリフト アンド シフト
アプリケーションをクラウドにリフト アンド シフトするとき、ユーザーはおそらく、ファイル共有アクセスに同じ認証モデルが維持されることを望みます。 ID ベースの認証を使うと、ディレクトリ サービスを変更する必要がなくなり、クラウドを迅速に導入できます。
バックアップとディザスター リカバリー (DR)
主要なファイル ストレージをオンプレミスで保持している場合、Azure Files はビジネス継続性を向上させるためのバックアップや DR 用として理想的なソリューションです。 Azure ファイル共有を使うと、Windows の随意アクセス制御リスト (DACL) を維持しながら、ファイル サーバーをバックアップできます。 DR シナリオでは、フェールオーバー時の適切なアクセス制御の適用をサポートする認証オプションを構成できます。
ストレージ アカウントの ID ソースを選択する
ストレージ アカウントで ID ベースの認証を有効にする前に、使う ID ソースを把握しておく必要があります。 ほとんどの企業や組織には何らかの種類のドメイン環境が構成されているため、既に存在している可能性があります。 確認するには、Active Directory (AD) または IT の管理者に問い合わせてください。 ID ソースがまだない場合は、ID ベースの認証を有効にする前に構成する必要があります。
サポートされる認証シナリオ
SMB による ID ベースの認証を有効にするには、オンプレミスの Active Directory Domain Services (AD DS)、Microsoft Entra Domain Services、Microsoft Entra Kerberos (ハイブリッド ID のみ) の 3 つの ID ソースのいずれかを使用できます。 ファイル アクセスの認証に使用できる ID ソースはストレージ アカウントごとに 1 つだけであり、それがアカウント内のすべてのファイル共有に適用されます。
オンプレミスの AD DS: オンプレミスの AD DS クライアントと仮想マシン (VM) は、オンプレミスの Active Directory の資格情報を使って Azure ファイル共有にアクセスできます。 オンプレミスの AD DS 環境は、オンプレミスの Microsoft Entra Connect アプリケーションまたは Microsoft Entra Connect クラウド同期 (Microsoft Entra 管理センターからインストールできる軽量エージェント) のいずれかを使って、Microsoft Entra ID に同期する必要があります。 この認証方法を使うには、クライアントがドメインに参加しているか、AD DS に制限なしでネットワーク接続できる必要があります。 すべての前提条件の一覧をご覧ください。
ハイブリッド ID 用の Microsoft Entra Kerberos: Microsoft Entra ID を使ってハイブリッド ユーザー ID の認証を行うことができ、エンド ユーザーはドメイン コントローラーへのネットワーク接続を必要とせずに Azure ファイル共有にアクセスできます。 このオプションには AD DS の既存のデプロイが必要であり、Microsoft Entra ID でハイブリッド ID を認証できるようにそれが Microsoft Entra テナントと同期されます。 クラウド専用 ID でのこの方法の使用は、現在サポートされていません。 すべての前提条件の一覧をご覧ください。
Microsoft Entra Domain Services: Microsoft Entra Domain Services に参加しているクラウド ベースの VM は、Microsoft Entra の資格情報を使って Azure ファイル共有にアクセスできます。 このソリューションの Microsoft Entra ID では、お客様の Microsoft Entra テナントの子である従来の Windows Server AD ドメインが実行されます。 現在、クラウド専用 ID を認証するためのオプションは Microsoft Entra Domain Services だけです。 すべての前提条件の一覧をご覧ください。
次のガイドラインを使って、選ぶ ID ソースを決めてください。
組織に既にオンプレミスの AD があり、ID をクラウドに移動する準備ができていない場合で、クライアント、VM、アプリケーションがドメインに参加しているか、それらのドメイン コントローラーに制限なしでネットワーク接続できる場合は、AD DS を選びます。
一部またはすべてのクライアントが AD DS に制限なしでネットワーク接続できない場合、または Microsoft Entra 参加済み VM 用の Azure ファイル共有に FSLogix プロファイルを格納している場合は、Microsoft Entra Kerberos を選びます。
既存のオンプレミスの AD はあるが、アプリケーションをクラウドに移動する予定で、ID をオンプレミスとクラウドの両方に置きたい場合は、Microsoft Entra Kerberos を選びます。
既存の ID ソースがない場合、クラウド専用 ID の認証を行う必要がある場合、または Microsoft Entra Domain Services を既に使っている場合は、Microsoft Entra Domain Services を選びます。 Azure にドメイン サービスをまだデプロイしていない場合は、このサービスに対する Azure の請求に新しい料金が発生します。
ID ソースを有効にする
ID ソースを選んだら、ストレージ アカウントでそれを有効にする必要があります。
AD DS
AD DS 認証の場合は、クライアント コンピューターまたは VM をドメインに参加させる必要があります。 AD ドメイン コントローラーは、Azure VM またはオンプレミスでホストできます。 どちらの場合も、ドメイン参加済みのクライアントは、ドメイン コントローラーへの妨害されないネットワーク接続を必要とするため、ドメイン サービスの企業ネットワークまたは仮想ネットワーク (VNET) 内に存在する必要があります。
次の図は、SMB 経由の Azure ファイル共有に対するオンプレミス AD DS 認証を示しています。 オンプレミスの AD DS は、Microsoft Entra Connect 同期または Microsoft Entra Connect クラウド同期を使用して Microsoft Entra ID に同期する必要があります。Azure ファイル共有アクセスのために認証および認可できるのは、オンプレミスの AD DS と Microsoft Entra ID の両方に存在するハイブリッド ユーザー ID だけです。 これは、共有レベルのアクセス許可が Microsoft Entra ID で表される ID に対して構成されるのに対して、ディレクトリまたはファイル レベル アクセス許可は AD DS 内の ID で適用されるためです。 同じハイブリッド ユーザーに対してアクセス許可を正しく構成するようにしてください。
AD DS 認証を有効にする方法については、最初に「概要: SMB を使用した Azure ファイル共有へのオンプレミスの Active Directory Domain Services 認証」を読んだ後、「Azure ファイル共有に対して Active Directory Domain Services 認証を有効にする」をご覧ください。
ハイブリッド ID 用の Microsoft Entra Kerberos
ハイブリッド ユーザー ID を認証するために Microsoft Entra ID を有効にして構成すると、Microsoft Entra ユーザーは、Kerberos 認証を使用して Azure ファイル共有にアクセスできます。 この構成では、Microsoft Entra ID を使って、業界標準の SMB プロトコルでファイル共有にアクセスするための Kerberos チケットを発行します。 つまり、エンド ユーザーは、ドメイン コントローラーへのネットワーク接続がなくても、Microsoft Entra ハイブリッド参加済みと Microsoft Entra 参加済みの VM から Azure ファイル共有にアクセスできます。 ただし、ユーザーとグループに対してディレクトリおよびファイル レベルのアクセス許可を構成するには、オンプレミスのドメイン コントローラーへの妨害されないネットワーク接続が必要です。
重要
Microsoft Entra Kerberos 認証ではハイブリッド ユーザー ID しかサポートされず、クラウド専用 ID はサポートされていません。 従来の AD DS のデプロイが必要であり、それが Microsoft Entra Connect 同期または Microsoft Entra Connect クラウド同期を使用して Microsoft Entra ID に同期されている必要があります。クライアントは、Microsoft Entra 参加済みまたは Microsoft Entra ハイブリッド参加済みである必要があります。 Microsoft Entra Kerberos は、Microsoft Entra Domain Services に参加済み、または AD のみに参加済みのクライアントではサポートされていません。
ハイブリッド ID に対して Microsoft Entra Kerberos 認証を有効にする方法については、「Azure Files 上でハイブリッド ID に対して Microsoft Entra Kerberos 認証を有効化する」をご覧ください。
また、この機能を使用して、Microsoft Entra 参加済み VM のための Azure ファイル共有に FSLogix プロファイルを格納することもできます。 詳細については、Azure Files と Microsoft Entra ID を使用したプロファイル コンテナーの作成に関するページを参照してください。
Microsoft Entra Domain Services
Microsoft Entra Domain Services 認証の場合は、Microsoft Entra Domain Services を有効にし、ファイル データのアクセスに使う予定の VM をドメイン参加させる必要があります。 ドメイン参加済みの VM は、Microsoft Entra Domain Services でホストされているドメインと同じ VNET に存在する必要があります。
次の図は、SMB を経由した Azure ファイル共有に対する Microsoft Entra Domain Services 認証のワークフローを表しています。 これはオンプレミスの AD DS 認証と同様のパターンに従いますが、大きな違いが 2 つあります。
ストレージ アカウントを表すために Microsoft Entra Domain Services に ID を作成する必要はありません。 これは、バックグラウンドで有効化プロセスによって実行されます。
Microsoft Entra ID に存在するすべてのユーザーを認証および認可できます。 ユーザーは、クラウドのみでもハイブリッドでもかまいません。 Microsoft Entra ID から Microsoft Entra Domain Services への同期は、ユーザーの構成を必要とすることなく、プラットフォームによって管理されます。 ただし、クライアントが Microsoft Entra Domain Services ホステッド ドメイン参加済みである必要があります。 これを Microsoft Entra 参加済みまたは登録済みにすることはできません。 Microsoft Entra Domain Services では、Azure 以外のクライアント (つまり、ユーザーのノート PC、ワークステーション、他のクラウド内の VM など) の Microsoft Entra Domain Services ホステッド ドメインへのドメイン参加はサポートされていません。 ただし、ドメインに参加していないクライアントからファイル共有をマウントすることは可能で、それには DOMAINNAME\username などの明示的な資格情報を指定するか、完全修飾ドメイン名 (username@FQDN) を使用します。
Microsoft Entra Domain Services 認証を有効にする方法については、「Azure Files に対する Microsoft Entra Domain Services 認証を有効にする」をご覧ください。
承認とアクセス制御
選んだ ID ソースに関係なく、それを有効にしたら、認可を構成する必要があります。 Azure Files では、共有レベルとディレクトリやファイル レベルの両方で、ユーザー アクセスに認可が適用されます。
Azure RBAC で管理されている Microsoft Entra のユーザーまたはグループに、共有レベルのアクセス許可を割り当てることができます。 Azure RBAC では、ファイル アクセスに使用できる資格情報を使用可能にするか、または Microsoft Entra ID に同期する必要があります。 Microsoft Entra ID 内のユーザーまたはグループに記憶域ファイル データの SMB 共有の閲覧者などの Azure 組み込みロールを割り当てて、ファイル共有へのアクセスを許可できます。
ディレクトリやファイルのレベルでは、Azure Files は Windows ACL の維持、継承、適用をサポートしています。 既存のファイル共有と Azure ファイル共有の間で SMB 経由でデータをコピーするとき、Windows ACL を維持することを選択できます。 承認を適用するかどうかにかかわらず、Azure ファイル共有を利用し、データと共に ACL をバックアップできます。
共有レベルのアクセス許可を構成する
ストレージ アカウントで ID ソースを有効にした後、ファイル共有にアクセスするには、次のいずれかを行う必要があります。
- 認証されたすべてのユーザーとグループに適用される既定の共有レベルのアクセス許可を設定する
- 組み込みの Azure RBAC ロールをユーザーとグループに割り当てる。または
- Microsoft Entra ID のカスタム ロールを構成し、ストレージ アカウント内のファイル共有へのアクセス権を割り当てる。
割り当てられた共有レベルのアクセス許可では、付与された ID は共有のみにアクセスできます。それ以外には、ルート ディレクトリであってもアクセスできません。 その場合でも、ディレクトリとファイル レベルのアクセス許可を別に構成する必要があります。
Note
コンピューター アカウントは Microsoft Entra ID 内の ID に同期できないため、Azure RBAC を使ってコンピューター アカウント (マシン アカウント) に共有レベルのアクセス許可を割り当てることはできません。 ID ベースの認証を使ってコンピューター アカウントから Azure ファイル共有へのアクセスを許可する場合は、既定の共有レベルのアクセス許可を使うか、代わりにサービス ログオン アカウントを使うことを検討してください。
ディレクトリまたはファイル レベルのアクセス許可を構成する
Azure ファイル共有では、ルート ディレクトリを含む、ディレクトリとファイルの両方のレベルで、標準の Windows ACL が適用されます。 ディレクトリ レベルまたはファイル レベルの権限の構成は、SMB 経由および REST 経由での構成がサポートされています。 VM 上で対象のファイル共有をマウントし、Windows のエクスプローラー、Windows の icacls または Set-ACL コマンドを使用して権限を構成します。
Azure Files にデータをインポートするときに、ディレクトリとファイルの ACL を維持する
Azure Files では、Azure ファイル共有にデータをコピーするときに、ディレクトリまたはファイル レベルの ACL の維持がサポートされています。 Azure File Sync または一般的なファイル移動ツールセットを使用して、ディレクトリまたはファイルの ACL を Azure ファイル共有にコピーできます。 たとえば、robocopy を /copy:s
フラグと共に使用して、Azure ファイル共有にデータや ACL をコピーすることができます。 ACL は既定で保持されるので、ACL を保持するために、ストレージ アカウントで ID ベースの認証を有効にする必要はありません。
用語集
Azure ファイル共有の ID ベース認証に関連するいくつかの重要な用語を理解することをお勧めします。
Kerberos 認証
Kerberos は、ユーザーまたはホストの身元を確認するために使用される認証プロトコルです。 Kerberos の詳細については、「Kerberos 認証の概要」を参照してください。
サーバー メッセージ ブロック (SMB) プロトコル
SMB は、業界標準のネットワーク ファイル共有プロトコルです。 SMB の詳細については、「Microsoft SMB プロトコルと CIFS プロトコルの概要」を参照してください。
Microsoft Entra ID
Microsoft Entra ID (旧称 Azure AD) は、Microsoft のマルチテナント クラウドベースのディレクトリと ID の管理サービスです。 Microsoft Entra ID では、コア ディレクトリ サービス、アプリケーション アクセス管理、ID 保護が 1 つのソリューションに結合されています。
Microsoft Entra Domain Services
Microsoft Entra Domain Services は、ドメイン参加、グループ ポリシー、LDAP、Kerberos/NTLM 認証などのマネージド ドメイン サービスを提供します。 これらのサービスは、Active Directory Domain Services と完全に互換性があります。 詳細については、Microsoft Entra Domain Services に関するページを参照してください。
オンプレミス Active Directory Domain Services (AD DS)
AD DS は、通常、オンプレミス環境またはクラウドホステッド VM 環境の企業によって採用され、アクセス制御には AD DS 資格情報が使用されます。 詳細については、「Active Directory Domain Services の概要」を参照してください。
Azure ロールベースのアクセス制御 (Azure RBAC)
Azure RBAC を使用すると、Azure のきめ細かいアクセス管理が可能になります。 Azure RBAC を使用して業務遂行に必要な最小限の権限をユーザーに付与することで、リソースへのアクセスを管理できます。 詳細については、Azure ロールベースのアクセス制御に関するページを参照してください。
ハイブリッド ID
ハイブリッド ユーザー ID は、オンプレミスの Microsoft Entra Connect 同期アプリケーションか、または Microsoft Entra 管理センターからインストールできる軽量エージェントである Microsoft Entra Connect クラウド同期のどちらかを使用して Microsoft Entra ID に同期される AD DS 内の ID です。
次のステップ
詳細については、以下を参照してください: