mirror of
https://github.com/honeymoose/OpenSearch.git
synced 2025-02-23 05:15:04 +00:00
Test that buildCredentials returns correct clazz (#23334)
This is fallout from #23297. That commit wrapped `InstanceProfileCredentialsProvider` to ensure that the `getCredentials` and `refresh` methods had privileged access. However, it looks like there was a test ensuring that `buildCredentials` returned the correct clazz type. This commit adjusts that test to check that the correct wrapper is returned.
This commit is contained in:
parent
eeac6d27f2
commit
0e802961f1
@ -150,18 +150,7 @@ public class InternalAwsS3Service extends AbstractLifecycleComponent implements
|
|||||||
|
|
||||||
if (key.length() == 0 && secret.length() == 0) {
|
if (key.length() == 0 && secret.length() == 0) {
|
||||||
logger.debug("Using instance profile credentials");
|
logger.debug("Using instance profile credentials");
|
||||||
AWSCredentialsProvider credentials = new InstanceProfileCredentialsProvider();
|
return new PrivilegedInstanceProfileCredentialsProvider();
|
||||||
return new AWSCredentialsProvider() {
|
|
||||||
@Override
|
|
||||||
public AWSCredentials getCredentials() {
|
|
||||||
return SocketAccess.doPrivileged(credentials::getCredentials);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void refresh() {
|
|
||||||
SocketAccess.doPrivilegedVoid(credentials::refresh);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
} else {
|
} else {
|
||||||
logger.debug("Using basic key/secret credentials");
|
logger.debug("Using basic key/secret credentials");
|
||||||
return new StaticCredentialsProvider(new BasicAWSCredentials(key.toString(), secret.toString()));
|
return new StaticCredentialsProvider(new BasicAWSCredentials(key.toString(), secret.toString()));
|
||||||
@ -221,4 +210,22 @@ public class InternalAwsS3Service extends AbstractLifecycleComponent implements
|
|||||||
// Ensure that IdleConnectionReaper is shutdown
|
// Ensure that IdleConnectionReaper is shutdown
|
||||||
IdleConnectionReaper.shutdown();
|
IdleConnectionReaper.shutdown();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static class PrivilegedInstanceProfileCredentialsProvider implements AWSCredentialsProvider {
|
||||||
|
private final InstanceProfileCredentialsProvider credentials;
|
||||||
|
|
||||||
|
private PrivilegedInstanceProfileCredentialsProvider() {
|
||||||
|
this.credentials = new InstanceProfileCredentialsProvider();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AWSCredentials getCredentials() {
|
||||||
|
return SocketAccess.doPrivileged(credentials::getCredentials);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void refresh() {
|
||||||
|
SocketAccess.doPrivilegedVoid(credentials::refresh);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -37,7 +37,7 @@ public class AwsS3ServiceImplTests extends ESTestCase {
|
|||||||
public void testAWSCredentialsWithSystemProviders() {
|
public void testAWSCredentialsWithSystemProviders() {
|
||||||
AWSCredentialsProvider credentialsProvider =
|
AWSCredentialsProvider credentialsProvider =
|
||||||
InternalAwsS3Service.buildCredentials(logger, deprecationLogger, Settings.EMPTY, Settings.EMPTY, "default");
|
InternalAwsS3Service.buildCredentials(logger, deprecationLogger, Settings.EMPTY, Settings.EMPTY, "default");
|
||||||
assertThat(credentialsProvider, instanceOf(AWSCredentialsProvider.class));
|
assertThat(credentialsProvider, instanceOf(InternalAwsS3Service.PrivilegedInstanceProfileCredentialsProvider.class));
|
||||||
}
|
}
|
||||||
|
|
||||||
public void testAwsCredsDefaultSettings() {
|
public void testAwsCredsDefaultSettings() {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user