クエリ API を使用して、プログラムで IAM および AWS STS サービスにアクセスできます。Query API リクエストは、HTTPS リクエストであり、実行するべきアクションを示す Action
パラメータを含める必要があります。IAM および AWS STS は、すべてのアクションの GET リクエストおよび POST リクエストをサポートしています。つまり、API は、あるアクションに対しては GET を、他のアクションに対しては POST をといった使い分けを必要としません。しかしながら、GET リクエストは URL のサイズに制限があります。この制限はブラウザによって異なり、通常は 2048 バイトです。したがって、大きなサイズを必要とする Query API リクエストにおいては、POST リクエストを使用する必要があります。
レスポンスは XML 文書です。応答の詳細については、IAM API リファレンス または AWS Security Token Service API リファレンス にある個別の アクションページを参照してください。
ヒント
IAM または AWS STS API オペレーションを直接呼び出す代わりに、AWS SDK のいずれかを使用することができます。AWS SDK は、さまざまなプログラム言語およびプラットフォームのライブラリやサンプルコード (Java、Ruby、.NET、iOS、Android など) から成ります。SDK は、IAM や AWS へのプログラムによるアクセス権限を作成する際に役立ちます。例えば、SDK は暗号化された署名リクエスト(下記参照)、エラー管理、リクエストの自動再試行といったタスクに対応します。AWS SDK のダウンロードやインストールなどの詳細については、「Amazon Web Services のツール
API のアクションやエラーの詳細については、「IAM API リファレンス」または「AWS Security Token Service API リファレンス」を参照してください。
エンドポイント
IAM および AWS STS にはそれぞれ 1 つずつグローバルエンドポイントがあります。
重要
AWS STS は、グローバルエンドポイントに加えて、リージョンエンドポイントへのリクエストの送信もサポートしています。 AWS は、レイテンシーを低減し、冗長性を構築し、セッショントークンの有効性を高めるために、グローバルエンドポイントではなくリージョンエンドポイントを使用することを推奨しています。リージョンの AWS STS を使用する前に、AWS アカウント のそのリージョンで STS をアクティブ化する必要があります。AWS STS のその他のリージョンのアクティブ化については、「AWS リージョン で AWS STS を管理する」を参照してください。
すべてのサービスの AWS エンドポイントとリージョンの詳細については、「AWS 全般のリファレンス」の「サービスのエンドポイントとクォータ」を参照してください。
HTTPS の必要性
クエリ API は認証情報のような取扱いに注意が必要な情報を応答返信するため、すべての API リクエストに HTTPS を必ず使用しなければなりません。
IAM API リクエストのサインアップ
リクエストには、アクセスキー ID およびシークレットアクセスキーによる署名が必要です。IAM での日常業務には、AWS アカウントのルートユーザー 認証情報を使用しないよう強くお勧めします。IAM ユーザーの認証情報を使用できます。また、AWS STS を使用して一時的セキュリティ認証情報を生成することもできます。
API リクエストをサインアップする際には、AWS 署名バージョン 4 の使用が推奨されます。署名バージョン 4 の使用については、『 全般のリファレンス』の「AWS署名バージョン 4 の署名プロセス」を参照してください。
署名バージョン 2 を使用する必要がある場合には、「AWS 全般のリファレンス」を参照してください。
詳細については、次を参照してください:
-
AWS セキュリティ認証情報。AWS へのアクセスに使用された認証情報の種類に関する一般的情報を提供します。
-
IAM でのセキュリティのベストプラクティス. AWS リソースの安全を確保するため、IAM サービスを使用するにあたっての提案事項のリストを表示します。
-
IAM の一時的な認証情報. 一時的な認証情報の作成方法と使用方法を説明します。