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

介绍

Amazon Web Services (AWS) 是由亚马逊(Amazon)旗下公司提供的云计算服务,包括服务器、存储、数据库、分析、应用程序服务等。在前端开发中,我们可能需要使用 AWS SDK 进行开发和调试。在使用 AWS SDK 时,需要提供 AWS 安全凭证来访问 AWS 资源。而 @aws-sdk/credential-provider-cognito-identity 是一个提供 Cognito 身份池认证的 AWS SDK 凭证提供人。

前置要求

在使用 @aws-sdk/credential-provider-cognito-identity 之前,你需要有基本的 AWS 和身份池认证的知识。如果你还没有学习过 AWS Cognito 服务,可以先学习官方文档或者相关的教程。

安装和使用

使用 npm 安装 @aws-sdk/credential-provider-cognito-identity:

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

使用 @aws-sdk/credential-provider-cognito-identity 示例代码:

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

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

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

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

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

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

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

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

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

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

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

首先,我们使用 @aws-sdk/client-cognito-identity 中的 CognitoIdentityClient 类创建了一个 AWS SDK 客户端。接着,我们使用 GetIdCommandGetCredentialsForIdentityCommand 命令获取身份池 ID 和安全凭证。最后,我们从身份池中调用 fromCognitoIdentityPool 函数,将身份池 ID 和登录凭证传递给该函数,以获取安全凭证。

操作示例

以下是一个操作示例,使用 @aws-sdk/credential-provider-cognito-identity 在 React Native 中调用 Cognito 身份池。

首先,我们需要安装 @aws-sdk/client-cognito-identity, @aws-sdk/credential-provider-cognito-identityaws-amplify

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

然后,我们可以使用如下代码调用 Cognito 身份池:

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

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

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

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

在上面的代码中,要调用 Cognito 身份池,我们需要初始化 Amplify 并配置身份池,设置身份池 ID、AWS SDK 区域、用户池 ID、用户池 Web 客户端 ID、强制登录标识和身份验证流类型。然后,我们获取当前身份池 ID 和用户池登录凭证,并使用 fromCognitoIdentityPool 函数获取 Cognito 身份池的安全凭证。

总结

本文介绍了如何使用 npm 包 @aws-sdk/credential-provider-cognito-identity 获取 Cognito 身份池的安全凭证。我们提供了使用最新 AWS SDK v3 编写的示例代码,以及使用 Amplify 客户端库的操作示例。希望本文能够帮助您了解如何在前端开发中使用 AWS SDK,并且掌握如何使用 @aws-sdk/credential-provider-cognito-identity 来处理安全凭证。

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


