Конечно, вы можете сделать это.
Изучите этот раздел о том, как они настраивают учетные данные для TransferUtility . Здесь они используют Cognito в качестве поставщика учетных данных.
let credentialProvider = AWSCognitoCredentialsProvider(regionType: YOUR-IDENTITY-POOL-REGION, identityPoolId: "YOUR-IDENTITY-POOL-ID")
Вместо этого вы можете использовать статический поставщик учетных данных, который использует идентификатор ключа доступа вашего пользователя IAM и секретный ключ:
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)!
)