Skip to content

Commit a3fc4b4

Browse files
Don't attempt to use empty session tokens (#2633)
* Don't attempt to use empty session tokens An empty session token would never be valid. In the case that certain environmental conditions may produce an empty session token (rather than null), don't attempt to use it.
1 parent 99e7393 commit a3fc4b4

File tree

2 files changed

+10
-4
lines changed

2 files changed

+10
-4
lines changed
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"category": "AWS SDK for Java v2",
3+
"contributor": "",
4+
"type": "bugfix",
5+
"description": "Don't attempt to use empty session tokens"
6+
}

core/auth/src/main/java/software/amazon/awssdk/auth/credentials/internal/SystemSettingsCredentialsProvider.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ public AwsCredentials resolveCredentials() {
4949
String secretKey = trim(loadSetting(SdkSystemSetting.AWS_SECRET_ACCESS_KEY).orElse(null));
5050
String sessionToken = trim(loadSetting(SdkSystemSetting.AWS_SESSION_TOKEN).orElse(null));
5151

52-
if (StringUtils.isEmpty(accessKey)) {
52+
if (StringUtils.isBlank(accessKey)) {
5353
throw SdkClientException.builder()
5454
.message(String.format("Unable to load credentials from system settings. Access key must be" +
5555
" specified either via environment variable (%s) or system property (%s).",
@@ -58,7 +58,7 @@ public AwsCredentials resolveCredentials() {
5858
.build();
5959
}
6060

61-
if (StringUtils.isEmpty(secretKey)) {
61+
if (StringUtils.isBlank(secretKey)) {
6262
throw SdkClientException.builder()
6363
.message(String.format("Unable to load credentials from system settings. Secret key must be" +
6464
" specified either via environment variable (%s) or system property (%s).",
@@ -67,8 +67,8 @@ public AwsCredentials resolveCredentials() {
6767
.build();
6868
}
6969

70-
return sessionToken == null ? AwsBasicCredentials.create(accessKey, secretKey)
71-
: AwsSessionCredentials.create(accessKey, secretKey, sessionToken);
70+
return StringUtils.isBlank(sessionToken) ? AwsBasicCredentials.create(accessKey, secretKey)
71+
: AwsSessionCredentials.create(accessKey, secretKey, sessionToken);
7272
}
7373

7474
/**

0 commit comments

Comments
 (0)