使用临时 AWS 服务 凭证进行访问 - Amazon Cognito

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

使用临时 AWS 服务 凭证进行访问

成功使用身份池进行身份验证的结果是一组 AWS 凭据。使用这些证书,您的应用程序可以向受IAM身份验证保护的 AWS 资源发出请求。借助您可以添加到应用程序中以访问身份池API操作的各种 AWS SDKs内容,您可以发出未经身份验证的API请求,从而生成临时证书。然后,您可以将其他SDKs内容 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 通信,检索经过身份验证和未经身份验证的用户的唯一标识符,以及移动设备的临时有限 AWS 权限证书。 AWS SDK检索到的凭证的有效期为 1 小时,提供程序会在凭证过期时进行刷新。

要在 iOS 应用程序中使用 Amazon Cognito 身份池,请进行设置。 AWS 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 通信,检索经过身份验证和未经身份验证的用户的唯一标识符,以及移动设备的临时有限 AWS 权限证书。 AWS SDK检索到的凭证的有效期为 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 通信,检索经过身份验证和未经身份验证的用户的唯一标识符,以及移动设备的临时有限 AWS 权限证书。 AWS SDK检索到的凭证的有效期为 1 小时,提供程序会在凭证过期时进行刷新。

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

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

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

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

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

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

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

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