我正在创建一个 Electron.js 应用程序,并且我正在使用 S3 来托管我的应用程序的新版本。我不能将 S3 存储桶向公众开放,我需要将其仅限于将使用该应用程序的公司中的用户。因此,我决定通过公司的 IP 地址来限制对存储桶的访问。但是,当 Electron-updater 检查更新时,我收到错误:HttpError:403 Forbidden。这是我正在使用的存储桶策略:
{
"Version": "2012-10-17",
"Id": "S3PolicyId1",
"Statement": [
{
"Sid": "IPAllow",
"Effect": "Deny",
"Principal": "*",
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::BUCKETNAME",
"arn:aws:s3:::BUCKETNAME/*"
],
"Condition": {
"NotIpAddress": {
"aws:SourceIp": "Company's IP Address"
}
}
}
]
}
当Electron-Updater检查是否有新更新时,我收到错误:HttpError: 403 Forbidden。不应该,因为请求来自公司的 IP。我想知道是否可能由于某种原因请求来自不同的 IP。我尝试使用 S3 访问日志(我从未使用过它们),但在我创建的存储这些日志的存储桶中没有保存任何内容。我不知道问题是什么。