Azure Files SMBアクセスのIDベース認証設定手順
このブログシリーズ 「クラウドセキュリティ 実践集」 では、一般的なセキュリティ課題を取り上げ、「なぜ危険なのか?」 というリスクの解説から、 「どうやって直すのか?」 という具体的な修復手順(コンソール、Azure CLI、Terraformなど)まで、分かりやすく解説します。
この記事では、Azure FilesへのSMBアクセスにおけるIDベース認証の設定について、リスクと対策を解説します。

ポリシーの説明
Azure FilesのIDベース認証は、ユーザーがActive Directory(AD)またはAzure AD/Microsoft Entra IDの資格情報を使用してファイル共有にアクセスできるようにする機能です。これにより、ストレージアカウントキーを使用する代わりに、Kerberosベースの認証を通じてSMBアクセスが可能になり、既存のIDプロバイダーとの統合、Windows ACL(アクセス制御リスト)を使用した詳細なアクセス制御、シングルサインオン(SSO)が実現できます。
IDベース認証の主要な利点
- ゼロトラストセキュリティ: すべてのアクセスをIDベースで検証
- 詳細な権限管理: ファイル/フォルダレベルでNTFS権限を設定
- 監査証跡: ユーザーレベルでのアクセスログ記録
- パスワードレス認証: Windows統合認証によるシームレスなアクセス
- 条件付きアクセス: Entra IDの条件付きアクセスポリシーを適用可能
修復方法
コンソールでの修復手順
Azure コンソールを使用して、Azure FilesのSMBアクセスにIDベース認証を設定します。
前提条件
- 必要な権限
- Azure サブスクリプション: Contributor以上
- Entra ID: Global Administrator または Cloud Application Administrator
- オンプレミスAD: Domain Admins(AD DS統合の場合)
- ネットワーク要件
- SMBポート445が開放されていること
- DNS解決が正しく構成されていること
- Kerberosポート88(TCP/UDP)が利用可能
- クライアント要件
- Windows 10 バージョン 1809以降
- Windows Server 2019以降
- macOS Big Sur以降(限定サポート)
方法1: Microsoft Entra ID Kerberosを使用(ハイブリッドIDに推奨)
- ストレージアカウントでMicrosoft Entra ID Kerberosを有効化
- Azure Portal (https://portal.azure.com) にログイン
- 対象のストレージアカウントに移動
- 左メニューから「データストレージ」→「ファイル共有」を選択
- 上部メニューの「Active Directory」をクリック
- 「設定の構成」をクリック
- 認証方法の選択:
- 「Microsoft Entra Kerberos」を選択
- 「Microsoft Entra ID でのKerberos認証を有効にする」にチェック
- 構成の確認:
- ドメイン名: 自動的に設定される
- ドメインGUID: 自動的に生成される
- 「保存」をクリックして設定を適用

- ストレージアカウントの共有レベル権限を構成
- ストレージアカウントの「アクセス制御 (IAM)」に移動
- 「+ 追加」→「ロールの割り当てを追加」をクリック
- 利用可能なロール:
Storage File Data SMB Share Elevated Contributor: フルコントロール(管理者用)Storage File Data SMB Share Contributor: 読み取り/書き込み/削除Storage File Data SMB Share Reader: 読み取り専用
- 割り当て手順:
- 適切なロールを選択して「次へ」
- アクセスの割り当て先: 「ユーザー、グループ、またはサービスプリンシパル」
- 「+ メンバーを選択する」をクリック
- Entra IDグループまたはユーザーを検索して選択
- 「レビューと割り当て」をクリック


- クライアントマシンの構成
A. グループポリシー(ドメイン参加済みマシン):
グループポリシー管理エディターを開く: 1. コンピューターの構成 → 管理用テンプレート → システム → Kerberos 2. 「CloudKerberosTicketRetrievalを許可する」を有効化 3. gpupdate /force を実行して即座に適用B. Intune(クラウド管理デバイス):
- Microsoft Endpoint Manager admin centerにログイン
- 「デバイス」→「構成プロファイル」→「+ プロファイルの作成」
- プラットフォーム: Windows 10以降
- プロファイルの種類: 設定カタログ
- 設定を追加:
Administrative Templates > System > Kerberos Enable CloudKerberosTicketRetrievalEnabled = Enabled
C. レジストリ(手動設定):
reg add HKLM\SYSTEM\CurrentControlSet\Control\Lsa\Kerberos\Parameters /v CloudKerberosTicketRetrievalEnabled /t REG_DWORD /d 1 /f - ファイル共有のマウントと確認
マウントコマンド(資格情報不要):
# ドライブレターでマウント net use Z: \\storageaccount.file.core.windows.net\sharename /persistent:yes # マウント状態の確認 net use # Kerberos チケットの確認 klistトラブルシューティング:
# DNS解決の確認 nslookup storageaccount.file.core.windows.net # ポート445の接続確認 Test-NetConnection -ComputerName storageaccount.file.core.windows.net -Port 445 # Kerberosチケットのリフレッシュ klist purge klist get krbtgt
方法2: オンプレミスActive Directory Domain Services (AD DS)を使用
- AzFilesHybridモジュールのセットアップ
モジュールのダウンロードとインストール:
# 管理者権限でPowerShellを起動 # TLS 1.2を有効化 [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 # AzFilesHybridモジュールをダウンロード Invoke-WebRequest -Uri <https://github.com/Azure-Samples/azure-files-samples/releases/latest/download/AzFilesHybrid.zip> -OutFile AzFilesHybrid.zip # 展開 Expand-Archive -Path .\AzFilesHybrid.zip -DestinationPath .\AzFilesHybrid # モジュールのインポート cd .\AzFilesHybrid .\CopyToPSPath.ps1 Import-Module -Name AzFilesHybrid -Force - ストレージアカウントをADドメインに参加
# Azureに接続 Connect-AzAccount Select-AzSubscription -SubscriptionId "<your-subscription-id>" # ドメイン情報の確認 $DomainName = (Get-ADDomain).DNSRoot $DomainGuid = (Get-ADDomain).ObjectGUID.ToString() $DomainSid = (Get-ADDomain).DomainSID.Value $ForestName = (Get-ADForest).Name $NetBiosDomainName = (Get-ADDomain).NetBIOSName # ストレージアカウントをADに参加 Join-AzStorageAccountForAuth ` -ResourceGroupName "your-rg" ` -StorageAccountName "yourstorageaccount" ` -DomainAccountType "ComputerAccount" ` -OrganizationalUnitDistinguishedName "OU=AzureStorage,OU=Servers,DC=domain,DC=com" ` -EncryptionType "AES256,RC4" # 設定の確認 $storageAccount = Get-AzStorageAccount -ResourceGroupName "your-rg" -Name "yourstorageaccount" $storageAccount.AzureFilesIdentityBasedAuth # ADコンピューターアカウントの確認 Get-ADComputer -Filter {Name -like "yourstorageaccount*"} - 共有レベルとNTFS権限の構成
A. Azure Portalで共有レベル権限を設定:
- ストレージアカウント → ファイル共有 → 対象の共有を選択
- 「アクセス制御 (IAM)」→「+ 追加」→「ロールの割り当てを追加」
- ADグループにロールを割り当て:
Domain\FileAdmins→ Storage File Data SMB Share Elevated ContributorDomain\FileUsers→ Storage File Data SMB Share ContributorDomain\FileReaders→ Storage File Data SMB Share Reader
- NTFS権限の詳細設定
初期マウント(管理者権限):
# ストレージアカウントキーを取得(初回のみ) $storageKey = (Get-AzStorageAccountKey -ResourceGroupName "your-rg" -Name "yourstorageaccount")[0].Value # 管理者権限でマウント $secureKey = ConvertTo-SecureString -String $storageKey -AsPlainText -Force $credential = New-Object System.Management.Automation.PSCredential -ArgumentList "Azure\yourstorageaccount", $secureKey New-PSDrive -Name X -PSProvider FileSystem -Root "\\yourstorageaccount.file.core.windows.net\sharename" -Credential $credential -PersistNTFS権限の設定:
# フォルダ構造の作成 New-Item -Path "X:\Departments" -ItemType Directory New-Item -Path "X:\Departments\Finance" -ItemType Directory New-Item -Path "X:\Departments\HR" -ItemType Directory # NTFS権限の設定例 # Finance部門のみアクセス可能 icacls "X:\Departments\Finance" /inheritance:r icacls "X:\Departments\Finance" /grant "Domain\Finance-Users:(OI)(CI)M" icacls "X:\Departments\Finance" /grant "Domain\Finance-Admins:(OI)(CI)F" icacls "X:\Departments\Finance" /grant "Domain\Domain Admins:(OI)(CI)F" # HR部門のみアクセス可能 icacls "X:\Departments\HR" /inheritance:r icacls "X:\Departments\HR" /grant "Domain\HR-Users:(OI)(CI)M" icacls "X:\Departments\HR" /grant "Domain\HR-Admins:(OI)(CI)F" icacls "X:\Departments\HR" /grant "Domain\Domain Admins:(OI)(CI)F" # 権限の確認 icacls "X:\Departments\Finance" icacls "X:\Departments\HR"設定後のクリーンアップ:
# 管理用ドライブの削除 Remove-PSDrive -Name X -Force # 今後はAD認証でアクセス net use Y: \\yourstorageaccount.file.core.windows.net\sharename /persistent:yes
重要な考慮事項
環境別の推奨設定
| 環境タイプ | 推奨認証方式 | 理由 |
|---|---|---|
| ハイブリッドID | Microsoft Entra Kerberos | シームレスなSSO、条件付きアクセス対応 |
| 完全オンプレミス | AD DS | 既存AD環境との完全統合 |
| クラウドオンリー | Azure AD DS | 管理オーバーヘッドの削減 |
| 開発/テスト | Microsoft Entra Kerberos | 簡単なセットアップ、低コスト |
最後に
この記事では、Azure FilesへのSMBアクセスにおけるIDベース認証の設定について、リスクと対策を解説しました。
IDベース認証を実装することで、以下の重要なメリットが得られます:
- セキュリティの強化: ストレージアカウントキーの露出リスクを完全に排除
- コンプライアンス準拠: GDPR、HIPAA、PCI-DSS等の規制要件を満たす
- 運用効率の向上: 既存のAD/Entra IDインフラを活用した統合管理
- 監査性の向上: ユーザーレベルでの詳細なアクセスログ
- ゼロトラスト実現: IDベースの継続的な検証とアクセス制御
特に以下のシナリオでは、IDベース認証の実装が強く推奨されます:
- 機密データを扱うファイル共有
- 複数部門で共有するストレージ
- 規制対象となるデータの保管
- リモートワーク環境でのファイルアクセス
この問題の検出は弊社が提供するSecurifyのCSPM機能で簡単に検出及び管理する事が可能です。 運用が非常に楽に出来る製品になっていますので、ぜひ興味がある方はお問い合わせお待ちしております。 最後までお読みいただきありがとうございました。この記事が皆さんの役に立てば幸いです。
CSPMについてはこちらで解説しております。併せてご覧ください。



