You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用PowerShell的Az CLI将Azure存储的.bacpac复制到AWS S3?是否需双平台登录?

将Azure存储的.bacpac文件复制到AWS S3存储桶的操作指南

是的,必须同时完成Azure和AWS的身份验证——因为你需要读取Azure存储中的文件,同时向AWS S3存储桶写入数据,两边的服务都需要验证你的操作权限。

以下是具体操作步骤:

1. 登录Azure(使用Az CLI)

在PowerShell中执行命令完成Azure身份验证:

az login

按照提示在浏览器中完成登录即可。如果你的账号关联多个Azure订阅,需指定目标订阅:

az account set --subscription "你的订阅ID/订阅名称"

2. 生成Azure存储文件的临时SAS访问链接

Az CLI无法直接跨云推送文件到S3,因此需要先生成一个带读取权限的临时SAS链接,用于获取.bacpac文件内容:

# 设置SAS链接有效期(示例为2小时,可按需调整)
$expiryDate = (Get-Date).AddHours(2).ToString("yyyy-MM-ddTHH:mm:ssZ")
# 生成SAS令牌
$sasToken = az storage blob generate-sas --account-name 你的存储账户名 --container-name 你的容器名 --name 目标文件.bacpac --permissions r --expiry $expiryDate --output tsv
# 拼接完整的文件访问URL
$sourceUrl = "https://你的存储账户名.blob.core.windows.net/你的容器名/目标文件.bacpac?$sasToken"

3. 配置AWS身份验证

在PowerShell中配置AWS凭证,执行:

aws configure

按照提示依次输入你的AWS Access Key ID、Secret Access Key、默认区域(如us-east-1)和输出格式(可选,如json)。

如果不想持久化保存凭证,也可以临时设置环境变量:

$env:AWS_ACCESS_KEY_ID = "你的AWS Access Key ID"
$env:AWS_SECRET_ACCESS_KEY = "你的AWS Secret Access Key"
$env:AWS_DEFAULT_REGION = "你的目标S3区域"

4. 复制文件到S3存储桶

使用AWS CLI的s3 cp命令完成跨云复制:

aws s3 cp $sourceUrl s3://你的S3桶名/目标路径/目标文件.bacpac

替换命令中的桶名和目标路径为你的实际信息。

可选:验证复制结果

执行以下命令检查S3桶中的文件是否存在:

aws s3 ls s3://你的S3桶名/目标路径/

内容的提问来源于stack exchange,提问作者Sally

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 14:27:43