UNPKG

@aws-sdk/client-sts

Version:

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

47 lines (46 loc) 2.81 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.STSClient = void 0; const config_resolver_1 = require("@aws-sdk/config-resolver"); const middleware_content_length_1 = require("@aws-sdk/middleware-content-length"); const middleware_host_header_1 = require("@aws-sdk/middleware-host-header"); const middleware_logger_1 = require("@aws-sdk/middleware-logger"); const middleware_retry_1 = require("@aws-sdk/middleware-retry"); const middleware_sdk_sts_1 = require("@aws-sdk/middleware-sdk-sts"); const middleware_user_agent_1 = require("@aws-sdk/middleware-user-agent"); const smithy_client_1 = require("@aws-sdk/smithy-client"); const runtimeConfig_1 = require("./runtimeConfig"); /** * <fullname>Security Token Service</fullname> * <p>Security Token Service (STS) enables you to request temporary, limited-privilege * credentials for Identity and Access Management (IAM) users or for users that you * authenticate (federated users). This guide provides descriptions of the STS API. For * more information about using this service, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html">Temporary Security Credentials</a>.</p> */ class STSClient extends smithy_client_1.Client { constructor(configuration) { const _config_0 = runtimeConfig_1.getRuntimeConfig(configuration); const _config_1 = config_resolver_1.resolveRegionConfig(_config_0); const _config_2 = config_resolver_1.resolveEndpointsConfig(_config_1); const _config_3 = middleware_retry_1.resolveRetryConfig(_config_2); const _config_4 = middleware_host_header_1.resolveHostHeaderConfig(_config_3); const _config_5 = middleware_sdk_sts_1.resolveStsAuthConfig(_config_4, { stsClientCtor: STSClient }); const _config_6 = middleware_user_agent_1.resolveUserAgentConfig(_config_5); super(_config_6); this.config = _config_6; this.middlewareStack.use(middleware_retry_1.getRetryPlugin(this.config)); this.middlewareStack.use(middleware_content_length_1.getContentLengthPlugin(this.config)); this.middlewareStack.use(middleware_host_header_1.getHostHeaderPlugin(this.config)); this.middlewareStack.use(middleware_logger_1.getLoggerPlugin(this.config)); this.middlewareStack.use(middleware_user_agent_1.getUserAgentPlugin(this.config)); } /** * Destroy underlying resources, like sockets. It's usually not necessary to do this. * However in Node.js, it's best to explicitly shut down the client's agent when it is no longer needed. * Otherwise, sockets might stay open for quite a long time before the server terminates them. */ destroy() { super.destroy(); } } exports.STSClient = STSClient;