Active Directory Domain Services (AD DS) でストレージ アカウントにドメイン参加する場合は、AD プリンシパル (コンピューター アカウントまたはサービス アカウント) をパスワードで作成します。 AD プリンシパルのパスワードは、ストレージ アカウントの Kerberos キーの 1 つです。 AD プリンシパルの組織単位のパスワード ポリシーに応じて、認証の問題を回避するために、AD プリンシパルのパスワードを定期的にローテーションする必要があります。 有効期限が切れる前にパスワードを変更しないと、Azure ファイル共有に対する Kerberos 認証が失われることがあります。 一部の AD 環境では、自動クリーンアップ スクリプトを使用して、期限切れのパスワードを持つ AD プリンシパルを削除することもできます。
パスワードを定期的にローテーションする代わりに、ストレージ アカウントを表す AD プリンシパルを、パスワードのローテーションを必要としない組織単位に配置することもできます。
パスワードのローテーションをトリガーするには、2 つのオプションがあります。 AzFilesHybrid
モジュールまたは Active Directory PowerShell を使用できます。 両方の方法ではなく、いずれかの方法を使用してください。
適用対象
管理モデル | 課金モデル | メディア階層 | 冗長性 | 中小企業 | ネットワークファイルシステム(NFS) |
---|---|---|---|---|---|
Microsoft.Storage | プロビジョニング済み v2 | HDD (標準) | ローカル (LRS) | ![]() |
![]() |
Microsoft.Storage | プロビジョニング済み v2 | HDD (標準) | ゾーン (ZRS) | ![]() |
![]() |
Microsoft.Storage | プロビジョニング済み v2 | HDD (標準) | ジオ (GRS) | ![]() |
![]() |
Microsoft.Storage | プロビジョニング済み v2 | HDD (標準) | ジオゾーン (GZRS) | ![]() |
![]() |
Microsoft.Storage | プロビジョニング済み v1 | SSD (プレミアム) | ローカル (LRS) | ![]() |
![]() |
Microsoft.Storage | プロビジョニング済み v1 | SSD (プレミアム) | ゾーン (ZRS) | ![]() |
![]() |
Microsoft.Storage | 従量課金制 | HDD (標準) | ローカル (LRS) | ![]() |
![]() |
Microsoft.Storage | 従量課金制 | HDD (標準) | ゾーン (ZRS) | ![]() |
![]() |
Microsoft.Storage | 従量課金制 | HDD (標準) | ジオ (GRS) | ![]() |
![]() |
Microsoft.Storage | 従量課金制 | HDD (標準) | ジオゾーン (GZRS) | ![]() |
![]() |
オプション 1: AzFilesHybrid モジュールを使用する
ストレージ アカウントを表す AD プリンシパルのパスワードを再生成してローテーションするには、AzFilesHybrid モジュールの Update-AzStorageAccountADObjectPassword
コマンドレットを使用します。 Update-AzStorageAccountADObjectPassword
を実行するには、次の操作を行う必要があります。
- ドメインに参加しているクライアントからコマンドレットを実行します。
- ストレージ アカウントに対する所有者アクセス許可を持っている。
- ストレージ アカウントを表す AD プリンシパルのパスワードを変更するための AD DS アクセス許可を持っている。
# Update the password of the AD DS account registered for the storage account
# You may use either kerb1 or kerb2
Update-AzStorageAccountADObjectPassword `
-RotateToKerbKey kerb2 `
-ResourceGroupName "<your-resource-group-name-here>" `
-StorageAccountName "<your-storage-account-name-here>"
kerb2 にローテーションした後は、数時間待ってから、 Update-AzStorageAccountADObjectPassword
コマンドレットを使用して、両方の Kerberos キーが再生成されるように、もう一度 kerb1 に再生成してローテーションすることをお勧めします。
オプション 2: Active Directory PowerShell を使用する
AzFilesHybrid
モジュールをダウンロードしたくない場合、Active Directory PowerShell を使用できます。
重要
このセクション内の Windows Server Active Directory PowerShell コマンドレットは、昇格された特権を使用して Windows PowerShell 5.1 で実行する必要があります。
次のスクリプトの <___domain-object-identity>
を、環境に適した値に置き換えます。
$KeyName = "kerb1" # Could be either the first or second Kerberos key, this script assumes we're refreshing the first
$KerbKeys = New-AzStorageAccountKey -ResourceGroupName $ResourceGroupName -Name $StorageAccountName -KeyName $KeyName
$KerbKey = $KerbKeys.keys | Where-Object {$_.KeyName -eq $KeyName} | Select-Object -ExpandProperty Value
$NewPassword = ConvertTo-SecureString -String $KerbKey -AsPlainText -Force
Set-ADAccountPassword -Identity <___domain-object-identity> -Reset -NewPassword $NewPassword
AD DS アカウントのパスワードが Kerberos キーと一致するかどうかをテストする
AD DS アカウントのパスワードを更新した後、次の PowerShell コマンドを使用してテストできます。
Test-AzStorageAccountADObjectPasswordIsKerbKey -ResourceGroupName "<your-resource-group-name>" -Name "<your-storage-account-name>" -Verbose