一个容器的 Azure SAS
Azure SAS for one container
我能够从 Azure 门户为存储帐户生成 SAS 令牌,但我面临的问题解释如下-
存储帐户由两个容器组成。必须为我将提供 SAS 令牌的用户授予一个容器文件的访问权限,并且一个容器应该是完全私有的,这意味着用户无法看到该容器。
问题是,如果我正在生成 SAS 令牌并使用该 SAS 令牌登录到 Azure 资源管理器,我会看到两个容器,但我的要求是只看到 1 个容器。有没有什么方法可以通过使用 Azure 门户生成 SAS 令牌来仅授予一个容器的权限,而无需创建任何用于生成这些令牌的自定义应用程序。
最简单的方法是使用 powershell:
Set-AzureRmStorageAccount -Name 'name'
$sasToken = New-AzureStorageContainerSASToken -Permission r -ExpiryTime (Get-Date).AddHours(2.0) -Name 'container name'
您可以使用 -debug
开关发出此命令,捕获其余调用并使用该调用来模仿它,使用 arm 客户端或自定义应用程序或其他任何东西。
Azure CLI 替代方案:
az存储容器generate-sas--account-nameACCOUNT_NAME--account-keyACCOUNT_KEY--https-only-- -expiry 'YYYY-MM-DD' --name CONTAINER_NAME --permissions r
有效权限:(a)dd (c)reate (d)elete (l)ist (r)ead (w)rite
有关详细信息,请查看:az 存储容器 generate-sas -h
我能够从 Azure 门户为存储帐户生成 SAS 令牌,但我面临的问题解释如下-
存储帐户由两个容器组成。必须为我将提供 SAS 令牌的用户授予一个容器文件的访问权限,并且一个容器应该是完全私有的,这意味着用户无法看到该容器。
问题是,如果我正在生成 SAS 令牌并使用该 SAS 令牌登录到 Azure 资源管理器,我会看到两个容器,但我的要求是只看到 1 个容器。有没有什么方法可以通过使用 Azure 门户生成 SAS 令牌来仅授予一个容器的权限,而无需创建任何用于生成这些令牌的自定义应用程序。
最简单的方法是使用 powershell:
Set-AzureRmStorageAccount -Name 'name'
$sasToken = New-AzureStorageContainerSASToken -Permission r -ExpiryTime (Get-Date).AddHours(2.0) -Name 'container name'
您可以使用 -debug
开关发出此命令,捕获其余调用并使用该调用来模仿它,使用 arm 客户端或自定义应用程序或其他任何东西。
Azure CLI 替代方案:
az存储容器generate-sas--account-nameACCOUNT_NAME--account-keyACCOUNT_KEY--https-only-- -expiry 'YYYY-MM-DD' --name CONTAINER_NAME --permissions r
有效权限:(a)dd (c)reate (d)elete (l)ist (r)ead (w)rite
有关详细信息,请查看:az 存储容器 generate-sas -h