我想在IOS上使用AWS SDK在S3上传输文件。要在IOS上设置AWS sdk,需要AWS cognito服务为该用户提供一个身份池,但我只想使用AWS sdk通过访问密钥和秘密访问密钥将文件传输到s3。
因此可以将Amazon sdk用于IOS,而不必为此使用Amazon Cognito和其他服务。
此外,当我在.Net上使用AWS sdk时,仅访问密钥和密钥就不需要任何其他服务。
答案 0 :(得分:1)
当然可以。
签出this section on how they configure credentials for the TransferUtility。在这里,他们使用Cognito作为凭据提供者。
let credentialProvider = AWSCognitoCredentialsProvider(regionType: YOUR-IDENTITY-POOL-REGION, identityPoolId: "YOUR-IDENTITY-POOL-ID")
相反,您可以使用静态凭证提供程序,该提供程序使用IAM用户的访问密钥ID和机密:
let credentialsProvider = AWSStaticCredentialsProvider(accessKey: "YOUR-ACCESS-KEY-ID", secretKey: "YOUR-SECRET-KEY")
实例化S3服务时,将提供凭据提供程序接口作为AWSServiceConfiguration
的参数。就像他们使用传输实用程序一样:
//Register a transfer utility object
AWSS3TransferUtility.register(
with: AWSServiceConfiguration(region: .USEast1, credentialsProvider: credentialProvider)!
)