使用临时 Amazon Web Services 服务 凭证进行访问 - Amazon Cognito
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用临时 Amazon Web Services 服务 凭证进行访问

使用身份池成功进行身份验证的结果是一组 Amazon 凭证。使用这些证书,您的应用程序可以向受 IAM 身份验证保护的 Amazon 资源发出请求。借助您可以添加到应用程序中以访问身份池 API 操作的各种 Amazon SDKs 功能,您可以发出未经身份验证的 API 请求,从而生成临时证书。然后,您可以将其他 SDKs 内容 Amazon Web Services 服务 添加到您的客户端,并使用这些临时证书签署请求。向您的临时凭证角色授予的 IAM 权限必须允许您从其他服务请求的操作。

在配置您的 Amazon Cognito 凭证提供程序并检索 Amazon 证书后,创建一个 Amazon Web Services 服务 客户端。以下是 Amazon SDK 文档中的一些示例。

Amazon 用于创建客户端的 SDK 资源

下面的代码段初始化 Amazon DynamoDB 客户端:

要在安卓应用程序中使用 Amazon Cognito 身份池,请进行设置。 Amazon Amplify有关更多信息,请参阅《Amplify 开发中心》中的身份验证

// Create a service client with the provider AmazonDynamoDB client = new AmazonDynamoDBClient(credentialsProvider);

凭证提供者与 Amazon Cognito 通信,检索经过身份验证和未经身份验证的用户的唯一标识符,以及移动 SDK 的临时有限 Amazon 权限证书。 Amazon 检索到的凭证的有效期为 1 小时,提供程序会在凭证过期时进行刷新。

要在 iOS 应用程序中使用 Amazon Cognito 身份池,请进行设置。 Amazon Amplify有关更多信息,请参阅《Amplify 开发中心》中的 Swift 身份验证Flutter 身份验证

// 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 的临时有限 Amazon 权限证书。 Amazon 检索到的凭证的有效期为 1 小时,提供程序会在凭证过期时进行刷新。

要在 iOS 应用程序中使用 Amazon Cognito 身份池,请进行设置。 Amazon 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 的临时有限 Amazon 权限证书。 Amazon 检索到的凭证的有效期为 1 小时,提供程序会在凭证过期时进行刷新。

// Create a service client with the provider var dynamodb = new AWS.DynamoDB({region: 'us-west-2'});

凭证提供者与 Amazon Cognito 通信,检索经过身份验证和未经身份验证的用户的唯一标识符,以及移动 SDK 的临时 Amazon 有限权限证书。 Amazon 检索到的凭证的有效期为 1 小时,提供程序会在凭证过期时进行刷新。

适用于 Unity 的Amazon SDK 现在是 适用于 .NET 的 Amazon SDK 的一部分。要开始使用中的亚马逊 Cognito 适用于 .NET 的 Amazon SDK,请参阅开发者指南中的亚马逊 Cognito 凭证提供商。 适用于 .NET 的 Amazon SDK 或者,请参阅 Amplify 开发者中心,了解用于构建应用程序的选项。 Amazon Amplify

// create a service client that uses credentials provided by Cognito AmazonDynamoDBClient client = new AmazonDynamoDBClient(credentials, REGION);

凭证提供者与 Amazon Cognito 通信,检索经过身份验证和未经身份验证的用户的唯一标识符,以及移动 SDK 的临时 Amazon 有限权限证书。 Amazon 检索到的凭证的有效期为 1 小时,提供程序会在凭证过期时进行刷新。

适用于 Xamarin 的Amazon SDK 现在是 适用于 .NET 的 Amazon SDK 的一部分。要开始使用中的亚马逊 Cognito 适用于 .NET 的 Amazon SDK,请参阅开发者指南中的亚马逊 Cognito 凭证提供商。 适用于 .NET 的 Amazon SDK 或者,请参阅 Amplify 开发者中心,了解用于构建应用程序的选项。 Amazon Amplify

// create a service client that uses credentials provided by Cognito var client = new AmazonDynamoDBClient(credentials, REGION)

凭证提供者与 Amazon Cognito 通信,检索经过身份验证和未经身份验证的用户的唯一标识符,以及移动 SDK 的临时 Amazon 有限权限证书。 Amazon 检索到的凭证的有效期为 1 小时,提供程序会在凭证过期时进行刷新。