gpt4 book ai didi

azure - Powershell - Azure 存储帐户 - 获取上次身份验证时间/日期

转载 作者:行者123 更新时间:2023-12-03 02:26:16 27 4
gpt4 key购买 nike

尝试获取未使用的存储帐户的列表。我尝试走 LastModified 路线,但有几个问题,首先,这只适用于 Blob 存储,其次,如果容器的命名带有美元符号(例如 $web),则 Get-AzStorageBlob 会出错。

有人知道实现此目标的更好方法吗?我在想,如果我可以列出存储帐户上次进行身份验证的时间,可以给我我想要的东西,但在尝试时却一片空白。

最佳答案

我一直在使用以下逻辑并成功满足类似的要求。

逻辑:

您基本上可以遍历每个存储帐户,找到其中的每个容器,根据上次修改日期(降序)对它们进行排序 - 选择最上面的 - 检查它是否超过 90(根据您的要求的任意天数) ) 天。如果是,请继续删除它们。

代码片段:

#Setting the AzContext for the required subscription
Set-AzContext -SubscriptionId "<YOUR SUBSCRIPTION ID>"

#Going through every storage account in the mentioned Subscription
foreach ($storageAccount in Get-AzStorageAccount)
{

#Storing the Account Name and Resource Group name which will be used in the below steps
$storageAccountName = $storageAccount.StorageAccountName
$resourceGroupName = $storageAccount.ResourceGroupName


# Getting the storage Account Key - it could be any 1 of the key. Taken the first key for instance.
$storageAccountKey = (Get-AzStorageAccountKey -Name $storageAccountName -ResourceGroupName $resourceGroupName).Value[0]

# Create storage account context using above key
$storagecontext = New-AzStorageContext -StorageAccountName $storageAccountName -StorageAccountKey $storageAccountKey

#Gets all the Storage Container within the Storage Account
#Sorts them in descending order based on the LastModified
#Picks the Topmost or most recently modified date
$lastModified = Get-AzStorageContainer -Context $storagecontext | Sort-Object -Property @{Expression = {$_.LastModified.DateTime}} | Select-Object -Last 1 -ExpandProperty LastModified

# Remove storage account if it is has not been in past 90 days

if ($lastModified.DateTime -lt (Get-Date).AddDays(-90))
{
Remove-AzStorageAccount -Name $storageAccountName -ResourceGroupName $resourceGroupName -Force
}
}

代码引用自此thread .

注意:

Get-AzStorageContainer - 不仅仅特定于 blob 存储。

回到您的其他问题: -

如果容器的名称带有美元符号(例如 $web),则 Get-AzStorageBlob 会出错。

这已在 Az.Storage 的更高版本中得到处理。我建议您升级模块并尝试一下。这已在thread中讨论过。 Az.Storage 的更高版本应该能够处理名为“$web”的容器

enter image description here

关于azure - Powershell - Azure 存储帐户 - 获取上次身份验证时间/日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66763313/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com