Azure SAS 令牌问题
Azure SAS Token issues
能否解决这些问题或欢迎任何反馈意见。
- 将 SAS 令牌用于 Azcopy 是否可以在没有 SAS 令牌的情况下完成,或者可以在另一个替代方案中执行此操作的方法
- 关于设置SAS token过期时间的建议,安全漏洞如何处理。
- 在 SAS 令牌上使用它是否可行,我们可以在使用 SAS 的 bash 脚本上每 1 小时自动生成一次。
如果你想上传大量文件到Azure blob,而且会花费很多时间,我建议你使用Azure AD身份验证。这可能是更好的方法。并且,Azcopy 支持多种 Azure AD 身份验证方式,例如托管身份、用户、服务主体。但是,请注意,无论您使用哪种方法,都需要为它们分配 Storage Blob Data Contributor
。详情请参考document
例如,我使用服务主体
- 创建服务主体并为服务分配 Reader 角色。
az login
az account set --subscription "<your subscription id>"
# it will assign Storage Blob Data Contributor to the sp at subscription level
az ad sp create-for-rbac -n "mysample" --role Storage Blob Data Contributor
- 使用 Powershell 登录 Azcopy
$env:AZCOPY_SPA_CLIENT_SECRET="$(Read-Host -prompt "Enter key")"
azcopy login --service-principal --application-id <application-id> --tenant-id=<tenant-id>
- 使用 azcopy
能否解决这些问题或欢迎任何反馈意见。
- 将 SAS 令牌用于 Azcopy 是否可以在没有 SAS 令牌的情况下完成,或者可以在另一个替代方案中执行此操作的方法
- 关于设置SAS token过期时间的建议,安全漏洞如何处理。
- 在 SAS 令牌上使用它是否可行,我们可以在使用 SAS 的 bash 脚本上每 1 小时自动生成一次。
如果你想上传大量文件到Azure blob,而且会花费很多时间,我建议你使用Azure AD身份验证。这可能是更好的方法。并且,Azcopy 支持多种 Azure AD 身份验证方式,例如托管身份、用户、服务主体。但是,请注意,无论您使用哪种方法,都需要为它们分配 Storage Blob Data Contributor
。详情请参考document
例如,我使用服务主体
- 创建服务主体并为服务分配 Reader 角色。
az login
az account set --subscription "<your subscription id>"
# it will assign Storage Blob Data Contributor to the sp at subscription level
az ad sp create-for-rbac -n "mysample" --role Storage Blob Data Contributor
- 使用 Powershell 登录 Azcopy
$env:AZCOPY_SPA_CLIENT_SECRET="$(Read-Host -prompt "Enter key")"
azcopy login --service-principal --application-id <application-id> --tenant-id=<tenant-id>
- 使用 azcopy