Azure FilesへSMBでアクセスする際のIDベースの認証

このエントリは2020/02/26現在の情報に基づくものです。将来の機能追加や変更に伴い、記載内容との乖離が発生する可能性があります。

SMB共有しているAzure Filesのリソースに対し、Azure Active Directory Domain Services (Azure AD DS) とActive Directory (AD) でのIDベースの認証が可能になった。

詳細は以下のドキュメントに記載がある。2020/02/25現在、日本語版が英語版に追従できていない、もしくは日本語版が存在しない。おそらく近いうちに日本語翻訳版のドキュメントができるはず(知らんけど)。

Overview of Azure Files identity-based authentication support for SMB access 
https://docs.microsoft.com/en-us/azure/storage/files/storage-files-active-directory-overview
[AADDSを使った認証] Enable Azure Active Directory Domain Services authentication on Azure Files 
https://docs.microsoft.com/en-us/azure/storage/files/storage-files-active-directory-enable
[ADを使った認証] Enable Active Directory authentication over SMB for Azure file shares 
https://docs.microsoft.com/en-us/azure/storage/files/storage-files-active-directory-domain-services-enable#regional-availability

メリット

以下のドキュメントの通りで、オンプレミスで出来たことをAzure Filesででも実現できる点が大きなメリット。

Advantages of identity-based authentication
https://docs.microsoft.com/en-us/azure/storage/files/storage-files-active-directory-overview#advantages-of-identity-based-authentication

ユースケース

メリットから分かる通り、主なユースケースは以下。

  • オンプレミスのファイルサーバーの置き換え
  • アプリケーションのLift & Shift
  • オンプレミスのファイルサーバーのバックアップ

Common Use cases
https://docs.microsoft.com/en-us/azure/storage/files/storage-files-active-directory-overview#common-use-cases

利用可能なディレクトリ

  • Azure AD Domain Services (GA)
  • Active Directory (Preview)

注意点

利用できないリージョン(Active Directoryを使った認証のみ)

Active Directoryを使った認証は2020/02/26現在以下のリージョンでは利用できない。

  • West US
  • West US 2
  • East US
  • East US 2
  • West Europe
  • North Europe

サポートしないシナリオ

  • コンピュータアカウントに対する認証はサポートしない(サービスログオンアカウントを使った認証は可能)
  • AADDS認証ではAADのクラウドに参加したデバイスに対する認証はサポートしない

制限事項

  • 一つのDirectoryのみ選択できる(複数のDirectoryで認証できない)
  • Active Directoryによる認証はPreviewのため、SLAはない

試してみる

AADDSがデプロイ済みである条件下で、ストレージアカウントを作成する。このとき、Azure CLIであれば –enable-files-aadds true を付加する。

# Azure CLI
# Create a new storage account
az storage account create -n <storage-account-name> -g <resource-group-name> --location <location> --sku <SKU> --enable-files-aadds true

# Update a new storage account
az storage account update -n <storage-account-name> -g <resource-group-name> --enable-files-aadds true

上記コマンドを実行すると、AADDSを使ったファイル共有のIDベースのアクセスが有効化されていることをAzure Portalから確認できる。その下にも、ADのドメイン参加に関するリンクがあることがわかる。

あとはふつうにAzure Filesをストレージアカウント、ストレージアカウントキーを使って作成する。以下の例ではmyshareという共有を作成している。

STORAGEKEY=$(az storage account keys list \
    -g <resource-group-name> \
    --account-name $STORAGEACCT \
    --query "[0].value" | tr -d '"')

az storage share create \
    --account-name $STORAGEACCT \
    --account-key $STORAGEKEY \
    --name "myshare"

IDにアクセス権限を付与する場合、Azure CLIでは以下のようなコマンドを実行する。この例はビルトインロールを対象のIDに割り当てている。

#Assign the built-in role to the target identity: Storage File Data SMB Share Reader, Storage File Data SMB Share Contributor, Storage File Data SMB Share Elevated Contributor
az role assignment create --role "<role-name>" --assignee <user-principal-name> --scope "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account>/fileServices/default/fileshares/<share-name>"

あとは通常のWindows Serverでのファイル共有と同様、NTFSの権限を付与する流れ。

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google フォト

Google アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中