npm 包 @aws-sdk/credential-provider-node 使用教程

前置知识

在学习使用 npm 包 @aws-sdk/credential-provider-node 之前,需要了解以下知识:

  • AWS IAM 用户和角色
  • AWS SDK for JavaScript v3

简介

@aws-sdk/credential-provider-node 是一个 Node.js SDK,提供了 AWS 身份验证所需的凭证。它支持许多不同类型的凭据,包括 IAM 用户凭据、角色凭据、STS 临时凭据以及 EC2 实例凭据等。

使用 @aws-sdk/credential-provider-node 可以轻松地使用 AWS SDK for JavaScript v3 中的其他组件,并且避免了直接与 AWS 身份验证系统进行通信的复杂性。

安装

使用 npm 命令行工具进行安装:

--- ------- ---------------------------------

使用方法

基本使用

使用 @aws-sdk/credential-provider-node 的最简单方法是使用 createDefaultProvider() 方法。这个方法将自动检测环境中可用的 AWS 凭据,并返回一个 Promise。使用这个 Promise 可以获取一个已认证的 AWS SDK for JavaScript v3 的客户端对象。

----- - -------- - - ------------------------------
----- - --------------------- - - ---------------------------------------------

----- -------- - --- ----------
  ------- ------------
  ------------ ----- -----------------------------------------
---

----- ---------- - ------------
----- --------- - ------------

----- ---- - ----- -------------------- ------- ----------- ---- --------- ---
------------------- --------- --------------------------

指定 AWS 账户

如果您有多个 AWS 账户,可以通过指定 AWS_ACCESS_KEY_ID 和 AWS_SECRET_ACCESS_KEY 环境变量,以及指定 AWS_REGION 和 AWS_PROFILE 的值来选择要使用的 AWS 账户。

----- - -------- - - ------------------------------
----- - ------- - - --------------------------------------------

----- -------- - --- ----------
  ------- ------------
  ------------ ---------
    -------- -------------
    ------- ------------
    -------- -----------------------------------------
    ----------- -----------------
  ---
---

----- ---------- - ------------
----- --------- - ------------

----- ---- - ----- -------------------- ------- ----------- ---- --------- ---
------------------- --------- --------------------------

在上面的代码中,使用 fromIni() 方法从 ~/.aws/credentials 文件中获取凭证。同时,指定了 roleArn 和 externalId,以使用角色访问 S3 存储桶。

自定义凭证提供程序

如果需要自定义 AWS 凭证提供程序,可以使用 createFromProvider() 方法。这个方法接受一个凭证提供程序作为参数,并返回一个函数。使用这个函数可以通过 resolvePromise() 方法获取一个已认证的 AWS SDK for JavaScript v3 的客户端对象。

----- - -------- - - ------------------------------
----- - ------------------ - - ---------------------------------------------

----- ---------- - -
  -------- -- -- -----------------
    ------------ -------------------
    ---------------- -----------------------
    ------------- -------------------
  ---
--

----- -------- - --- ----------
  ------- ------------
  ------------ ------------------------------------------------
---

----- ---------- - ------------
----- --------- - ------------

----- ---- - ----- -------------------- ------- ----------- ---- --------- ---
------------------- --------- --------------------------

在上面的代码中,使用 createFromProvider() 方法从自定义凭证提供程序中获取凭证。同时,指定了 accessKeyId、secretAccessKey 和 sessionToken,以认证 AWS 客户端对象。

总结

在本文中,我们介绍了 @aws-sdk/credential-provider-node 的基本用法和自定义用法。这个 Node.js SDK 提供了 AWS 身份验证所需的凭证,支持许多不同类型的凭据。

通过了解和使用这个 npm 包,可以轻松地使用 AWS SDK for JavaScript v3 中的其他组件,并且避免了直接与 AWS 身份验证系统进行通信的复杂性。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/5f6eecd1a9b7065299ccba1a


