【问题标题】:A way to switch amazon cognito roles一种切换亚马逊认知角色的方法
【发布时间】:2017-07-09 06:55:17
【问题描述】:

我将 aws-ios-sdk 与 Objective-c 一起使用,并已将 Amazon cognito 设置为使用未经身份验证的访问和经过身份验证的访问。经过身份验证的访问使用自定义开发者身份。

自定义身份中的提供者名称为:

com.test.developerProvider

在我设置的 GetOpenIdForDeveloperCredentials 中:

com.test.developerProvider = uniqueUser;

identityPool 具有 auth 和 unauth 的角色权限,如下所示:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "",
      "Effect": "Allow",
      "Principal": {
        "Federated": "cognito-identity.amazonaws.com"
      },
      "Action": "sts:AssumeRoleWithWebIdentity",
      "Condition": {
        "StringEquals": {
          "cognito-identity.amazonaws.com:aud": "identityInfo"
        },
        "ForAnyValue:StringLike": {
          "cognito-identity.amazonaws.com:amr": "authenticated or unauthenticated"
        }
      }
    }
  ]
}

如何将角色从 Unauth 切换到 Auth?我不在乎它是在 Lambda 中还是使用 ios 的其他方式。

需要帮助。谢谢。

【问题讨论】:

    标签: ios objective-c amazon-web-services aws-lambda amazon-cognito


    【解决方案1】:

    我不确定我是否理解这个问题。当您在获取凭据的请求中包含登录令牌时,角色会从 unauth 更改为 auth。你是说这不会发生吗?您可以通过在控制台的身份浏览器中查看您的身份池的身份来确认这一点,如果它没有链接登录令牌,则意味着该令牌没有被发送到 Cognito。

    【讨论】:

    • 是的,它终于可以工作了。由于我使用的是开发人员身份,因此地图设置不正确。尽管像其他应用程序一样,我仍然需要弄清楚如何让用户在数周内保持登录状态。
    猜你喜欢
    • 2015-06-02
    • 2016-08-24
    • 2015-07-29
    • 1970-01-01
    • 2017-09-05
    • 2016-05-08
    • 2016-11-26
    • 2012-12-08
    • 2017-11-14
    相关资源
    最近更新 更多