![](/img/trans.png)
[英]Using the AWS S3 Java SDK, what is the fastest way to determine if the authorization (access key and secret key) is correct?
[英]how to generate s3 style access/secret key using java
您需要使用javax.crypto.KeyGenerator
来创建AWSAccessKeyId
和AWSSecretAccessKey
:
javax.crypto.KeyGenerator generator = javax.crypto.KeyGenerator.getInstance("HMACSHA1");
generator.init(120);
byte[] awsAccessKeyId = generator.generateKey().getEncoded();
generator.init(240);
byte[] awsSecretAccessKey = generator.generateKey().getEncoded();
然后,您需要 base64 对字节进行编码(这使用来自 mail.jar 的 MimeUtility):
final ByteArrayOutputStream encoded = new ByteArrayOutputStream();
final OutputStream encoder = javax.mail.internet.MimeUtility.encode(encoded, "base64");
encoder.write(awsAccessKeyId);
encoder.flush();
encoder.close();
String accessKeyId = new String(encoded.toByteArray(), encoding).replaceAll("[\\r\\n]", "");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.