Jenkins AWS Steps 身份验证错误访问 s3
Jenkins AWS Steps authentication error accessing s3
背景
我正在尝试将文件上传到 Jenkins 中的 AWS S3 存储桶。我正在使用 AWS Steps 插件提供的 steps/closures。我正在使用 Access Key ID 和 Access Key Secret 并将其分别作为用户名和密码存储在 Credential 中经理.
代码
下面是我在声明性管道脚本中使用的代码
sh('echo "test" > someFile')
withAWS(credentials:'AwsS3', region:'us-east-1') {
s3Upload(file:'someFile', bucket:'ec-sis-integration-test', acl:'BucketOwnerFullControl')
}
sh('rm -f someFile')
这是凭据的屏幕截图,因为它们全局存储在凭据管理器中。
问题
每当我 运行 管道时,我都会收到以下错误
com.amazonaws.services.s3.model.AmazonS3Exception: Access Denied (Service: Amazon S3; Status Code: 403; Error Code: AccessDenied; Request ID: 5N9VEJBY5MDZ2K0W; S3 Extended Request ID: AJmuP635cME8m035nA6rQVltCCJqHDPXsjVk+sLziTyuAiSN23Q1j5RtoQwfHCDXAOexPVVecA4=; Proxy: null), S3 Extended Request ID: AJmuP635cME8m035nA6rQVltCCJqHDPXsjVk+sLziTyuAiSN23Q1j5RtoQwfHCDXAOexPVVecA4=
有谁知道为什么这不起作用?
故障排除
我已经通过我编写的一个小型 Java 应用程序对其进行测试,从而验证了访问密钥 ID 和访问密钥秘密组合是否有效。此外,我通过 Java 系统属性(通过脚本控制台)设置了 id/secret,但仍然出现相同的错误。
System.setProperty("aws.accessKeyId", "<KEY_ID>")
System.setProperty("aws.secretKey", "<KEY_SECRET>")
我还尝试将凭证管理器类型从 username/password 更改为 aws 凭证,如下所示。没有区别
这可能是存储桶和对象所有权问题。检查您使用的凭据是否允许您上传到存储桶 ec-sis-integration-test。
背景
我正在尝试将文件上传到 Jenkins 中的 AWS S3 存储桶。我正在使用 AWS Steps 插件提供的 steps/closures。我正在使用 Access Key ID 和 Access Key Secret 并将其分别作为用户名和密码存储在 Credential 中经理.
代码
下面是我在声明性管道脚本中使用的代码
sh('echo "test" > someFile')
withAWS(credentials:'AwsS3', region:'us-east-1') {
s3Upload(file:'someFile', bucket:'ec-sis-integration-test', acl:'BucketOwnerFullControl')
}
sh('rm -f someFile')
这是凭据的屏幕截图,因为它们全局存储在凭据管理器中。
问题
每当我 运行 管道时,我都会收到以下错误
com.amazonaws.services.s3.model.AmazonS3Exception: Access Denied (Service: Amazon S3; Status Code: 403; Error Code: AccessDenied; Request ID: 5N9VEJBY5MDZ2K0W; S3 Extended Request ID: AJmuP635cME8m035nA6rQVltCCJqHDPXsjVk+sLziTyuAiSN23Q1j5RtoQwfHCDXAOexPVVecA4=; Proxy: null), S3 Extended Request ID: AJmuP635cME8m035nA6rQVltCCJqHDPXsjVk+sLziTyuAiSN23Q1j5RtoQwfHCDXAOexPVVecA4=
有谁知道为什么这不起作用?
故障排除
我已经通过我编写的一个小型 Java 应用程序对其进行测试,从而验证了访问密钥 ID 和访问密钥秘密组合是否有效。此外,我通过 Java 系统属性(通过脚本控制台)设置了 id/secret,但仍然出现相同的错误。
System.setProperty("aws.accessKeyId", "<KEY_ID>")
System.setProperty("aws.secretKey", "<KEY_SECRET>")
我还尝试将凭证管理器类型从 username/password 更改为 aws 凭证,如下所示。没有区别
这可能是存储桶和对象所有权问题。检查您使用的凭据是否允许您上传到存储桶 ec-sis-integration-test。