UNPKG

@aws-sdk/client-dynamodb

Version:

AWS SDK for JavaScript Dynamodb Client for Node.js, Browser and React Native

41 lines (40 loc) 1.4 kB
const { resolveAwsSdkSigV4Config } = require("@aws-sdk/core/httpAuthSchemes"); const { getSmithyContext, normalizeProvider } = require("@smithy/core/client"); exports.defaultDynamoDBHttpAuthSchemeParametersProvider = async (config, context, input) => { return { operation: getSmithyContext(context).operation, region: await normalizeProvider(config.region)() || (() => { throw new Error("expected `region` to be configured for `aws.auth#sigv4`"); })(), }; }; function createAwsAuthSigv4HttpAuthOption(authParameters) { return { schemeId: "aws.auth#sigv4", signingProperties: { name: "dynamodb", region: authParameters.region, }, propertiesExtractor: (config, context) => ({ signingProperties: { config, context, }, }), }; } exports.defaultDynamoDBHttpAuthSchemeProvider = (authParameters) => { const options = []; switch (authParameters.operation) { default: { options.push(createAwsAuthSigv4HttpAuthOption(authParameters)); } } return options; }; exports.resolveHttpAuthSchemeConfig = (config) => { const config_0 = resolveAwsSdkSigV4Config(config); return Object.assign(config_0, { authSchemePreference: normalizeProvider(config.authSchemePreference ?? []), }); };