AD DS에서 스토리지 계정 ID의 암호 업데이트
암호 만료 시간을 적용하는 조직 구성 단위 또는 도메인에서 스토리지 계정을 나타내는 AD DS(Active Directory Domain Services) ID/계정을 등록한 경우 최대 암호 사용 기간 전에 암호를 변경해야 합니다. 조직에서 암호가 만료되면 계정을 삭제하는 자동화된 정리 스크립트를 실행할 수 있습니다. 이런 이유로, 암호가 만료되기 전에 암호를 변경하지 않으면 계정이 삭제되어 Azure 파일 공유에 액세스할 수 없게 됩니다.
의도하지 않은 암호 회전을 방지하려면 도메인에서 Azure Storage 계정을 온보딩하는 동안 Azure Storage 계정을 AD DS의 별도 조직 구성 단위에 배치해야 합니다. 기본 도메인 정책이나 특정 암호 정책이 적용되지 않도록 하려면 이 조직 구성 단위에서 그룹 정책 상속을 사용하지 않도록 설정합니다.
참고 항목
AD DS의 스토리지 계정 ID는 서비스 계정 또는 컴퓨터 계정일 수 있습니다. 서비스 계정 암호는 AD(Active Directory)에서 만료될 수 있습니다. 그러나 컴퓨터 계정 암호 변경은 AD가 아닌 클라이언트 컴퓨터에 의해 구동되므로 AD에서 만료되지 않습니다.
암호 교체를 트리거하는 데는 두 가지 옵션이 있습니다. AzFilesHybrid
모듈 또는 Active Directory PowerShell을 사용할 수 있습니다. 둘 다 사용하지 말고 한 가지 방법을 사용하세요.
적용 대상
파일 공유 유형 | SMB | NFS |
---|---|---|
표준 파일 공유(GPv2), LRS/ZRS | ||
표준 파일 공유(GPv2), GRS/GZRS | ||
프리미엄 파일 공유(FileStorage), LRS/ZRS |
옵션 1: AzFilesHybrid 모듈 사용
AzFilesHybrid 모듈에서 Update-AzStorageAccountADObjectPassword
cmdlet을 실행할 수 있습니다. 스토리지 계정에 대한 소유자 권한과 스토리지 계정을 나타내는 ID의 암호를 변경하려면 AD DS 권한이 있는 하이브리드 ID 온-프레미스 AD DS 조인 환경에서 이 명령을 실행해야 합니다. 이 명령은 스토리지 계정 키 회전과 유사한 작업을 수행합니다. 특히 스토리지 계정의 두 번째 Kerberos 키를 가져오고 이를 사용하여 AD DS에 등록된 계정의 암호를 업데이트합니다. 그런 다음 스토리지 계정의 대상 Kerberos 키를 다시 생성하고 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>"
이 작업은 AD 개체의 암호를 kerb1에서 kerb2로 변경합니다. 이는 kerb1에서 kerb2로 회전하고(kerb2는 설정되기 전에 스토리지 계정에서 다시 생성됨) 몇 시간을 기다린 다음 다시 kerb1로 회전합니다(이 cmdlet도 마찬가지로 kerb1을 재생성함).
옵션 2: Active Directory PowerShell 사용
AzFilesHybrid
모듈을 다운로드하지 않으려면 Active Directory PowerShell을 사용할 수 있습니다.
Important
이 섹션의 Windows Server Active Directory PowerShell cmdlet은 상승된 권한으로 Windows PowerShell 5.1에서 실행해야 합니다. PowerShell 7.x 및 Azure Cloud Shell은 이 시나리오에서 작동하지 않습니다.
다음 스크립트에서 <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