

# 使用 HTTP 查询请求调用 IAM API
<a name="programming"></a>

**Topics**
+ [端点](#IAMEndpoints)
+ [必须使用 HTTPS](#IAMHTTPSRequired)
+ [签署 IAM API 请求](#SigVersion)

您可以使用查询 API 以编程方式访问 IAM 和 AWS STS 服务。查询 API 请求是必须包含参数 `Action` 以指示要执行的操作的 HTTPS 请求。IAM 和 AWS STS 支持所有操作的 GET 和 POST 请求。也就是说，API 不要求您使用某些操作的 GET 请求和其他操作的 POST 请求。然而，GET 请求受 URL 的大小限制；此限制与浏览器相关，通常为 2048 字节。因此，对于要求更高的查询 API 请求，您必须使用 POST 请求。

响应是 XML 文档。有关响应的详细信息，请参阅 [IAM 参考](https://docs.aws.amazon.com/IAM/latest/APIReference/)或 [AWS Security Token Service API 参考](https://docs.aws.amazon.com/STS/latest/APIReference/)中的单个操作页面。

**提示**  
您可以使用 AWS SDK 之一，而不是直接调用 IAM 或 AWS STS API 操作。AWS SDK 中包含适用于各种编程语言和平台（Java、Ruby、.NET、iOS、Android 等）的库和示例代码。开发工具包提供了可通过编程方式访问 IAM 和 AWS 的便捷方式。例如，这些开发工具包负责处理各种任务，例如以加密方式签署服务请求 (见下文)、管理错误以及自动重试请求。有关 AWS 软件开发工具包的信息（包括如何下载及安装），请参阅[适用于 Amazon Web Services 的工具](https://aws.amazon.com/tools/)页面。

有关这些 API 操作和错误的详细信息，请参阅 [IAM 参考](https://docs.aws.amazon.com/IAM/latest/APIReference/)或 [AWS Security Token Service API 参考](https://docs.aws.amazon.com/STS/latest/APIReference/)。

## 端点
<a name="IAMEndpoints"></a>

IAM 和 AWS STS 各有一个全球终端节点：
+ (IAM) [https://iam.amazonaws.com](https://iam.amazonaws.com)
+ (AWS STS) [https://sts.amazonaws.com](https://sts.amazonaws.com)

**重要**  
除了全局端点，AWS STS 还支持将请求发送到区域端点。AWS 建议使用区域端点来减少延迟，建立冗余以及提高会话令牌有效性，而不是使用全局端点。必须先在一个区域中为您的 AWS 账户 激活 STS，然后才能在该区域中使用 AWS STS。有关为 AWS STS 激活其他区域的更多信息，请参阅[管理 AWS 区域中的 AWS STS](id_credentials_temp_enable-regions.md)。

有关所有服务的 AWS 端点和区域的更多信息，请参阅《AWS 一般参考》中的 [服务端点和限额](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html)**。

## 必须使用 HTTPS
<a name="IAMHTTPSRequired"></a>

由于查询 API 返回安全凭证等敏感信息，必须对所有 API 请求使用 HTTPS 。

## 签署 IAM API 请求
<a name="SigVersion"></a>

必须使用访问密钥 ID 和秘密访问密钥签署请求。我们强烈建议您不要使用 AWS 账户根用户凭证处理 IAM 日常工作。您可以使用 IAM 用户凭证，也可以使用 AWS STS 生成临时安全凭证。

如需对 API 请求进行签名，建议您使用 AWS 签名版本 4。有关使用签名版本 4 的信息，请转到 *AWS 常规参考* 中的[签名版本 4 签名流程](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html)。

如需使用签名版本 2，可以在 [AWS 常规参考](https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html)中获取有关签名版本 2 使用方法的信息。

有关更多信息，请参阅下列内容：
+  [AWS 安全凭证](https://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html)。提供有关用于访问 AWS 的凭证类型的一般信息。
+ [IAM 的安全防御最佳实操](best-practices.md).提出一系列使用 IAM 服务帮助保护 AWS 资源的建议。
+ [IAM 临时安全凭证](id_credentials_temp.md).说明如何创建和使用临时安全凭证。