问题标签 [aws-cognito]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
277 浏览

angular - 在哪里可以找到 Amazon Cognito 身份开发工具包的类型定义文件 (*.d.ts) 以及如何使用它们

在哪里可以找到 Amazon Cognito 身份开发工具包的类型定义文件 (*.d.ts)?以及我该如何使用它们。

我正在为 Angular2 使用 TypeScript,并且我希望在实现“AWS Cognito”时准备好使用代码助手。我已经使用import AWS = require("aws-sdk");了“aws-sdk”,但我找不到为“amazon Cognito Identity SDK”导入类的方法。我已经在确定类型中搜索了

注意:我已经知道我可以声明一个“any”类型的全局变量,但我想要的是代码助手的实用程序。

更新: “aws-sdk”和“amazon Cognito Identity SDK”是不同的并且有不同的类。

更新 2:我正在尝试实现此代码:

0 投票
1 回答
263 浏览

amazon-web-services - 按用户属性限制 IoT 主题

我正在使用 Amazon Cognito 和 AWS IoT 进行概念验证,我需要一些帮助。我有一切工作,我只需要锁定的东西。我的 Cognito 用户池是我的身份池唯一的身份验证提供程序。

我想根据我的用户池中用户的自定义属性来限制可以订阅的 IoT 主题。IAM 角色有可能吗?我已经可以通过在角色中输入主题过滤器来限制它,我只需要知道是否有可以在那里使用的变量。

对于我的用例,该应用程序可以有多个使用该应用程序的组织,每个组织彼此完全分离,但使用相同的代码和基础设施。我希望我可以指定用户的组织 ID,然后要求所有主题在开始时都具有用户的组织 ID。

我认为我正在寻找的远远超出了 IAM 角色可以做的事情,但我想先检查一下。

0 投票
6 回答
52741 浏览

amazon-web-services - 如何修改 AWS Cognito 用户池的访问令牌和身份令牌的到期时间

我找不到任何文档来解释是否以及如何修改 AWS Cognito 用户池的访问和身份令牌的到期时间。

文档指定默认情况下在发射后 1 小时到期。

有没有办法修改过期时间?

0 投票
0 回答
335 浏览

amazon-web-services - AWS:CognitoUser.refreshSession 与 AWS.config.credentials.refresh

我正在编写一个 web 应用程序,并想知道何时使用 CognitoUser.refreshSession() 和/或 AWS.config.credentials.refresh() 来刷新会话,例如,当用户刷新页面时。目前两者都可以正常工作(使用开发人员认证的凭据)

该应用程序在后台使用 IAM 并对 lambda 进行直接 API 调用(即不通过 apigClient)。这工作正常,但没有对调用进行签名(即授权: session.getIdToken().getJwtToken() )

我想使用 Signature 4 方法对这些调用进行签名,但除了 401 Unauthorized 响应之外,我还很难获得任何其他响应,并且想知道这是否需要 AWS.config.credentials,如果不需要,在哪里以及如何获得访问权限和秘密用于签名的密钥。

我还想知道是否需要在 lambda 函数中做一些特殊的事情来接收这些调用。

谢谢!

0 投票
2 回答
1239 浏览

ios - 在 AWS iOS SDK 中,我如何处理 FORCE_CHANGE_PASSWORD 用户状态

我已经按照示例here

https://github.com/awslabs/aws-sdk-ios-samples/tree/master/CognitoYourUserPools-Sample

将交互式 cognito 登录集成到我的 iOS 应用程序中。这一切都很好,但是当在池中创建新用户时,他们最初具有 FORCE_CHANGE_PASSWORD 状态。

对于android,您可以按照以下步骤操作

http://docs.aws.amazon.com/cognito/latest/developerguide/using-amazon-cognito-user-identity-pools-android-sdk-authenticate-admin-created-user.html

但对于 iOS,我不知道如何做到这一点。使用示例,如果我尝试使用处于 FORCE_CHANGE_PASSWORD 状态的用户登录,我会在控制台日志中看到以下输出(为简洁起见,删除了一些值):

{"ChallengeName":"NEW_PASSWORD_REQUIRED","ChallengeParameters":{"requiredAttributes":"[]","userAttributes":"{\"email_verified\":\"true\",\"custom:autoconfirm\":\ "Y\","会话":"xyz"}

以下是上述示例中 SignInViewController 的代码。

didCompleteStepWithError执行时,error为 null ,我希望它表明某些信息告诉我们用户需要更改密码。

我的问题实际上是如何捕获"ChallengeName":"NEW_PASSWORD_REQUIRED"输出到控制台的 json?

0 投票
2 回答
3849 浏览

amazon-web-services - Cognito 使用自定义电子邮件发送确认电子邮件

除了 Cognito 用户池的“消息自定义”选项卡中指定的电子邮件之外,还有其他方法可以发送电子邮件吗?我想根据一些参数使用不同的电子邮件。

例如

verify@my-service.com 用于验证电子邮件

Welcome@my-service.com 用于欢迎电子邮件

0 投票
0 回答
148 浏览

amazon-web-services - 将 Cognito 用户池 ID 与他们的 facebook ID 相关联

我有一个 Congnito 身份池,其中包含 Congnito 用户池以及 Facebook 作为身份验证提供者。我能够向用户池和 facebook 注册用户。一些用户可能最初使用用户池注册,但后来可能想使用他们的 facebook 凭据登录。

目前,我的应用程序将它们都视为单独的用户。如何验证使用 facebook 的新登录是否已使用用户池注册?

0 投票
1 回答
383 浏览

javascript - 从亚马逊网络服务中的 cognito 用户获取 sub

我在 AWS 的 cognito 中注册了一个新用户。这是代码(JavaScript):

我的问题是:我如何从新用户那里获得子? cognitoUser只包含用户名。我没有找到任何方法。有谁能够帮我?

0 投票
1 回答
1578 浏览

ios - AWS Cognito iOS 登录委托方法`didCompleteStepWithError`未调用

我正在基于 swift 的 iOS 应用程序中实现 AWS Cognito 登录,但是didCompleteStepWithError未触发委托方法。

CognitoLoginViewController

触发按钮单击并执行以下行。

应用委托

但是,我能够成功使用注册,忘记密码和代码确认。由于上述其他操作运行良好,因此 cognito 配置值也是正确的。

0 投票
1 回答
211 浏览

angular - 在自定义函数中使用 AWS cognito 多因素身份验证

我使用以下技术开发无服务器应用程序:

  • Angular2 与用于前端的 AWS 开发工具包
  • AWS 认知
  • AWS S3
  • AWS 拉姆达
  • AWS DynamoDB
  • AWS API 网关

问题:是否可以在我自己的前端功能中使用 cognito MFA(多因素身份验证)?

用例:如果经过身份验证的用户请求从其 S3 存储桶中删除文件,则会向用户的手机发送一条短信,用户将在前端输入安全码。如果安全代码有效,则文件将被删除。