猜你喜欢

  • npm 包 @aws-sdk/hash-node 使用教程

    前言 在前端开发中,我们会需要使用亚马逊 Web 服务(AWS)的功能。AWS 提供了一系列服务,例如 Amazon S3、DynamoDB、Lambda 等,这些服务可以为我们的前端应用带来很大的便...

    4 年前
  • NPM 包 @aws-sdk/util-utf8-browser 使用教程

    在前端开发中,我们经常需要进行字符串编码和解码的操作。而为了方便地完成这些操作,AWS SDK 推出了一款名为 @aws-sdk/util-utf8-browser 的 NPM 包。

    4 年前
  • npm 包 @aws-crypto/sha256-js 使用教程

    简介 npm 是 Node.js 的包管理器,它可以通过 npm 安装和管理大量的开源库和框架。其中,@aws-crypto/sha256-js 是 AWS 提供的一个计算 SHA256 散列值的 n...

    4 年前
  • npm 包 @aws-sdk/util-hex-encoding 使用教程

    简介 在前端开发过程中,我们经常会需要进行二进制数据的处理,而十六进制编码就是常用的一种方式。@aws-sdk/util-hex-encoding 是 Amazon Web Services (AWS...

    4 年前
  • npm 包 @aws-sdk/hash-stream-node 使用教程

    前言 随着互联网技术的发展,云的成为了越来越多开发者使用的服务,AWS 也因其强大的云计算服务和 API 技术的支持,成为了许多开发者的首选。本文介绍的是 AWS 的 Hash 流模块包 @aws-s...

    4 年前
  • npm 包 @aws-sdk/location-constraint-middleware 使用教程

    AWS 是全球最大的云计算服务提供商之一,其提供了一系列云端服务,其中之一就是 S3 存储服务。在使用 S3 存储服务时,我们需要指定存储桶(Bucket)的位置(Region),否则 AWS 会将其...

    4 年前
  • npm包@aws-sdk/middleware-content-length使用教程

    前言 Amazon Web Services(AWS)是目前世界上最大的云服务提供商之一。AWS提供各种不同的服务,例如存储、计算、数据库等等。AWS SDK for JavaScript是一组Jav...

    4 年前
  • npm 包 @aws-sdk/middleware-expect-continue 使用教程

    前言 @aws-sdk/middleware-expect-continue 是一个用于 AWS JavaScript SDK 的中间件,用于添加 Expect: 100-continue 标头,以提...

    4 年前
  • npm 包 @aws-sdk/middleware-header-default 使用教程

    介绍 @aws-sdk/middleware-header-default 是一个 Node.js 模块,它提供了一种十分简单的方式向 AWS SDK 请求中添加默认的 HTTP Header。

    4 年前
  • npm 包 @aws-sdk/middleware-serializer 使用教程

    简介 @aws-sdk/middleware-serializer 是用于在 AWS SDK for JavaScript (V3) 中自动生成 HTTP 请求体和响应正文的中间件。

    4 年前
  • npm 包 @aws-sdk/abort-controller 使用教程

    前言 随着前端工程化的普及,构建一个复杂的前端应用往往需要依赖大量的第三方库和组件。而这些库和组件往往会依赖其他的库和组件,因此在管理依赖这个环节,就需要使用到 npm 这样的包管理工具了。

    4 年前
  • npm 包 @aws-sdk/node-http-handler 使用教程

    Amazon Web Services (AWS) 提供了一系列的工具和服务,让开发人员更容易的在应用程序中使用 AWS 资源。其中一个非常有用的工具是 @aws-sdk/node-http-hand...

    4 年前
  • NPM 包 @aws-sdk/protocol-rest 使用教程

    在前端开发过程中,调用 AWS 提供的 REST API 非常常见。在 Node.js 环境中,我们可以使用 AWS SDK for JavaScript 来方便调用 AWS API,不过 AWS S...

    4 年前
  • npm 包 @aws-sdk/query-error-unmarshaller 使用教程

    什么是 @aws-sdk/query-error-unmarshaller @aws-sdk/query-error-unmarshaller 是一个 npm 包,用于解析 AWS SDK 返回的错误...

    4 年前
  • npm 包 @aws-sdk/service-error-classification 使用教程

    前言 AWS(Amazon Web Services) 是目前全球范围内最受欢迎的云服务提供商之一。AWS 提供了各种各样的服务,包括计算、存储、数据库、分析、机器学习、人工智能等等。

    4 年前
  • npm 包 @aws-sdk/retry-middleware 使用教程

    随着互联网应用的日益复杂,前端开发面临的挑战也越来越多。其中一个特别突出的问题就是如何保证网络请求的稳定和可靠。AWS 的 @aws-sdk/retry-middleware 就是一个非常好用的 np...

    4 年前
  • npm 包 @aws-sdk/response-metadata-extractor 使用教程

    前言 在前端开发中,很多时候需要使用 AWS 云服务,而 AWS SDK 提供了一系列的 API 来让开发者们更方便地使用云服务。本文介绍了一个 npm 包 @aws-sdk/response-met...

    4 年前
  • npm 包 @aws-sdk/util-error-constructor 使用教程

    概述 在前端应用程序的开发中,错误处理是非常重要的一环。当我们使用 AWS 服务的 JavaScript SDK 时,错误处理也是非常关键的。@aws-sdk/util-error-construct...

    4 年前
  • npm 包 @aws-sdk/s3-error-unmarshaller 使用教程

    Amazon Web Services (AWS)的S3 服务,是一种高度可伸缩、高度可扩展、高度持久且具有强大的安全功能的对象存储服务。但是,在使用 S3 服务时,往往会遇到很多错误和问题,如果没有...

    4 年前
  • npm 包 @aws-sdk/signing-middleware 使用教程

    什么是 @aws-sdk/signing-middleware? @aws-sdk/signing-middleware 是一个 npm 包,提供了一种中间件方式来对 AWS SDK 发起的请求进行签...

    4 年前

相关推荐

    暂无文章