本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
访问AWS 服务使用临时证书
使用身份池成功进行身份验证的结果是一组 AWS 凭证。使用这些证书,您的应用程序可以向受 IAM 身份验证保护的AWS资源发出请求。您可以将各种AWS软件开发工具包添加到应用程序中以访问身份池 API 操作,从而发出未经身份验证的 API 请求,从而生成临时证书。然后,您可以将其他人的软件开发工具包AWS 服务添加到您的客户端,并使用这些临时证书签署请求。向您的临时凭证角色授予的 IAM 权限必须允许您从其他服务请求的操作。
在配置您的 Amazon Cognito 凭证提供程序并检索AWS证书后,创建一个AWS 服务客户端。以下是 AWS SDK 文档中的一些示例。
AWS用于创建客户端的 SDK 资源
下面的代码段初始化 Amazon DynamoDB 客户端:
要在安卓应用程序中使用 Amazon Cognito 身份池,请进行设置。AWS Amplify有关更多信息,请参阅《Amplify 开发中心》中的身份验证
// Create a service client with the provider AmazonDynamoDB client = new AmazonDynamoDBClient(credentialsProvider);
凭证提供者与 Amazon Cognito 通信,检索经过身份验证和未经身份验证的用户的唯一标识符,以及移动 SDK 的临时有限AWS权限证书。AWS检索到的凭证的有效期为 1 小时,提供程序会在凭证过期时进行刷新。
要在 iOS 应用程序中使用 Amazon Cognito 身份池,请进行设置。AWS Amplify有关更多信息,请参阅《Amplify 开发中心》中的 Swift 身份验证
// create a configuration that uses the provider AWSServiceConfiguration *configuration = [AWSServiceConfiguration configurationWithRegion:AWSRegionUSEast1 provider:credentialsProvider]; // get a client with the default service configuration AWSDynamoDB *dynamoDB = [AWSDynamoDB defaultDynamoDB];
凭证提供者与 Amazon Cognito 通信,检索经过身份验证和未经身份验证的用户的唯一标识符,以及移动 SDK 的临时有限AWS权限证书。AWS检索到的凭证的有效期为 1 小时,提供程序会在凭证过期时进行刷新。
要在 iOS 应用程序中使用 Amazon Cognito 身份池,请进行设置。AWS Amplify有关更多信息,请参阅《Amplify 开发中心》中的 Swift 身份验证
// get a client with the default service configuration let dynamoDB = AWSDynamoDB.default() // get a client with a custom configuration AWSDynamoDB.register(with: configuration!, forKey: "USWest2DynamoDB"); let dynamoDBCustom = AWSDynamoDB(forKey: "USWest2DynamoDB")
凭证提供者与 Amazon Cognito 通信,检索经过身份验证和未经身份验证的用户的唯一标识符,以及移动 SDK 的临时有限AWS权限证书。AWS检索到的凭证的有效期为 1 小时,提供程序会在凭证过期时进行刷新。
// Create a service client with the provider var dynamodb = new AWS.DynamoDB({region: 'us-west-2'});
凭证提供者与 Amazon Cognito 通信,检索经过身份验证和未经身份验证的用户的唯一标识符,以及移动 SDK 的临时AWS有限权限证书。AWS检索到的凭证的有效期为 1 小时,提供程序会在凭证过期时进行刷新。
适用于 Unity 的 AWS SDK 现在是 适用于 .NET 的 SDK 的一部分。要开始使用中的亚马逊 Cognito适用于 .NET 的 SDK,请参阅开发者指南中的亚马逊 Cognito 凭证提供商。适用于 .NET 的 AWS SDK或者,请参阅 Amplify 开发者中心
// create a service client that uses credentials provided by Cognito AmazonDynamoDBClient client = new AmazonDynamoDBClient(credentials, REGION);
凭证提供者与 Amazon Cognito 通信,检索经过身份验证和未经身份验证的用户的唯一标识符,以及移动 SDK 的临时AWS有限权限证书。AWS检索到的凭证的有效期为 1 小时,提供程序会在凭证过期时进行刷新。
适用于 Xamarin 的 AWS SDK 现在是 适用于 .NET 的 SDK 的一部分。要开始使用中的亚马逊 Cognito适用于 .NET 的 SDK,请参阅开发者指南中的亚马逊 Cognito 凭证提供商。适用于 .NET 的 AWS SDK或者,请参阅 Amplify 开发者中心
// create a service client that uses credentials provided by Cognito var client = new AmazonDynamoDBClient(credentials, REGION)
凭证提供者与 Amazon Cognito 通信,检索经过身份验证和未经身份验证的用户的唯一标识符,以及移动 SDK 的临时AWS有限权限证书。AWS检索到的凭证的有效期为 1 小时,提供程序会在凭证过期时进行刷新。