Java 缓存AmazonS3客户端供以后使用安全吗?

Java 缓存AmazonS3客户端供以后使用安全吗?,java,amazon-web-services,amazon-s3,Java,Amazon Web Services,Amazon S3,我正在编写一个Java程序,将文件上载到AWS S3,并使用以下代码成功获取S3客户端: BasicAWSCredentials awsCreds = new BasicAWSCredentials("aaa", "bbb"); AmazonS3 s3Client = AmazonS3ClientBuilder.standard() .withRegion(Regions.fromName("ccc")) .withCredentials(new AWSStaticCredent

我正在编写一个Java程序,将文件上载到AWS S3,并使用以下代码成功获取S3客户端:

BasicAWSCredentials awsCreds = new BasicAWSCredentials("aaa", "bbb");
AmazonS3 s3Client = AmazonS3ClientBuilder.standard()
    .withRegion(Regions.fromName("ccc"))
    .withCredentials(new AWSStaticCredentialsProvider(awsCreds)).build();
由于我发现每次设置S3客户机都要花费相当多的时间,我想知道是否可以缓存客户机以供重复使用


另外,如果我将客户端缓存一年左右,客户端是否仍然可以连接到AWS?

只要凭据有效,您的客户端就可以工作。如果您的凭证没有更改或更新,它将有效一年

基本上,当您创建一个客户机时,您不会将原始凭证转换为任何形式,稍后在需要执行实际操作时,所有内容都将被引用

创建对象后更新凭据后,客户端将不再工作

如果您想初始化一次,然后使用一年是的,它会工作。使用最佳安全实践,长时间固定凭据是不好的

有关凭据的详细信息:

希望能有帮助