本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
将 Amazon Rekognition 用作 FedRAMP 授权服务
AWS FedRAMP 合规计划将 Amazon Rekognition 列为一项经过 FedRAMP 授权的服务。如果您是联邦或商业客户,则可以使用该服务来处理和存储 AWS 美国东部和美国西部地区的敏感工作负载,其数据最高可达中等影响级别。您可以将该服务用于 AWS GovCloud(美国)地区授权边界内的敏感工作负载,数据最高可达高影响级别。有关 FedRAMP 合规性的更多信息,请参阅 AWS FedRAMP 合规性。
要符合 FedRAMP 要求,您可以使用联邦信息处理标准 (FIPS) 端点。这样一来,您在处理敏感信息时便可访问 FIPS 140-2 验证的加密模块。有关 FIPS 端点的更多信息,请参阅 FIPS 140-2 概述。
您可以使用 AWS Command Line Interface (AWS CLI) 或 AWS 中的一个 SDKs 来指定 Amazon Rekognition 使用的终端节点。
有关可用于 Amazon Rekognition 的端点,请参阅 Amazon Rekognition 区域和端点。
以下是《Amazon Rekognition 开发人员指南》中列出集合主题的示例。这些示例进行了修改,以指定区域和通过其访问 Amazon Rekognition 的 FIPS 端点。
- Java
-
对于 Java,在构建 Amazon Rekognition 客户端时可使用 withEndpointConfiguration
方法。以下示例显示了在美国东部(弗吉尼亚北部)区域使用 FIPS 端点的集合:
//Copyright 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
//PDX-License-Identifier: MIT-0 (For details, see https://github.com/awsdocs/amazon-rekognition-developer-guide/blob/master/LICENSE-SAMPLECODE.)
package aws.example.rekognition.image;
import java.util.List;
import com.amazonaws.services.rekognition.AmazonRekognition;
import com.amazonaws.services.rekognition.AmazonRekognitionClientBuilder;
import com.amazonaws.services.rekognition.model.ListCollectionsRequest;
import com.amazonaws.services.rekognition.model.ListCollectionsResult;
public class ListCollections {
public static void main(String[] args) throws Exception {
AmazonRekognition amazonRekognition = AmazonRekognitionClientBuilder.standard()
.withEndpointConfiguration(new AwsClientBuilder.EndpointConfiguration("https://rekognition-fips.us-east-1.amazonaws.com","us-east-1"))
.build();
System.out.println("Listing collections");
int limit = 10;
ListCollectionsResult listCollectionsResult = null;
String paginationToken = null;
do {
if (listCollectionsResult != null) {
paginationToken = listCollectionsResult.getNextToken();
}
ListCollectionsRequest listCollectionsRequest = new ListCollectionsRequest()
.withMaxResults(limit)
.withNextToken(paginationToken);
listCollectionsResult=amazonRekognition.listCollections(listCollectionsRequest);
List < String > collectionIds = listCollectionsResult.getCollectionIds();
for (String resultId: collectionIds) {
System.out.println(resultId);
}
} while (listCollectionsResult != null && listCollectionsResult.getNextToken() !=
null);
}
}
- AWS CLI
-
对于 AWS CLI,使用--endpoint-url
参数指定访问亚马逊 Rekognition 的终端节点。以下示例显示了在美国东部(俄亥俄州)区域使用 FIPS 端点的集合:
aws rekognition list-collections --endpoint-url https://rekognition-fips.us-east-2.amazonaws.com --region us-east-2
- Python
-
对于 Python,可在 boto3.client 函数中使用 endpoint_url
参数。将其设置为要指定的端点。以下示例显示了在美国西部(俄勒冈州)区域使用 FIPS 端点的集合:
#Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
#PDX-License-Identifier: MIT-0 (For details, see https://github.com/awsdocs/amazon-rekognition-developer-guide/blob/master/LICENSE-SAMPLECODE.)
import boto3
def list_collections():
max_results=2
client=boto3.client('rekognition', endpoint_url='https://rekognition-fips.us-west-2.amazonaws.com', region_name='us-west-2')
#Display all the collections
print('Displaying collections...')
response=client.list_collections(MaxResults=max_results)
collection_count=0
done=False
while done==False:
collections=response['CollectionIds']
for collection in collections:
print (collection)
collection_count+=1
if 'NextToken' in response:
nextToken=response['NextToken']
response=client.list_collections(NextToken=nextToken,MaxResults=max_results)
else:
done=True
return collection_count
def main():
collection_count=list_collections()
print("collections: " + str(collection_count))
if __name__ == "__main__":
main()