问题标签 [aws-sdk-ios]

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 回答
371 浏览

ios - 在 Swift 中将 PEM 响应转换为 PCKS12 数据

我们正在将 AWS iOS SDK 用于我们公司的 IoT 项目。现在是一个简单的应用程序。用户登录到我们的系统并尝试连接到 AWS IoT 服务。

https://github.com/awslabs/aws-sdk-ios-samples/tree/master/IoT-Sample/Swift/IoTSampleSwift

在上面的示例项目中,应用程序使用 AWSIoT SDK 生成自己的证书和密钥对。但是,在我们的例子中,我们不想生成这样的证书。

我们在服务器端创建了一个 Lambda 函数来为我们的用户生成证书。iOS 应用程序请求证书并作为响应服务器发送密钥对、certificatePem、certificateId 和证书 Arn。如果我们使用 AWSIoTManager.defaultManager(),所有组件都是由 AWSIoT SDK 创建的。createKeysAndCertificateFromCsr 方法。

在这种情况下,我们需要将我们的用户身份导入 iOS 钥匙串。AWS SDK 有另一种方法来处理这个问题:AWSIoTManager.importIdentityFromPKCS12Data 方法

我们需要将服务器响应转换为 PKCS12Data 以使用生成的证书。我们应该怎么做?

提前致谢。

0 投票
1 回答
1276 浏览

ios - 如何将登录映射添加到 CredentialsProvider?

我已通过相关文档中的 9 个步骤将我的用户池设置与联合身份流集成。我正在关注文档并使用增强的身份验证流程。

然而,还有一个我不太明白的额外步骤可能导致我遇到的 IOS SDK 问题。该指南提到:

用户通过身份验证后,将该用户的身份令牌添加到凭据提供程序中的登录映射。提供商名称将取决于您的 Amazon Cognito Identity 用户池 ID。它将具有以下结构:cognito-idp..amazonaws.com/

然后它提供了以下 IOS SDK 片段:

但据我了解,这段代码中的凭据提供程序中没有添加任何登录映射。如果您查看 JavaScript 和 Java 版本,您会发现这是明确设置的。经过一番挖掘,我还找到了 IOS-SDK 的一种方法,即setLogins方法,但是这种方法已被弃用。根据文档,我可以按如下方式启动它是有道理的:

但是,这会导致折旧警告。:

AWSIdentityProviderManager 协议似乎确实提供了登录方法,但是没有记录。

所以我的问题是:如何在我的凭据提供程序中添加我的登录映射?

0 投票
0 回答
475 浏览

ios - iOS AWS Transfer Utility 上传请求未添加标头或参数

我正在尝试将请求参数请求标头添加到我的传输实用程序上传表达式中,以便充当我的元数据的持有者。

我将它们正确添加到我的知识中,并使用其记录的 task.result 上传显示测试标头,但是,当我检查 Cloudwatch 时,记录的事件记录并未反映我的参数或标头。

下面是我的代码。我究竟做错了什么?

0 投票
1 回答
365 浏览

ios - 如何为 AWSS3TransferUtility 定义缓存控制

AWSS3TransferUtility通过(AWS-iOS-SDK v2.4.x)上传图像时,我正在努力定义缓存控制。

我的简化用法如下:

我目前的重点是表达,但调用 likeexpression.setValue("max-age=3600", forRequestParameter: "Cache-Control")不起作用。

0 投票
1 回答
510 浏览

amazon-web-services - 在 AWS API Gateway iOS SDK 中传递查询字符串参数

我已经为 AWS Lambda 函数设置了一个 API 网关。在 API Gateway 中,我设置了查询字符串参数和请求映射。如果我使用 API Gateway 的测试函数,我可以将参数传递给我的 AWS Lambda 函数。

我还使用这些说明为 iOS 生成了一个 SDK API。

但是,如何将我的预定义查询字符串参数传递到这个生成的 API 类中?

我也尝试过使用模型,但是我也没有看到将模型数据传递到 iOS SDK 的方法。

0 投票
2 回答
260 浏览

amazon-web-services - 移动中心示例 ios 应用程序的 AWS 开发人员身份验证

在阅读了大量文档和大量试验和错误之后,我实际上能够在我的 aws 移动集线器应用程序中创建一个 lambda(api 网关)驱动的后端用于开发人员身份验证。

  • 我已将 AWSCognitoCredentialsProviderHelper 子类化以创建我的开发人员身份提供商
  • 实现:自定义类中的getIdentityId、token和login

实例化:

然后我执行 credentialsProvider.credentials() 来获取从后端返回的令牌/身份 ID 的经过身份验证的凭据。所有这一切似乎都有效,我得到了 AccessKey、SessionKey 等。所以它似乎工作正常。

但是,在 continue 块中,如果我尝试调用 AWSDynamoDB 或 syncdata,我会得到:

为了确保移动中心应用程序中的 AWS 服务接收更新的凭证,我可能缺少什么?另外,我如何让 AWSIdentityManager 参与其中?因为似乎 AWSIdentityManager.defaultIdentityManger 从来没有从我的自定义身份提供者那里获得用户名等。任何帮助将不胜感激。

0 投票
0 回答
47 浏览

amazon-web-services - iOS AWS SDK AWSCognitoIdentityProviderModel.h 编译错误

我一直在使用 Amazon Web Services iOS SDK,并且由于 SDK 中的一行而遇到了一个有趣的编译错误。

在 AWSCognitoIdentityProviderModel.h 中,错误出现在以下行:

错误状态为“预期的成员名称或';' 在声明说明符之后”。

看起来 Xcode 不喜欢使用关键字 'mutable' 作为属性名称并且不会编译。

但是,此演示使用具有相同问题行的完全相同的 SDK,并且编译得很好。

为什么这是一个项目中的错误,而不是演示项目中的错误?

0 投票
0 回答
142 浏览

ios - AWS SDK 升级到 2.4.0 AWSAbstractCognitoIdentityProvider 不再可用

我已经用 pod 更新了 pod 文件'AWSiOSSDKv2'

更新版本中AWSAbstractCognitoIdentityProvider已弃用AWSiOSSDKv2. 所以我的自定义类IdentityProvider不能像以前那样工作。自上次 2-3 天以来,我一直在谷歌搜索,但仍然没有找到任何替代解决方案的运气。谁能有替代解决方案?

0 投票
1 回答
1292 浏览

aws-sdk - 使用结果创建 AWSTask 的 Swift 3 语法是什么?

在 Swift 3 之前,我使用结果创建 AWSTask 的代码是这样的:

但是使用 Swift 3,我从 Xcode 8 收到了这个错误消息:

无法将类型“[String]”的值转换为预期的参数类型“_?”

有没有其他人遇到过这个?非常感谢!

0 投票
1 回答
1701 浏览

ios - 使用 AWS ios SDK 在 S3 上进行 MultipartUpload 上传

我想在 S3 上上传大文件。我知道有一个选项分段上传,我可以通过它分段上传大文件。我阅读了文档(http://docs.aws.amazon.com/mobile/sdkforios/developerguide/s3transfermanager.html),但没有找到任何用于分段上传的代码。我已成功将服务器上的文件作为单个文件上传,但我想对大文件使用多部分。

谢谢。