是否有可能使用AWS扩增出不使用亚马逊Cognito?

问题描述 投票:1回答:1

我有Android和iOS应用。我需要让他们下载和上传的资产在S3上,有时想将数据发送到移动,而无需使用Amazon Cognito因为它的成本大量的资金都有。我有秘密访问键,我想移动用户使用,而不必使用Amazon Cognito这些密钥。

那么,是否可以使用AWS中扩增没有亚马逊Cognito?

amazon-cognito aws-amplify
1个回答
0
投票

是的,这是可能的。你并不需要用户认证使用AWS中扩增。


0
投票

这个答案只有解决了iOS上,但我猜,你就可以做Android上的类似的东西。只要将“协议”与“接口” :-)

为了使用完善你需要给SDK的AWSCredentialsProvider。幸运的是,这仅仅是一个协议,而不是一个具体的类,它是简单的实现自己的:

// MyCredentialsProvider.swift

import AWSCore
import Foundation

class MyCredentialsProvider: NSObject, AWSCredentialsProvider {
    func credentials() -> AWSTask<AWSCredentials> {
        let credentials = AWSCredentials(accessKey: "AAAAAAAAAAAAAAAAAAA",
                                         secretKey: "zzzzzzzzzzzzzzzzzzz",
                                         sessionKey: nil,
                                         expiration: nil)
        return AWSTask(result: credentials)
    }

    func invalidateCachedTemporaryCredentials() {
         // I'm not entirely sure what this method is supposed to do, but it
         // seems to be okay to leave it as a no-op.
    }
}

你可以使用你的类是这样的:

let provider: AWSCredentialsProvider = MyCredentialsProvider()
let serviceConfig = AWSServiceConfiguration(region: .USWest2,
                                            credentialsProvider: provider)
AWSServiceManager.default().defaultServiceConfiguration = serviceConfig

// ...actually use AWS Amplify...

当然,你可能会想使您的凭据提供钩到自己的身份验证系统不知何故,但是这至少给你嗷嗷的想法通过自己的访问密钥和秘密密钥的SDK。

© www.soinside.com 2019 - 2024. All rights reserved.