Skip to content

Commit 1d31273

Browse files
use credential provider in AWS KMS flow
1 parent 918fe69 commit 1d31273

File tree

1 file changed

+15
-10
lines changed
  • src/client-side-encryption/providers

1 file changed

+15
-10
lines changed
Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,25 @@
1-
import { getAwsCredentialProvider } from '../../deps';
1+
import { AWSSDKCredentialProvider } from '../../cmap/auth/aws_temporary_credentials';
22
import { type KMSProviders } from '.';
33

44
/**
55
* @internal
66
*/
77
export async function loadAWSCredentials(kmsProviders: KMSProviders): Promise<KMSProviders> {
8-
const credentialProvider = getAwsCredentialProvider();
8+
const credentialProvider = new AWSSDKCredentialProvider();
99

10-
if ('kModuleError' in credentialProvider) {
11-
return kmsProviders;
12-
}
13-
14-
const { fromNodeProviderChain } = credentialProvider;
15-
const provider = fromNodeProviderChain();
1610
// The state machine is the only place calling this so it will
1711
// catch if there is a rejection here.
18-
const aws = await provider();
19-
return { ...kmsProviders, aws };
12+
const {
13+
SecretAccessKey = '',
14+
Token = '',
15+
AccessKeyId = ''
16+
} = await credentialProvider.getCredentials();
17+
return {
18+
...kmsProviders,
19+
aws: {
20+
secretAccessKey: SecretAccessKey,
21+
sessionToken: Token,
22+
accessKeyId: AccessKeyId
23+
}
24+
};
2025
}

0 commit comments

Comments
 (0)