猜你喜欢

  • npm 包 @aws-amplify/core 使用教程

    简介 @aws-amplify/core 是一个由亚马逊 AWS 推出的 JavaScript 库,用于在前端项目中实现 AWS 服务的集成。该库提供了一个简单且易于使用的接口,用于实现与 AWS 服...

    4 年前
  • npm 包 dexie-export-import 使用教程

    简介 dexie-export-import 是一个用于导入和导出 Dexie.js 中数据库的 npm 包。 Dexie.js 是一个轻量级的 IndexedDB 封装库,可以方便地在浏览器和其他 ...

    4 年前
  • npm 包 @aws-amplify/datastore 使用教程

    简介 AWS Amplify 是一个开源 JavaScript 库,用于快速为应用程序添加功能,例如认证、存储、API 和和实时通信。其中 @aws-amplify/datastore 是其数据存储的...

    4 年前
  • npm 包 @aws-sdk/client-lex-runtime-service 使用教程

    介绍 @aws-sdk/client-lex-runtime-service 是 AWS 官方提供的与 Amazon Lex 交互的 JavaScript 软件开发工具包。

    4 年前
  • npm 包 @aws-amplify/interactions 使用教程

    前言 AWS Amplify 是一款使用 AWS 服务构建 Web 应用和移动应用的 JavaScript 库。其中,@aws-amplify/interactions 是 Amplify 库中的一部...

    4 年前
  • npm 包 @aws-sdk/client-comprehend 使用教程

    前言 随着云计算技术的普及,越来越多的企业开始将自己的应用部署在云端,这也导致了对于云计算服务的依赖度越来越大。AWS 作为全球领先的云计算服务供应商,AWS 提供了大量的云计算服务,其中包括了自然语...

    4 年前
  • npm 包 @aws-sdk/client-polly 使用教程

    前言 随着人工智能技术的发展,语音合成技术也越来越受到关注。作为一名前端开发者,我们可以使用 AWS 的 P●●● 服务来进行语音合成,而 @aws-sdk/client-polly 库就提供了方便的...

    4 年前
  • npm 包 @aws-sdk/client-rekognition 使用教程

    前言 AWS Rekognition 是一款免费的面部识别和分析服务,允许开发者以简单且经济实惠的方式向应用程序添加功能,以识别和分析图像中的面部、场景和物体。而 @aws-sdk/client-re...

    4 年前
  • npm 包 @aws-sdk/client-textract 使用教程

    前言 在云计算和人工智能的时代,短时间内处理大量复杂数据变得越来越重要。AWS Textract 是一个 Amazon Web Services 的机器学习服务,它可以从扫描的文档中提取文本和字符,并...

    4 年前
  • npm 包 @aws-sdk/client-translate 使用教程

    前言 在国际化应用的开发过程中,多语言翻译是一个十分重要的组成部分。AWS 提供了 Translate 服务,让我们可以轻易地将一个语言翻译成另一个语言,而 @aws-sdk/client-trans...

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

    在前端开发中,经常需要使用 CRC32 算法进行数据校验。而 AWS 开发了一个 npm 包 @aws-crypto/crc32,该包可以方便地对数据进行 CRC32 计算。

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

    简介 在日常开发中,我们经常需要在前端中进行字符串编解码的操作。而在AWS的JavaScript SDK (@aws-sdk/client-s3, @aws-sdk/client-dynamodb等)...

    4 年前
  • npm 包 @aws-sdk/eventstream-marshaller 使用教程

    简介 @aws-sdk/eventstream-marshaller 是一个 AWS SDK for JavaScript 的包,它提供了一种转换 AWS EventStream 消息的方式。

    4 年前
  • npm 包 @aws-amplify/predictions 使用教程

    在前端开发中,常常需要使用一些机器学习或者预测服务,而 AWS 提供的 @aws-amplify/predictions npm 包提供了一种方便快捷的方法来实现这些服务。

    4 年前
  • npm 包 @aws-amplify/pubsub 使用教程

    AWS Amplify 是一个全面的开发平台,为前端开发人员提供服务和工具,帮助构建快速、可靠的应用程序。其中,@aws-amplify/pubsub 是一种用于实现发布/订阅模式的npm包。

    4 年前
  • npm 包 @aws-crypto/ie11-detection 使用教程

    前言 在前端开发中,我们往往需要兼容不同的浏览器。其中,IE11 是目前使用广泛的老旧浏览器之一,它和其他现代浏览器有着不同的兼容性问题,需要我们单独处理。@aws-crypto/ie11-detec...

    4 年前
  • npm 包 @aws-crypto/supports-web-crypto 使用教程

    在前端加密过程中,使用 Web Crypto API 是一种安全且可靠的选择。然而,不是所有浏览器都支持这个 API。@aws-crypto/supports-web-crypto 可以解决这个问题,...

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

    介绍 AWS SDK for JavaScript 是亚马逊 Web 服务 (AWS) 的官方 SDK。@aws-sdk/util-locate-window 是 AWS SDK for JavaSc...

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

    在前端开发中,经常需要进行加密和哈希操作,而 @aws-crypto/sha256-browser 是一个方便的 npm 包,可以用来快速生成 sha256 哈希值。下面将详细介绍该包的使用方法。

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

    AWS 的开发者在创建基于 JavaScript 的应用程序时通常都要用到 AWS SDK。而 @aws-sdk/fetch-http-handler 就是 AWS SDK 中与 JavaScript...

    4 年前

相关推荐

    暂无文章