【外部リンク】
https://aws.amazon.com/jp/iam/faqs/
全般
IAM ユーザーの管理
IAM ロールの管理
アクセス許可
Policy Simulator
サインイン
一時的なセキュリティ認証情報
認証フェデレーション
請求
その他の質問
Multi-Factor Authentication
料金
AWS を無料でお試しください
まずは無料で始める
またはコンソールにサインイン
12 か月間の AWS 無料利用枠と、24 時間年中無休のカスタマーサービスやサポートフォーラムなどの AWS の基本的なサポート機能を利用できます。
全般
Q: AWS Identity and Access Management (IAM) とは何ですか?
AWS IAM を使用して、お客様の AWS リソースへの個人またはグループによるアクセスを安全にコントロールすることができます。ユーザー ID ("IAM ユーザー") を作成また管理し、リソースへのアクセス許可をその IAM ユーザーに付与することができます。AWS 外部のユーザー (フェデレーティッドユーザー) にアクセス許可を付与することもできます。
Q: どのように IAM の使用を開始すればよいですか?
IAM の使用を開始するには、IAM と統合している AWS のサービスのうち少なくとも 1 つに加入する必要があります。その後、IAM API、AWS CLI、または IAM コンソール (ポイントアンドクリックのウェブベースのインターフェイスが使用可能) を使って、ユーザー、グループ、アクセス許可を作成および管理できます。また、ビジュアルエディターを使用してポリシーを作成することもできます。
Q: IAM ではどのような問題を解決できますか?
IAM により、複数のユーザーに AWS リソースへの安全なアクセスを簡単に提供できます。IAM により以下が可能となります。
IAM ユーザーとそのアクセスの管理: AWS のアイデンティティ管理システムでユーザーを作成する、ユーザーに個々のセキュリティ認証情報 (アクセスキー、パスワード、多要素認証デバイスなど) を割り当てる、または一時的なセキュリティ認証情報をリクエストしてユーザーに AWS のサービスおよびリソースへのアクセスを提供することができます。ユーザーにどの操作の実行を許可するかを、管理者が指定できます。
フェデレーティッドユーザーのアクセスを管理: 社内ディレクトリで管理するユーザー用に設定可能な有効期限とセキュリティ認証情報をリクエストして、従業員やアプリケーションがお客様の AWS アカウントのリソースへセキュリティ上安全な方法でアクセスできるようにすることができます。それぞれに IAM ユーザーアカウントを作成する必要はありません。これらのセキュリティ認証情報にアクセス許可を指定して、ユーザーが実行できる操作をコントロールします。
Q: 誰が IAM を使用できますか?
すべての AWS のお客様は IAM を使用することができます。IAM は追加料金なしで提供しています。課金は、お客様のユーザーが使用した、AWS の他のサービスに対してのみ行われます。
Q: ユーザーとは何ですか?
ユーザーとは、AWS サービスやアプリケーションにより認識される独特の認証です。Windows や UNIX などのオペレーティングシステムのログインユーザーと同様に、ユーザーは独特の名前を持ち、パスワードやアクセスキーなどの一般的なセキュリティ認証情報を使用して自分自身の身元を証明することができます。ユーザーは、AWS サービスへのアクセスを必要とする個人、システム、またはアプリケーションとなります。IAM は AWS の ID 管理システムで管理されているユーザー(「IAM ユーザー」と呼ばれる)をサポートし、また社内ディレクトリで AWS 外で管理されるユーザー(「フェデレーティッドユーザー」と呼ばれる)に AWS リソースへのアクセスを許可することができます。
Q: ユーザーは何ができますか?
ユーザーは、Amazon S3 や Amazon EC2 のようなウェブサービスに対してリクエストを実行できます。ユーザーがウェブサービス API にアクセスできるかどうかは、そのユーザーが定義されている AWS アカウントの責任で管理されます。IAM と統合している AWS のサービスのうち、AWS アカウントが加入している AWS のサービスの一部または全部に、ユーザーがアクセスすることを許可できます。許可されていれば、ユーザーは AWS アカウントのすべてのリソースへアクセスすることができます。また、AWS アカウントが別の AWS アカウントのリソースへのアクセス権を持っている場合は、そのユーザーに、それらの AWS アカウントのデータへのアクセス権を与えることも可能です。ユーザーによって作成されたいずれの AWS リソースも、その AWS アカウントでコントロールされ、支払われます。ユーザーが独立して AWS サービスに加入したり、リソースをコントロールしたりすることはできません。
Q: ユーザーはどのように AWS のサービスを呼び出しますか?
ユーザーは、セキュリティ認証情報を使用して AWS サービスにリクエストを出すことができます。明示的なアクセス許可により、ユーザーが AWS のサービスを呼び出すことができるかどうかを管理します。デフォルトでは、ユーザーはアカウントに代わってサービス API を呼び出すことはできません。
Q: どのように IAM の使用を開始すればよいですか?
IAM の使用を開始するには、IAM と統合している AWS のサービスのうち少なくとも 1 つに加入する必要があります。その後、IAM API、AWS CLI、または IAM コンソール (ポイントアンドクリックのウェブベースのインターフェイスが使用可能) を使って、ユーザー、グループ、およびアクセス許可を作成および管理できます。また、ポリシー作成のために、AWS Policy Generator を使用することができます。
IAM ユーザーの管理
Q: IAM ユーザーの管理はどのように行うのですか?
IAM では、複数の方法で、次の各操作を実行できます。
IAM ユーザーの作成と管理。
IAM グループの作成と管理。
ユーザーのセキュリティ認証情報の管理。
AWS のサービスとリソースにアクセス許可を付与するポリシーの作成と管理。
IAM API、AWS CLI、または IAM コンソールを使用して、ユーザー、グループ、ポリシーを作成および管理できます。ポリシーの作成とテストには、ビジュアルエディターと IAM ポリシーシミュレーターを使用することもできます。
Q: グループとは何ですか?
グループとは IAM ユーザーの集合です。グループメンバーシップを簡単なリストとして管理します。
グループへのユーザーの追加や、グループからのユーザーの削除を実行します。
ユーザーは複数のグループに属することができます。
グループが他のグループに属することはできません。
グループには、アクセスコントロールポリシーを使用してアクセス許可が付与されます。これにより、ユーザーの集合のアクセス許可を管理することができ、個々のユーザーのアクセス許可を管理するよりもより簡単となります。
グループはセキュリティ認証情報を持たず、直接ウェブサービスにアクセスすることはできません。ユーザーのアクセス許可の管理を容易にするため、これらは単独で存在します。詳細については、グループやユーザーの操作を参照してください。
Q: IAM ユーザーはどのような種類のセキュリティ認証情報を持つことができますか?
IAM ユーザーは、AWS アクセスキー、X.509 証明書、SSH キー、ウェブアプリログイン用パスワード、MFA デバイスなど、AWS でサポートされている認証情報を自由に組み合わせて使用できます。これにより、各ユーザーが、それぞれ自分に適した方法で AWS とやり取りできます。例えば、社員は AWS アクセスキーとパスワードの両方を使用し、ソフトウェアシステムは AWS アクセスキーのみを使用してプログラムを呼び出し、IAM ユーザーはプライベート SSH キーを使用して AWS CodeCommit リポジトリにアクセスし、外部の請負業者は X.509 証明書のみを使用して EC2 コマンドラインインターフェイスにアクセスする、といった具合です。詳細については、IAM ドキュメントの一時的なセキュリティ認証情報を参照してください。
Q: AWS のどのサービスが IAM ユーザーをサポートしていますか?
IAM ユーザーをサポートする AWS のサービスの完全なリストについては、IAM ドキュメントの IAM と連携する AWS サービスを参照してください。AWS は順次、他サービスに IAM サポートを追加する予定です。
Q: ユーザーアクセスを有効および無効にできますか?
はい。IAM API、AWS CLI、または IAM コンソールを使用して、IAM ユーザーのアクセスキーを有効および無効にできます。アクセスキーを無効にすると、そのユーザーは AWS のサービスにプログラムでアクセスできなくなります。
Q: AWS アカウントのユーザーを管理できるのは誰ですか?
AWS アカウント所有者がユーザー、グループ、セキュリティ認証情報、アクセス許可を管理することができます。また、他のユーザーを管理するために、個々のユーザーに IAM API への呼び出しができるアクセス許可を付与することができます。例えば、企業のユーザーを管理するための管理者ユーザーを作成できます。これは推奨される方法です。他のユーザーを管理するためのアクセス許可をユーザーに付与した場合、そのユーザーは IAM API、AWS CLI、または IAM コンソールを使用してその管理を行うことができます。
Q: LDAP のように、ユーザーの集合を階層的に構成できますか?
はい。ユーザーおよびグループは、Amazon S3 のオブジェクトパスと同様に、パスを使って編成できます。例えば、/mycompany/division/project/joe などです。
Q: ユーザーをリージョンごとに定義できますか?
今はできません。AWS アカウントと同様、ユーザーは、グローバルエンティティです。ユーザーのアクセス許可を定義するとき、リージョンを指定する必要はありません。ユーザーはどの地理的リージョンでも AWS のサービスを使用できます。
Q: IAM ユーザーの MFA デバイスは、どのように設定されていますか?
AWS アカウントの所有者は、複数の MFA デバイスに命令を出すことができます。その後、IAM API、AWS CLI、またはIAM コンソールを使用して、これらのデバイスを個々の IAM ユーザーに割り当てることができます。
Q: どのような種類のキーローテーションが IAM ユーザーに対してサポートされていますか?
AWS アカウントのルートアクセス識別子と同様に、ユーザーのアクセスキーと X.509 証明書をローテーションできます。IAM API、AWS CLI、または IAM コンソールを使用して、ユーザーのアクセスキーと X.509 証明書をプログラムで管理および更新できます。
Q: IAM ユーザーは個々の EC2 SSH キーを持つことができますか?
初期リリースではできません。IAM は EC2 SSH キーや Windows の RDP 証明書には影響しません。つまり、各ユーザーが、ウェブサービス API へのアクセスに異なる認証情報を使用していても、自分が定義されている AWS アカウントに共通の SSH キーを共有する必要があることになります。
Q: どのような場合に自分の SSH キーを使用できますか?
現時点で、IAM ユーザーが自分の SSH キーを使用できるのは、AWS CodeCommit で自分のリポジトリにアクセスする場合のみです。
Q: IAM ユーザーの名前は E メールアドレスでなければなりませんか?
いいえ。しかし、E メールアドレスでもかまいません。ユーザー名は特定の AWS アカウント内で一意の ASCII 文字列です。E メールアドレスを含め、選択した任意の命名規則を使用して名前を割り当てることができます。
Q: IAM ユーザー名にはどの文字セットを使用できますか?
IAM エンティティに使用できる文字は ASCII 文字のみです。
Q: ユーザー名以外のユーザー属性はサポートされていますか?
現在はできません。
Q: ユーザーのパスワードはどのように設定されるのですか?
IAM コンソール、AWS CLI、または IAM API を使用して、IAM ユーザーの初期パスワードを設定できます。初期プロビジョニング以降にユーザーのパスワードが平文(クリアテキスト)で表示されることはなく、API 呼び出しを介して表示されたり返されたりすることもありません。IAM ユーザーが自身のパスワードを管理するには、IAM コンソールの My Password ページを使用します。ユーザーは AWS マネジメントコンソールの右上にあるドロップダウンウリストから [Security Credentials] オプションを選択することで、このページにアクセスできます。
Q: ユーザーのパスワードに関するポリシーを管理者が定義することはできますか?
はい。パスワードの最小長を定義したり、数字を 1 つ以上含めるようにするなど、強力なパスワードを要求できます。自動パスワード失効の実施、以前に使用したパスワードの再利用禁止、次回 AWS サインイン時のパスワードリセットの要求も設定できます。詳細については、「IAM ユーザー用のアカウントパスワードポリシーの設定」を参照してください。
Q: IAM ユーザーの使用量クォータを設定することはできますか?
いいえ。すべての制限は AWS に一括設定されます。例えば、AWS アカウントの Amazon EC2 インスタンス数が 20 個までに制限されている場合、EC2 に対するアクセス許可を持つ IAM ユーザーはその上限までインスタンスを開始できます。個々のユーザーが実行可能な操作を制限することはできません。
IAM ロールの管理
Q: IAM ロールとは何ですか?
IAM ロールは、AWS のサービスをリクエストするための一連のアクセス許可を定義する IAM エンティティです。IAM ロールは特定のユーザーまたはグループに関連付けられません。代わりに、信頼されたエンティティが、IAM ユーザー、アプリケーション、AWS のサービス (EC2 など) などのロールを引き受けます。
Q: IAM ロールによってどのような問題を解決できますか?
IAM ロールを使用すると、長期間有効なアクセスキーを共有しなくても、定義済みのアクセス許可を使用して、信頼されたエンティティにアクセスを委任することができます。また、IAM ロールを使用して、お客様のアカウント内で管理されている IAM ユーザー、別の AWS アカウントの IAM ユーザー、および EC2 などの AWS のサービスにアクセスを委任することができます。
Q: IAM ロールはどのように開始すればよいのですか?
ロールの作成は、ユーザーの作成と同じように行います。つまり、ロールに名前を付け、ポリシーをアタッチします。詳細については、「IAM ロールの作成」を参照してください。
Q: IAM ロールはどのようにして適用するのですか?
IAM ロールは、AWS Security Token Service (STS) AssumeRole API(すなわち、AssumeRole、AssumeRoleWithWebIdentity、および AssumeRoleWithSAML)を呼び出すことで適用します。これらの API は一時的なセキュリティ認証情報のセットを返します。アプリケーションは返された認証情報を使用して、AWS サービス API へのリクエストに署名できます。
Q: 適用できる IAM ロールはいくつですか?
適用できる IAM ロールの数に制限はありませんが、AWS のサービスに対してリクエストを作成する際には、1 つの IAM ロール内でのみ実行できます。
Q: 誰が IAM ロールを使用できるのですか?
すべての AWS のお客様が IAM ロールを使用できます。
Q: IAM ロールの料金はいくらですか?
IAM ロールは無料でお使いいただけます。AWS アカウント内のロールが使用するすべてのリソースについては、引き続きお支払いいただきます。
Q: IAM ロールはどのように管理されるのですか?
IAM API、AWS CLI、または IAM コンソール(ポイントアンドクリックのウェブベースのインターフェイスが使用可能)を通して、IAM ロールの作成と管理を行うことができます。
Q: IAM ロールと IAM ユーザーの違いは何ですか?
IAM ユーザーには永続的な長期の認証情報があります。また、IAM ユーザーを使用して AWS サービスと直接やり取りすることができます。IAM ロールには認証情報がなく、AWS サービスに対して直接リクエストを送信することはできません。IAM ロールは、IAM ユーザー、アプリケーション、AWS のサービス (EC2 など) などの認可されたエンティティに割り当てるために用意されたものです。
Q: IAM ユーザー、IAM グループ、または IAM ロールはどのように使い分ける必要がありますか?
IAM ユーザーには永続的な長期の認証情報があります。また、IAM ユーザーを使用して AWS のサービスと直接やり取りすることができます。IAM グループは、主に、許可が同じ1組の IAM ユーザーを管理するための管理用の機能です。IAM ロールとは、AWS サービスリクエストの送信許可を持つ AWS Identity and Access Management (IAM)エンティティです。IAM ロールから AWS のサービスに対してリクエストを直接送信することはできません。IAM ロールは、IAM ユーザー、アプリケーション、AWS のサービス (EC2 など) などの認可されたエンティティに割り当てるために用意されたものです。IAM ロールは AWS アカウント間でアクセス権限を委任するために使用します。
Q: IAM グループに IAM ロールを追加できますか?
現在はできません。
Q: IAM ロールにアタッチできるポリシーはいくつですか?
インラインポリシーの場合: ユーザー、ロール、グループに追加できるインラインポリシー数に制限はありません。ただし、エンティティあたりの合計ポリシーサイズ (すべてのインラインポリシーの合計サイズ) が次の制限を超えることはできません。
ユーザーポリシーサイズは最大 2,048 文字です。
ロールポリシーサイズは最大 10,240 文字です。
グループポリシーサイズは最大 5,120 文字です。
管理ポリシーの場合: 最大 10 個の管理ポリシーをユーザー、ロール、グループに追加できます。各管理ポリシーのサイズは最大 6,144 文字です。
Q: IAM ロールをいくつ作成できますか?
1 つの AWS アカウントで作成できる IAM ロール数の上限は 1,000 です。これ以上のロールが必要な場合は、ユースケースを添えて、IAM 制限の引き上げリクエストフォームを送信してください。AWS で検討いたします。
Q: アプリケーションからどのサーバーにリクエストを送信できますか?
ロールセッションをサポートするすべての AWS サービスに、アプリケーションからリクエストを送信できます。
Q: EC2 インスタンスの IAM ロールとは何ですか?
EC2 インスタンスのための IAM ロールによって、EC2 で動作中のアプリケーションから AWS サービス(Amazon S3、Amazon SQS、Amazon SNS など)に対してリクエストを送信する際、そのインスタンスに AWS アクセスキーをコピーしなくて済みます。詳細については、Amazon EC2 の IAM ロールを参照してください。
Q: EC2 インスタンスの IAM ロールにはどのような機能がありますか?
EC2 インスタンスの IAM ロールには次の機能があります。
実行中の EC2 インスタンスから AWS サービスにリクエストを送信するときに使用する AWS の一時的セキュリティ認証情報。
AWS の一時的セキュリティ認証情報の自動更新。
EC2 インスタンスで実行中のアプリケーションに対する詳細な AWS サービス許可。
Q: EC2 インスタンスの IAM ロールを使用すると、どのような問題を解決できますか?
EC2 インスタンスの IAM ロールを使用すると、AWS アクセスキーを管理し、EC2 インスタンスにデプロイする作業が簡素化されます。この機能を使用して、IAM ロールをインスタンスと関連付けます。次に、一時的なセキュリティ認証情報が、EC2 インスタンスからインスタンスで実行されているアプリケーションに提供されます。アプリケーションはこの認証情報を使用して、ロール内で定義されている AWS のサービスリソースにリクエストを安全に送信できます。
Q: EC2 インスタンスの IAM ロールを使い始めるにはどうすればよいですか?
EC2 インスタンスでロールがどのように機能するかを理解するには、IAM コンソールを使用してロールを作成し、そのロールを使用する EC2 インスタンスを起動して、実行中のインスタンスを検証する必要があります。インスタンスのメタデータを調べて、ロールの認証情報がインスタンスでどのようにして使用可能になったかを確認できます。また、インスタンスで実行されるアプリケーションがそのロールをどのように使用できるかも確認できます。詳細については、「使用を開始する方法をお知りになりたいですか?」をご覧ください。
Q: 複数の EC2 インスタンスに同じ IAM ロールを使用できますか?
はい。
Q: 実行中の EC2 インスタンスで IAM ロールを変更できますか?
はい。通常、ロールは起動時に EC2 インスタンスに割り当てられますが、既に実行中の EC2 インスタンスに割り当てることもできます。実行中のインスタンスにロールを割り当てる方法については、Amazon EC2 の IAM ロールをご覧ください。実行中のインスタンスに関連付けられている IAM ロールのアクセス許可を変更することもできます。更新されたアクセス許可は、ほぼ即座に反映されます。
Q: 既に実行中の EC2 インスタンスに IAM ロールを関連付けることはできますか?
はい。既に実行中の EC2 インスタンスにロールを割り当てることができます。既に実行中のインスタンスにロールを割り当てる方法については、Amazon EC2 の IAM ロールをご覧ください。
Q: IAM ロールと Auto Scaling グループを関連付けることはできますか?
はい。Auto Scaling の起動設定にパラメータとして IAM ロールを追加し、その起動設定を使用して Auto Scaling グループを作成できます。IAM ロールが関連付けられている Auto Scaling グループで起動されるすべての EC2 インスタンスは、起動時に、そのロールを入力パラメーターとして使用します。詳細については、Auto Scaling 開発者ガイドの「Auto Scaling とは何か」を参照してください。
Q: 1 つの EC2 インスタンスに複数の IAM ロールを関連付けることはできますか?
いいえ。1つの EC2 インスタンスに同時に関連付けることができるのは1つの IAM ロールのみです。インスタンスあたり 1 つというロールの制限を増やすことはできません。
Q: 実行中の EC2 インスタンスと関連付けられている IAM ロールを削除するとどうなりますか?
そのロールを使用しているインスタンスで実行中のアプリケーションは、即座にアクセスを拒否されるようになります。
Q: IAM ユーザーが EC2 インスタンスと関連付けることができる IAM ロールを制御できますか?
はい。詳細については、「Amazon EC2 でのロールの使用に必要なアクセス許可」をご覧ください。
Q: IAM ロールを使って EC2 インスタンスを起動するために必要なアクセス許可は何ですか?
ロールを使って EC2 インスタンスを起動するには、次の 2 つのアクセス許可を IAM ユーザーに付与する必要があります。
EC2 インスタンスを起動する許可。
IAM ロールを EC2 インスタンスに関連付ける許可。
詳細については、「Amazon EC2 でのロールの使用に必要なアクセス許可」をご覧ください。
Q: EC2 インスタンスのアクセスキーにアクセスできるのは誰ですか?
インスタンスのすべてのローカルユーザーが、その IAM ロールに関連付けられているアクセスキーにアクセスできます。
Q: EC2 インスタンスのアプリケーションで IAM ロールを使用するにはどうすればよいですか?
AWS SDK を使用してアプリケーションを開発する場合は、EC2 インスタンスで使用可能になった AWS アクセスキーが AWS SDK によって自動的に使用されます。AWS SDK を使用していない場合は、EC2 Instance Metadata Service からアクセスキーを取得できます。詳細については、Amazon EC2 インスタンスで実行されるアプリケーションに IAM ロールを使用してアクセス権限を付与するを参照してください。
Q: EC2 インスタンスの一時的セキュリティ認証情報を更新するにはどうすればよいですか?
IAM ロールに関連付けられている AWS 一時的セキュリティ認証情報は、1 日に複数回、自動更新されます。既存の一時的セキュリティ認証情報が失効する 5 分前までに、新しい一時的セキュリティ認証情報が使用可能になります。
Q: EC2 インスタンスの IAM ロールをすべてのインスタンスタイプまたは Amazon Machine Image で使用できますか?
はい。EC2 インスタンスの IAM ロールは Amazon Virtual Private Cloud (VPC) のスポットやリザーブドインスタンスでも機能します。
Q: サービスがリンクされたロールとは何ですか?
サービスがリンクされたロールとは、リンクされているサービスのみがロールを継承できるようにする、AWS サービス (別名リンクされたサービス) にリンクされているロールの種類のことです。これらのロールを使用して、お客様の代わりに AWS リソースを作成および管理する権限を AWS サービスに委任することができます。
Q: サービスがリンクされたロールを継承することはできますか?
いいえ。 サービスがリンクされたロールを継承できるのは、リンクされたサービスのみです。 サービスがリンクされたロールの信頼ポリシーを変更できないのはこのためです。
Q: サービスがリンクされたロールを削除できますか?
はい。AWS のサービスでアクションを実行する必要がなくなった場合は、サービスがリンクされたロールを削除できます。ロールを削除する前に、ロールに依存する AWS のすべてのリソースを削除する必要があります。このステップにより、AWS リソースが適切に機能するのに必要なロールを不注意で削除しないようにすることができます。
Q: サービスがリンクされたロールを削除するにはどうすればよいですか?
サービスがリンクされたロールは、IAM コンソールから削除できます。ナビゲーションペインの [ロール] を選択し、削除したいサービスがリンクされたロールを選択してから、[ロールの削除] を選択します。(注: Amazon Lex でサービスがリンクされたロールを削除するには、Amazon Lex コンソールを使用する必要があります。)
アクセス許可
Q: アクセス許可をどのように割当てますか?
AWS リソースへのアクセス許可を割り当てるために、アクセスコントロールポリシーがユーザー、グループ、およびロールにアタッチされます。デフォルトでは、IAM のユーザー、グループ、およびロールにはアクセス許可が設定されていないため、適切なアクセス許可を持つユーザーがポリシーを使用して必要なアクセス権を許可する必要があります。
Q: ポリシーを使用してアクセス許可を割り当てるにはどうすればよいですか?
アクセス許可を設定するには、AWS マネジメントコンソール、IAM API、または AWS CLI を使用してポリシーを作成し、アタッチします。必要なアクセス許可を付与されたユーザーは、ポリシーを作成し、IAM ユーザー、グループ、およびロールに割り当てることができます。
Q: 管理ポリシーとは?
管理ポリシーは、IAM ポリシー言語を使用してアクセス許可を表現する IAM リソースです。管理ポリシーは、そのポリシーを関連付ける IAM ユーザー、グループ、ロールとは別に作成、編集、管理できます。ある管理ポリシーを複数の IAM ユーザー、グループ、ロールに関連付けた場合、そのポリシーをいずれかの場所で更新すると、関連付けられているすべてのエンティティにアクセス許可が適用されます。管理ポリシーには、お客様が管理するもの(カスタマー管理ポリシー)と、AWS が管理するもの(AWS 管理ポリシー)があります。管理ポリシーの詳細については、Managed Policies and Inline Policies をご覧ください。
Q: カスタマー管理ポリシーの作成方法を教えてください。
IAM コンソールでビジュアルエディターまたは JSON エディターを使用できます。ビジュアルエディターは、ポイントアンドクリックのエディターで、JSON でポリシーを記述することなく、ポリシーでアクセス許可を付与することができます。CLI と SDK を使用することで、JSON でポリシーを作成できます。
Q: どのようにすれば、よく使用するアクセス許可を割り当てられますか?
AWS には、お使いのアカウントの IAM ユーザー、グループ、ロールに関連付けることのできる、よく使用する一連のアクセス許可が用意されています。これらは、AWS 管理ポリシーと呼ばれます。Amazon S3 の読み取り専用アクセスがその一例です。このようなポリシーが AWS で更新されると、そのポリシーが関連付けられているユーザー、グループ、ロールに、アクセス許可が自動的に適用されます。AWS 管理ポリシーは、IAM コンソールのポリシーセクションに自動的に表示されます。アクセス許可を割り当てる場合、AWS 管理ポリシーを使用するか、または自分でカスタマー管理ポリシーを作成することもできます。既存の AWS 管理ポリシーを改変するか、自分で定義することで、新しいポリシーを作成します。
Q: グループベースのアクセス許可はどのように割り当てますか?
複数の IAM ユーザーに同じアクセス許可セットを割り当てるには、IAM グループを使用します。ユーザーに個別のアクセス許可を割り当てることも可能です。ユーザーにアクセス許可をアタッチする 2 つの方法が組み合わされて、全体のアクセス許可が構成されます。
Q: IAM グループを使用したアクセス許可の割り当てと、管理ポリシーを使用したアクセス許可の割り当てはどう違いますか?
IAM ユーザーを集めて、それらのユーザーに対して共通のアクセス許可を定義するには、IAM グループを使用します。IAM ユーザー、グループ、ロール間でアクセス許可を共有するには、管理ポリシーを使用します。例えば、Amazon EC2 インスタンスをユーザーグループが起動できるようにすると共に、そのインスタンスに対するロールにグループのユーザーと同じアクセス許可を持たせる場合は、管理ポリシーを作成し、それをユーザーグループと、Amazon EC2 インスタンスに対するロールに割り当てることができます。
Q: IAM ポリシーは、Amazon S3、Amazon SQS、Amazon SNS、および AWS KMS リソースベースのポリシーと共に使用した場合、どのように評価されますか?
IAM ポリシーはサービスのリソースベースのポリシーと共に評価されます。いずれかのタイプのポリシーでアクセスが付与される(明示的に否定しない)場合には、そのアクションが許可されます。ポリシーの評価ロジックの詳細については、「IAM ポリシーの評価論理」をご覧ください。
Q: 管理ポリシーをリソースベースのポリシーとして使用できますか?
管理ポリシーは IAM ユーザー、グループ、およびロールにのみアタッチできます。リソースベースのポリシーとしては使用できません。
Q: ポリシーを使用してどのようにきめ細かなアクセス許可を設定できますか?
ポリシーを使用することで、アクセス許可の細かさに複数の段階を設定できます。最初に、アクセスを明示的に許可または拒否する特定の AWS サービスアクションを定義します。次に、アクションに応じて、アクションを実行する特定の AWS リソースを定義します。その後、ポリシーが有効になる条件を定義します (例えば、MFA が有効かどうかなど)。
Q: どのようにして不要なアクセス許可を簡単に削除できますか?
どのアクセス許可が必要なのか見分けられるよう、IAM コンソールに サービスの最終アクセスデータが表示されるようになりました。IAM エンティティ (ユーザー、グループ、またはロール) がいつ最後に AWS のサービスにアクセスしたかが表示されます。IAM エンティティがアクセス許可を使用したかどうか、および最後に使用したときを把握することは、より少ない処理で不要なアクセス許可を削除して IAM ポリシーを強化するのに役立ちます。
Q: アカウントレベルの情報 (例: 支払い方法、連絡先の E メールアドレス、請求履歴など) の読み取りまたは変更のアクセス許可を付与することはできますか?
はい、IAM ユーザーまたはフェデレーテッドユーザーには、AWS 請求データを表示したり AWS アカウント情報を変更したりする権限を委任することができます。請求情報へのアクセス制御の詳細については、Controlling Access をご覧ください。
Q: どのユーザーが AWS アカウントのアクセスキーを作成、管理できますか?
ルートアカウントのアクセスキーを管理できるのは、AWS アカウント所有者のみです。IAM ユーザーのアクセスキーを管理できるのは、アカウント所有者と、必要なアクセス許可を付与された IAM ユーザーまたはロールです。
Q: 別の AWS アカウントが所有する AWS リソースへのアクセス許可を付与することはできますか?
はい。IAM ユーザーとフェデレーテッドユーザーは、IAM ロールと AWS マネジメントコンソール、AWS CLI、または API を使用して、別の AWS アカウントが所有者であるリソースにアクセスすることができます。詳細については、IAM ロールの管理をご覧ください。
Q: ポリシーは具体的にはどのようなものですか?
次のポリシーは、example_bucket というバケット内で、example_folder という特定のフォルダからのオブジェクトの追加、更新、および削除を行うアクセス権限を付与します。
{
"Version":"2012-10-17",
"Statement":[
{
"Effect": "Allow",
"Action":[
"s3:PutObject",
"s3:GetObject",
"s3:GetObjectVersion",
"s3:DeleteObject",
"s3:DeleteObjectVersion"
],
"Resource":"arn:aws:s3:::example_bucket/example_folder/*"
}
]
}
Q: ポリシー概要とは何ですか?
IAM コンソールを使用しているときにポリシーを選択すると、ポリシー概要が表示されます。ポリシー概要には、各サービスに対してポリシー内で定義されたアクセスレベル、リソース、条件の一覧が表示されます (以下のスクリーンショットを参照)。アクセスレベル (表示、読み込み、書き込み、アクセス権限管理) は、ポリシー内で各サービスに許可されたアクションによって決定されます。[JSON] ボタンを選択すれば、ポリシーを JSON で表示できます。
ポリシー概要のスクリーンショット
Policy Simulator
Q: IAM Policy Simulator とは何ですか?
IAM ポリシーシミュレーターは、アクセスコントロールポリシーの効果を把握し、テストし、検証するためのツールです。
Q: ポリシーシミュレーターの用途は何ですか?
ポリシーシミュレーターにはいくつかの用途が考えられます。ポリシーの変更を本番にコミットする前に、望む効果が得られるかどうか確かめるため、ポリシーをテストできます。ユーザー、グループ、およびロールにアタッチされた既存のポリシーを検証し、アクセス権限のトラブルシュートを行えます。ポリシーシミュレーターを使用して、AWS リソースへのアクセスを許可または拒否するための IAM ポリシーとリソースベースのポリシーとの併用状況を把握することもできます。
Q: Policy Simulator は誰が使用できますか?
Policy Simulator は AWS のすべてのお客様が利用できます。
Q: Policy Simulator の価格はいくらですか?
Policy Simulator は追加料金なしでご利用いただけます。
Q: 使用を開始する方法を教えてください。
https://policysim.aws.amazon.com にアクセスするか、IAM コンソールの [追加情報] にあるリンクをクリックします。評価するユーザー、グループ、またはロールから、新しいポリシーを指定するか、既存のポリシーのセットを選択します。AWS のサービスのリストから一連のアクションを選択し、必要な情報を入力してアクセスリクエストをシミュレートして、そのポリシーが選択されたアクションおよびリソースへのアクセス許可を付与するか拒否するかを判別します。IAM Policy Simulator に関する詳細は、入門ビデオをご覧いただくか、ドキュメントを参照してください。
Q: IAM Policy Simulator では、どの種類のポリシーがサポートされていますか?
Policy Simulator では、新しく入力したポリシー、およびユーザー、グループ、またはロールに関連付けられている既存のポリシーをテストできます。また、リソースレベルのポリシーが、Amazon S3 バケット、Amazon Glacier ボールト、Amazon SNS トピック、および Amazon SQS キューの特定のリソースに対するアクセスを許可しているかどうかをシミュレートできます。これらがシミュレーション対象に含められるのは、リソースポリシーをサポートしているサービスの [Simulation Settings] の [Resource] フィールドに Amazon リソースネーム (ARN) が指定されている場合です。
Q: Policy Simulator でポリシーを変更した場合、変更内容は本番環境でも残りますか?
いいえ。変更を本稼働に適用するには、Policy Simulator で変更したポリシーをコピーし、任意の IAM ユーザー、グループ、またはロールに関連付ける必要があります。
Q: プログラムからポリシーシミュレーターを使用できますか?
はい。ポリシーシミュレーターは、ポリシーシミュレーターコンソールのほか、AWS SDK や AWS CLI によっても使用できます。プログラムによって既存の IAM ポリシーをテストする場合、iam:SimulatePrincipalPolicy API を使用します。新規または更新されたポリシーで、まだユーザー、グループ、またはロールにアタッチされていないポリシーについては、iam:SimulateCustomPolicy API を呼び出します。
サインイン
Q: IAM ユーザーはどのようにサインインしますか?
IAM ユーザーとして AWS マネジメントコンソールにサインインするには、ユーザー名とパスワードに加えて、アカウント ID またはアカウントエイリアスのいずれかを指定する必要があります。管理者によってコンソールで作成された IAM ユーザーの場合、管理者から連絡されたユーザー名およびアカウントのサインイン URL を確認してください。その URL に、アカウント ID またはアカウントエイリアスが記載されています。
https://My_AWS_Account_ID.signin.aws.amazon.com/console/
また、次の一般のサインインエンドポイントで、アカウント ID またはアカウントエイリアスを手動で入力してサインインすることもできます。
https://console.aws.amazon.com/
利便性を考慮し、AWS のサインインページはブラウザの Cookie を使用して IAM のユーザー名とアカウント情報を記憶します。ユーザーが次回 AWS マネジメントコンソールの任意のページを表示したとき、コンソールでは Cookie を使用してユーザーをアカウントのサインインページにリダイレクトします。
注: IAM ユーザーは、管理者から提供された AWS マネジメントコンソールへのサインイン URL のリンクも引き続き使用できます。
Q: AWS アカウントのエイリアスとは何ですか?
アカウントのエイリアスは、アカウントをより便利に識別するために定義する名前です。IAM API、AWS コマンドラインツール、または IAM コンソールを使用して、エイリアスを作成できます。AWS アカウントごとに 1 つのエイリアスを持つことができます。
Q: IAM ユーザーがアクセスできるのはどの AWS サイトですか?
IAM ユーザーは次の AWS サイトにサインインできます。
AWS マネジメントコンソール
AWS フォーラム
AWS サポートセンター
AWS Marketplace
Q: IAM ユーザーは自分の認証情報を使って Amazon.com の他のプロパティにサインインできますか?
いいえ。IAM で作成されたユーザーは、AWS のサービスとアプリケーションのみで認識されます。
Q: IAM ユーザーのサインインを確認する認証 API はありますか?
いいえ。ユーザーのサインインをプログラム的に確認する方法はありません。
Q: ユーザーは、AWS ユーザー名およびパスワードを使用して、EC2 インスタンスに SSH で接続できますか?
いいえ。IAM で作成されたユーザーのセキュリティ認証情報は、EC2 のお客様のインスタンスへの直接認証ではサポートされません。EC2 SSH 認証情報の管理は、お客様の責任の下に EC2 コンソールで行っていただきます。
一時的なセキュリティ認証情報
Q: 一時的セキュリティ認証情報とは何ですか?
一時的なセキュリティ認証情報は、AWS アクセスキー ID、シークレットアクセスキー、およびセキュリティトークンで構成されています。一時的なセキュリティ認証情報は、指定された期間、特定のアクセス許可一式に有効です。一時的なセキュリティ認証情報は、単にトークンと呼ばれることがあります。トークンは、IAM ユーザー用に、または自身の社内ディレクトリで管理するフェデレーティッドユーザー用にリクエストすることができます。詳細については、「一時的な認証情報の一般的なシナリオ」をご覧ください。
Q: 一時的なセキュリティ認証情報の利点は何ですか?
一時的なセキュリティ認証情報を使用すると、以下が可能となります。
内部のユーザーディレクトリを拡張して AWS とのフェデレーションが有効になり、従業員やアプリケーションが安全に AWS サービス API にアクセスできるようになります。彼らのために AWS ID を作成する必要はありません。
フェデレーティッドユーザー数には制限がなく、一時的セキュリティ認証情報をリクエストすることができます。
一時的セキュリティ認証情報の有効期間を指定できるので、デバイス紛失のリスクのあるモバイルデバイス経由で AWS サービス API にアクセスするときのセキュリティを強化できます。
Q: フェデレーティッドユーザーの一時的セキュリティ認証情報は、どのようにリクエストすればよいのですか?
GetFederationToken、AssumeRole、AssumeRoleWithSAML、または AssumeRoleWithWebIdentity STS API を呼び出すことができます。
Q: IAM ユーザーは自分用の一時的なセキュリティ認証情報をどのようにリクエストすればよいのですか?
IAM ユーザーは、AWS STS GetSessionToken API を呼び出して、自分で使用する一時的な認証情報をリクエストすることができます。これらの一時的な認証情報のデフォルトの有効期間は 12 時間で、最短が 15 分、最長が 36 時間となっています。
一時的な認証情報を Multi-Factor Authentication (MFA) 保護 API アクセスと併用することもできます。
Q: 一時的なセキュリティ認証情報を使用して AWS のサービス API を呼び出すには、どうすればよいですか?
AWS に直接 HTTPS API リクエストを行う場合、AWS Security Token Service (AWS STS) から取得した一時的なセキュリティ認証情報でリクエストに署名できます。これには、以下を実行します。
一時的なセキュリティ認証情報で提供されたアクセスキー ID およびシークレットアクセスキーを、長期的な認証情報を使用するのと同様の方法で使用して、リクエストに署名します。HTTPS API リクエストの署名の詳細については、AWS の全般的なリファレンスの AWS API リクエストの署名を参照してください。
一時的なセキュリティ認証情報で提供されるセッショントークンを使用します。セッショントークンを "x-amz-security-token" ヘッダーに含めます。以下のリクエストの例をご覧ください。
Amazon S3 の場合は "x-amz- security-token" HTTP ヘッダーを使用します。
AWS の他のサービスの場合は SecurityToken パラメーターを使用します。
Q: 一時的なセキュリティ認証情報が受け入れられるのは AWS のどのサービスですか?
サポートされるサービスのリストについては、IAM と連携する AWS サービスをご覧ください。
Q: 一時的なセキュリティ認証情報 (GetFederationToken または AssumeRole) をリクエストするときに、指定できるアクセスポリシーの最大サイズはいくつですか?
プレーンテキストのポリシーは 2048 バイト以内である必要があります。ただし、内部変換によって、別の制限を有するバイナリフォーマットに圧縮されます。
Q: 一時的セキュリティ証明書を有効期限前に取り消すことはできますか?
いいえ。一時的な認証情報をリクエストする際は、以下を実行することをお勧めします。
一時的なセキュリティ認証情報を作成する際は、有効期間をお客様のアプリケーションに適した値に設定してください。
ルートアカウントのアクセス許可は制限することができないため、一時的なセキュリティ認証情報を作成する際には、ルートアカウントではなく、IAM ユーザーを使用してください。一時的な認証情報をリクエストするための元の呼び出しを行った IAM ユーザーのアクセス許可を取り消すことができます。このアクションを実行すると、ほぼ即座にその IAM ユーザーによって発行されたすべての一時的なセキュリティ認証情報の特権が取り消されます。
Q: 一時的なセキュリティ認証情報を再度アクティブ化することや、その有効期限を延長することができますか?
いいえ。有効期限を積極的に確認し、一時的セキュリティ認証情報の期限が切れる前に、新しいものをリクエストすることをお勧めします。一時的セキュリティ認証情報が EC2 インスタンスのロールで使用されるときに、この自動更新プロセスは自動管理されます。
Q: 一時的なセキュリティ認証情報はすべてのリージョンでサポートされますか?
AWS GovCloud(米国)および中国(北京)リージョンを含むすべての AWS STS エンドポイントからトークンをリクエストすることができます。AWS GovCloud(米国)および中国(北京)の一時的な認証情報は、それぞれのリージョンでのみ使用できます。米国東部 (バージニア北部) や欧州 (アイルランド) など、その他のリージョンからリクエストされた一時的な認証情報は、AWS GovCloud (米国) および中国 (北京) を除くすべてのリージョンで使用できます。
Q: 一時的なセキュリティ認証情報の使用を 1 つまたは複数のリージョンに制限することはできますか?
いいえ。それぞれのリージョンでのみ使用できる AWS GovCloud(米国)および中国(北京)の一時的なセキュリティ認証情報を除いて、一時的なセキュリティ認証情報を 1 つまたは複数のリージョンに制限することはできません。
Q: AWS STS エンドポイントの使用を開始するには、どうすればよいですか?
AWS STS エンドポイントはすべてのリージョンでデフォルトで有効になっており、使用開始のために特別なアクションは不要です。
Q: 自分の AWS アカウントに対して無効にされているリージョン AWS STS エンドポイントを使用するとどうなりますか?
あるリージョン AWS STS エンドポイントがご自分の AWS アカウントに対して無効にされている場合、それを使用しようとすると、AWS STS から AccessDenied 例外が表示されます。この例外には、「AWS STS is not activated in this region for account: AccountId.Your account administrator can activate AWS STS in this region using the IAM console.」という本文が付きます。
Q: アカウント設定ページから AWS STS リージョンを有効または無効にするにはどのようなアクセス許可が必要ですか?
iam:* 以上のアクセス許可を持っているユーザーのみが、IAM コンソールのアカウント設定ページから AWS STS リージョンを有効または無効にすることができます。米国東部 (バージニア北部)、AWS GovCloud (米国)、および中国 (北京) リージョンの AWS STS エンドポイントは常に有効になっており、無効にすることはできません。
Q: AWS STS リージョンを有効または無効にするのに API または CLI を使用することはできますか?
いいえ。現時点では、AWS STS リージョンを有効または無効にするための API または CLI のサポートはありません。将来のリリースで API および CLI サポートを提供する予定です。
認証フェデレーション
Q: 認証フェデレーションとは何ですか?
AWS Identity and Access Management (IAM) は、ID フェデレーションによる AWS マネジメントコンソールや AWS API へのアクセス委任をサポートしています。ID フェデレーションを利用すれば、IAM ユーザーを作成しなくても、AWS アカウントのリソースに対する安全なアクセス権が外部の認証に付与されます。外部の認証として、会社のアイデンティティプロバイダー (Microsoft Active Directory や、AWS Directory Service からなど)、またはウェブアイデンティティプロバイダー (Amazon Cognito、Login with Amazon、Facebook、Google、または任意の OpenID Connect 対応プロバイダーなど) が考えられます。
Q: フェデレーティッドユーザーとは何ですか?
フェデレーティッドユーザー (外部アイデンティティ) は、社内ディレクトリの AWS 外部で管理されるユーザーですが、一時的なセキュリティ認証情報を使用して AWS アカウントにアクセスできるユーザーです。お客様の AWS アカウントで作成され、保守管理される IAM ユーザーとは異なります。
Q: SAML をサポートしますか?
はい。AWS では Security Assertion Markup Language (SAML) 2.0 をサポートします。
Q: AWS ではどのような SAML プロファイルをサポートしますか?
AWS シングルサインオン (SSO) エンドポイントでは、IdP 起動型の HTTP-POST バインディング WebSSO SAML プロファイルがサポートされます。これで、フェデレーティッドユーザーが SAML アサーションを使用して AWS マネジメントコンソールにサインインできるようになります。また、SAML アサーションは、AssumeRoleWithSAML API を使用して一時的なセキュリティ認証情報をリクエストする際にも使用できます。詳細については、SAML 2.0 ベースのフェデレーションについてをご覧ください。
Q: フェデレーティッドユーザーは AWS API にアクセスできますか?
はい。プログラムでフェデレーティッドユーザーのための一時的なセキュリティ認証情報をリクエストすると、フェデレーティッドユーザーが安全に AWS API に直接アクセスできるようになります。サンプルアプリケーションをご用意しています。このサンプルでは、Microsoft Active Directory で管理されているユーザーに AWS サービス API へのアクセス権を与えるために、認証フェデレーションを有効にする方法を示しています。詳細については、一時的なセキュリティ認証情報を使用して AWS リソースへのアクセスをリクエストするをご覧ください。
Q: フェデレーティッドユーザーは AWS マネジメントコンソールにアクセスできますか?
はい。これには 2 通りの方法があります。1 つは、フェデレーティッドユーザーの一時的なセキュリティ認証情報をプログラムでリクエストし (GetFederationToken や AssumeRole など)、その一時的な認証情報を AWS マネジメントコンソールへのサインインリクエストの一部として含めることです。ユーザーを認証し、一時的なセキュリティ認証情報をそのユーザーに付与したら、それを AWS シングルサインオン (SSO) エンドポイントに使用するサインイントークンを生成します。コンソールでのユーザーのアクションは、一時的なセキュリティ認証情報に関連付けられているアクセスコントロールポリシーに限定されます。 詳細については、フェデレーションユーザーに対して AWS マネジメントコンソールへのアクセスを許可する URL の作成 (カスタムフェデレーションブローカー) を参照してください。
または、SAML アサーションを AWS サインイン (https://signin.aws.amazon.com/saml) に直接投稿できます。コンソールでのユーザーのアクションは、SAML アサーションを使用して適用された IAM ロールに関連付けられているアクセスコントロールポリシーに限定されます。詳細については、SAML 2.0 フェデレーションユーザーによる AWS マネジメントコンソールへのアクセスを可能にするをご覧ください。
いずれの方法を使用した場合でも、フェデレーティッドユーザーはユーザー名とパスワードでサインインせずにコンソールにアクセスできます。ID フェデレーションを有効にして、Microsoft Active Directory によって管理されているユーザーに AWS マネジメントコンソールへのアクセス権を与える方法を示すサンプルアプリケーションが提供されています。
Q: コンソールにサインインする際にフェデレーティッドユーザーに何を許可するかは、どのようにコントロールできますか?
AssumeRole API を使用してフェデレーティッドユーザーの一時的なセキュリティ認証情報をリクエストする場合、リクエストのオプションとしてアクセスポリシーを含めることができます。フェデレーティッドユーザーの特権は、リクエストにより渡されるアクセスポリシーにより与えられるアクセス許可と、適用された IAM ロールにアタッチされているアクセスポリシーにより与えられるアクセス許可の共通部分になります。リクエストにより渡されたアクセスポリシーが、適用された IAM ロールに関連付けられている特権を超えることはありません。GetFederationToken API を使用し、フェデレーティッドユーザーの一時的なセキュリティ認証情報をリクエストするとき、リクエストでアクセスコントロールポリシーを提供する必要があります。フェデレーティッドユーザーの特権は、リクエストにより渡されるアクセスポリシーにより与えられるアクセス許可と、リクエストに使用された IAM ユーザーにアタッチされているアクセスポリシーにより与えられるアクセス許可の共通部分になります。リクエストにより渡されるアクセスポリシーにより、リクエストに使用された IAM ユーザーに関連付けられている特権を昇格させることはできません。フェデレーティッドユーザーのアクセス許可は、AWS マネジメントコンソール内で実行された API アクセスとアクションに適用されます。
Q: フェデレーティッドユーザーがコンソールを使用するには、どのようなアクセス許可が必要ですか?
ユーザーには、AWS マネジメントコンソールによって呼び出される AWS のサービス API に対するアクセス許可が必要です。AWS のサービスへのアクセスに必要な共通のアクセス許可については、一時的なセキュリティ認証情報を使用して AWS リソースへのアクセスをリクエストするをご覧ください。
Q: フェデレーティッドユーザーに AWS マネジメントコンソールへのアクセスを許可する時間の長さを制御するには、どうすればよいですか?
一時的なセキュリティ認証情報の作成に使用される API により、セッション制限時間を指定できます。GetFederationToken と GetSessionToken の場合は 15 分~36 時間、AssumeRole* API の場合は 15 分~12 時間です。この時間内にフェデレーティッドユーザーはコンソールにアクセスできます。セッション制限時間を過ぎた後は、フェデレーティッドユーザーは新しいセッションをリクエストする必要があります。ID プロバイダーに戻ってアクセスを再取得します。セッション期間の設定についての詳細を参照してください。
Q: ID フェデレーションコンソールセッションがタイムアウトになるとどうなりますか?
ユーザーの画面に、コンソールセッションがタイムアウトになったため、新しいセッションをリクエストする必要があるというメッセージが表示されます。新しいセッションをリクエストできる、お客様のローカルイントラネットのウェブページにユーザーを誘導するための URL を指定することができます。この URL は、サインインリクエストの一部として発行者パラメーターを指定するときに追加します。詳細は、SAML 2.0 フェデレーションユーザーによる AWS マネジメントコンソールへのアクセスを可能にするをご覧ください。
Q: 何人のフェデレーティッドユーザーに AWS マネジメントコンソールへのアクセス権を与えることができますか?
コンソールへのアクセス権を持つフェデレーティッドユーザーの数に制限はありません。
Q: ウェブ ID フェデレーションとは何ですか?
ウェブ ID フェデレーションを使用すると、パブリックアイデンティティプロバイダー (Amazon Cognito、Login with Amazon、Facebook、Google、または任意の OpenID Connect 互換プロバイダーなど) を使用して認証を行う、AWS を利用したモバイルアプリケーションを作成することができます。ウェブ ID フェデレーションでは、サーバー側コードを記述する必要も、長期の AWS セキュリティ認証情報をアプリケーションに配布することもなく、パブリックアイデンティティプロバイダ (IdP) のサインインをアプリケーションに簡単に統合できます。
ウェブ ID フェデレーションの詳細を確認する、またはウェブ ID フェデレーションの使用を開始するには、ウェブ ID フェデレーションについてを参照してください。
Q: パブリック IdP のアカウントを使用した ID フェデレーションを有効にするには、どのようにすればよいですか?
最良の結果を得るため、ほとんどすべてのウェブ ID フェデレーションのシナリオでは ID ブローカーとして Amazon Cognito を使用します。Amazon Cognito は使いやすく、匿名 (認証されていない) アクセスのような追加機能が用意されていて、複数のデバイスおよびプロバイダーにわたってユーザーデータが同期されます。ただし、手動で AssumeRoleWithWebIdentity API を呼び出すことによってウェブ ID フェデレーションを使用するアプリを既に作成してある場合は、それを使用し続けることができ、アプリは引き続き正常に動作します。
サポートされているいずれかのウェブ IdP を使用して、ID フェデレーションを有効にするための基本的な手順は次のとおりです。
IdP に開発者としてサインアップし、IdP に対してアプリを設定して、アプリの一意の ID を取得します。
OIDC と互換性のある IdP を使用する場合、IAM でその ID プロバイダーのエンティティを作成します。
AWS で、1 つ以上の IAM ロールを作成します。
アプリケーションで、パブリック IdP を使用してユーザーを認証します。
アプリ内で、未署名の AssumeRoleWithWebidentity API 呼び出しを実行して一時的なセキュリティ証明書を要求します。
AssumeRoleWithWebidentity の応答で返された一時的なセキュリティ証明書を使用して、アプリから AWS API への署名付き要求を実行します。
一時的なセキュリティ証明書をキャッシュに格納すると、アプリは AWS への要求を実行するたびに新しい証明書を取得する必要がありません。
詳細については、モバイルアプリへのウェブ ID フェデレーション API の使用をご覧ください。
Q: AWS Directory Service を使用した ID フェデレーションとサードパーティのアイデンティティ管理ソリューションを使用した ID フェデレーションの違いは何ですか?
フェデレーティッドユーザーによる AWS マネジメントコンソールへのアクセスを許可するのみであれば、AWS Directory Service を使用した場合の機能とサードパーティのアイデンティティ管理ソリューションを使用した場合の機能は似ています。エンドユーザーは、自社の既存の認証情報を使用してサインインし、AWS マネジメントコンソールにアクセスできます。AWS Directory Service はマネージドサービスなので、ユーザーは、フェデレーションインフラストラクチャのセットアップや管理を行う必要はありませんが、AD Connector ディレクトリを作成してオンプレミスのディレクトリと統合する必要があります。フェデレーテッドユーザーに AWS API へのアクセスを提供する場合は、サードパーティサービスを使用するか、独自のプロキシサーバーをデプロイします。
料金
Q: AWS の請求書には、ユーザーごとの使用料合計とコストの内訳が含まれていますか?
いいえ。現在はサポートされていません。
Q: IAM サービスには料金がかかりますか?
いいえ。これは追加料金なしで提供される AWS アカウントの機能です。
Q: AWS アカウントのユーザーによって発生した使用料は誰が払うのですか?
AWS アカウント所有者は、そのアカウントに基づくすべての使用状況、データ、およびリソースをコントロールし、これらに対する責任があります。
Q: 請求の対象となるユーザーアクティビティは AWS の使用状況データに記録されますか?
現在は記録されません。これは、将来のリリースで計画されています。
Q: 一括請求 (コンソリデーティッドビリング) と比べて IAM は何が違いますか?
IAM と一括請求 (コンソリデーティッドビリング) は相補的な機能です。一括請求 (コンソリデーティッドビリング) では、お客様の社内で複数の AWS アカウントをご利用の場合に、これらのアカウントのお支払いを 1 つのお支払いアカウントにまとめることができます。IAM の範囲は、一括請求 (コンソリデーティッドビリング) とは関係ありません。ユーザーは AWS アカウントの範囲内に存在し、リンクしているアカウントへのアクセス許可は持っていません。詳細については、一括請求を使用した複数アカウントの料金の支払いを参照してください。
Q: ユーザーは AWS アカウントの請求書情報にアクセスできますか?
はい。管理者が許可した場合はアクセスできます。IAM ユーザーが請求書情報にアクセスできるようにするには、アカウントアクティビティや使用状況レポートへのアクセス権を IAM ユーザーに与える必要があります。Controlling Access をご覧ください。
その他の質問
Q: まだ IAM と統合されていないサービスにユーザーがアクセスしようとした場合はどうなりますか?
サービスにより、"Access denied" というエラーが返されます。
Q: IAM アクションは、監査目的でログに記録されますか?
はい。AWS CloudTrail を有効にして、IAM アクション、STS アクション、および AWS マネジメントコンソールのサインインをログに記録できます。 AWS ログ記録の詳細については、AWS CloudTrail を参照してください。
Q: AWS エンティティとして、人とソフトウェアエージェントの間に違いはありますか?
いいえ。両方とも、セキュリティ認証情報とアクセス許可を持つユーザーのように扱われます。ただし、AWS マネジメントコンソールでパスワードを使用するのは人だけです。
Q: ユーザーは AWS サポートセンターと Trusted Advisor を利用できますか?
はい。IAM ユーザーは、サポートケースの作成と変更を行い、Trusted Advisor を使用することができます。
Q: IAM にはデフォルトのクォータ上限がありますか?
はい。デフォルトでは、すべての IAM 関連エンティティについて、AWS アカウントに初期クォータが設定されています。詳細については、IAM エンティティにおける制限およびオブジェクトをご覧ください。
このクォータは変更されることがあります。引き上げが必要な場合は、[お問い合わせ] ページのサービス上限緩和申請フォームを使用して、[制限タイプ] ドロップダウンリストから [IAM グループとユーザー] を選択してください。
Multi-Factor Authentication
Q: AWS MFA とは何ですか?
AWS Multi-Factor Authentication (AWS MFA) は、AWS 環境のセキュリティを非常に高いレベルに強化するサービスです。AWS MFA は、AWS アカウント、およびこのアカウントで作成した個別の AWS Identity and Access Management (IAM) ユーザーに対して有効にできます。
Q: AWS MFA はどのように働くのですか?
AWS MFA は、継続的に 6 桁のランダムなワンタイム認証コードを生成する認証デバイスを使用しています。AWS MFA デバイスを使用する認証の方法は、主に次の 2 つです。
AWS マネジメントコンソールのユーザー: MFA が有効なユーザーが AWS ウェブサイトに サインイン すると、 ユーザー名 とパスワード (第 1 の要素、つまりユーザーが知っているもの) と、AWS MFA デバイスからの認証コード (第 2 の要素、つまりユーザーが持っているもの) の入力が求められます。AWS マネジメントコンソールなどサインインを必要とするすべての AWS ウェブサイトは、AWS MFA を完全にサポートします。また、AWS MFA を Amazon S3 Secure Delete と組み合わせると、お使いの S3 に保存されているバージョンの保護をさらに強化できます。
AWS API のユーザー: MFA 認証を強制的に行うには、MFA の制約を IAM ポリシーに追加します。この方法で保護されている API やリソースにアクセスするには、任意指定の MFA パラメータを AWS Security Token Service (STS) API リクエストの中で指定して、一時的セキュリティ認証情報を要求します。STS とは、一時的セキュリティ認証情報を付与するサービスです。MFA 検証済みの一時的セキュリティ認証情報を使用すると、MFA で保護された API やリソースを呼び出すことができます。
Q: MFA を使用して AWS リソースを保護するにはどうすればよいですか?
以下の 2 つのステップで行います。
1. 認証デバイスを取得します。これには 2 つのオプションがあります。
サードパーティプロバイダーの Gemalto からハードウェアデバイスを購入する
スマートフォンなどのデバイスに、仮想 MFA と互換性のあるアプリケーションをインストールする
ハードウェアや仮想 MFA デバイスの入手方法の詳細については、AWS MFA のページを参照してください。
2. 認証デバイスを入手したら、IAM コンソールでデバイスをアクティべートします。IAM CLI を使用して IAM ユーザーのデバイスをアクティベートすることもできます。
Q: AWS MFA の使用には料金がかかりますか?
AWS は、あなたの AWS アカウントでの AWS MFA 使用には追加料金を課金しません。しかし、物理的な認証デバイスを使用したい場合は、サードパーティのプロバイダ Gemalto から、AWS MFA と互換性のある認証デバイスを購入する必要があります。詳細は、Gemalto のウェブサイトをご覧ください。
Q: AWS アカウントで複数の認証デバイスを有効にすることができますか?
はい。各 IAM ユーザーは、独自の認証デバイスを持つことができます。しかし、各 ID (IAM ユーザーまたはルートアカウント) は、1 つの認証デバイスにしか関連付けられません。
Q: 認証デバイスを複数の AWS アカウントで使用することは可能ですか?
いいえ。認証デバイスまたはモバイルフォンの番号は、個々の AWS ID (IAM ユーザーまたはルートアカウント) に関連付けられます。お使いのスマートフォンに TOTP 互換のアプリケーションがインストールされている場合は、同じスマートフォン上に複数の仮想 MFA デバイスを作成できます。仮想 MFA デバイスのそれぞれは、ハードウェアデバイスと同じように、単一の ID に関連付けられます。認証デバイスの関連付けを解除 (非アクティブ化) すれば、そのデバイスを別の AWS ID で再利用できます。認証デバイスは、複数の ID で同時に使用することはできません。
Q: すでに職場で使っている、または他のサービスから入手したハードウェアの認証デバイスを持っています。AWS MFA でこのデバイスを再利用することは可能ですか?
いいえ。AWS MFA は、その使用をサポートするために、認識デバイスと関連する独自のセキュリティに依存しています。そうしたセキュリティを複数の関係者間で決して共有しないことを要求するセキュリティ制約のため、AWS MFA は既存のハードウェアの認証デバイス使用をサポートすることができません。Gemalto から購入した、互換性のあるハードウェアの認証デバイスのみを AWS MFA で使うことができます。
MFA デバイスの購入
Q: サードパーティのプロバイダーである Gemalto のウェブサイトを使用して認証デバイスを注文しようとしましたが、うまくいきません。どこでサポートを受けられますか?
Gemalto のカスタマーサービスでサポートを受けることができます。
Q: サードパーティのプロバイダーである Gemalto から、不良品または破損のある認証デバイスが届きました。どこでサポートを受けられますか?
Gemalto のカスタマーサービスでサポートを受けることができます。
Q: サードパーティのプロバイダーである Gemalto から認証デバイスが今届きました。どうすればよいですか?
AWS アカウントの AWS MFA を有効にするには、単に認証デバイスをアクティベートするだけです。この作業の実施手順については IAM コンソールを参照してください。
仮想 MFA デバイスのプロビジョニング
Q: 仮想 MFA デバイスとは何ですか?
仮想 MFA デバイスとは、6 桁の認証コードを生成することができる TOTP と互換性のあるソフトウェアアプリケーションに作成されたエントリです。ソフトウェアアプリケーションは、スマートフォンなど、互換性のあるコンピューティングデバイスならどれでも実行できます。
Q: 仮想 MFA デバイスと物理的な MFA デバイスの違いは何ですか?
仮想 MFA デバイスは、物理的な MFA デバイスと同じプロトコルを使用します。仮想 MFA デバイスは、ソフトウェアベースで、スマートフォンのような既存のデバイスで実行することができます。また、ほとんどの仮想 MFA アプリケーションでは、複数の仮想 MFA デバイスを有効にすることができるので、物理的な MFA デバイスよりも便利です。
Q: どの仮想 MFA アプリケーションを AWS MFA で使用できますか?
Google Authenticator アプリケーションなど、TOTP 準拠の認証コードを生成するアプリケーションを AWS MFA で使用できます。デバイスのカメラで QR コードをスキャンして自動的に、または仮想 MFA アプリケーションにシードを手動で入力することにより、仮想 MFA デバイスをプロビジョニングできます。
サポートされる仮想 MFA アプリケーションのリストについては、MFA のページを参照してください。
Q: QR コードとは何ですか?
QR コードは二次元のバーコードで、専用の QR バーコードリーダーやほとんどのスマートフォンで読み取ることができます。コードは、白い背景の上にある大きい正方形のパターンの中に配置された小さい黒の正方形で構成されています。QR コードには、仮想 MFA アプリケーションの仮想 MFA デバイスをプロビジョニングするために必要なセキュリティ設定情報が含まれています。
Q: 新しい仮想 MFA デバイスは、どのようにプロビジョニングするのですか?
新しい仮想 MFA デバイスは、IAM コンソールを使用して、お客様の IAM ユーザーまたは AWS ルートアカウント用に構成できます。また、AWS CLI の aws iam create-virtual-mfa-device コマンド、または CreateVirtualMFADevice API を使用して、アカウントの新しい仮想 MFA デバイスをプロビジョニングすることができます。aws iam create-virtual-mfa-device および CreateVirtualMFADevice API は、AWS MFA と互換性のあるアプリケーションの仮想 MFA デバイスを構成するために必要なシードと呼ばれる設定情報を返します。お客様の IAM ユーザーにこの API を直接呼び出す許可を付与するか、またはお客様が彼らのために初期のプロビジョニングを実行することができます。
Q: 仮想 MFA デバイスのシードマテリアルの取り扱いや配布はどのようにすればよいですか?
シードマテリアルは、他の秘密(例えば、AWS シークレットキーやパスワード)と同じように扱う必要があります。
Q: IAM ユーザーが私のアカウントで仮想 MFA デバイスを管理できるようにするにはどうすればよいのですか?
IAM ユーザーに CreateVirtualMFADevice API を呼び出す許可を付与します。この API を使用して、新しい仮想 MFA デバイスをプロビジョニングできます。
SMS MFA
Q: SMS MFA へのプレビューアクセスの申し込みはまだできますか?
SMS MFA プレビューの新規参加者の受付は終了しました。MFA は、ハードウェアまたは仮想 (ソフトウェアベース) MFA デバイスを使用して、AWS アカウント上でご利用ください。
Q: SMS MFA のプレビューの終了はいつですか?
2019 年 2 月 1 日から、"SMS MFA デバイス" を設定済みの IAM ユーザーについては、AWS において MFA の 6 桁のコードの入力が不要となります。また、これらのユーザーには、サインイン時の SMS コードの発行もなくなります。MFA は、ハードウェアまたは仮想 (ソフトウェアベース) MFA デバイスでご利用ください。この機能は 2019 年 1 月 31 日まで引き続きご利用いただけます。
AWS MFA デバイスの有効化
Q: どこで AWS MFA を有効にすることができますか?
IAM コンソール、AWS CLI、または AWS API の呼び出しで、AWS アカウントおよびお客様の IAM ユーザーの AWS MFA を有効にすることができます。
Q: ハードウェアまたは仮想認証デバイスを有効にするために必要な情報を教えてください。
IAM コンソールで MFA デバイスを有効にする場合は、必要になるのはデバイスだけです。AWS CLI または IAM API を使用する場合は、以下のものが必要となります。
1. 認証デバイスのシリアル番号。シリアル番号の書式は、ハードウェアデバイスと仮想デバイスのどちらを使用しているかで異なります。
– ハードウェア MFA デバイス: シリアル番号は、デバイスの裏側にあるバーコード付きのラベルにあります。
– 仮想 MFA デバイス: シリアル番号は、AWS CLI で iam-virtualmfadevicecreate コマンドを実行したとき、または CreateVirtualMFADevice API を呼び出したときに返される Amazon リソースネーム (ARN) 値です。
2. 認証デバイスが表示する 2 つの連続認証コード。
Q: 認証デバイスは正常に稼働しているようですが、アクティベートすることができません。どうすればよいですか?
AWS までご連絡ください。
AWS MFA の使用
Q: AWS ルートアカウントまたは IAM ユーザーに対して AWS MFA を有効にした場合、AWS マネジメントコンソールにサインインするときに、常に認証コードを使用する必要がありますか?
はい。AWS ウェブサイトへサインインする場合、AWS ルート資格情報ユーザーおよび IAM ユーザーは常に自分の MFA デバイスを手元に用意しておく必要があります。
デバイスの紛失、損傷、盗難、不具合が発生した場合、別の認証要素を使ってサインインして MFA デバイスを無効化し、その後新しい MFA デバイスをアクティベートします。セキュリティのベストプラクティスとして、ルートアカウントのパスワードを変更することをお勧めします。
仮想およびハードウェア MFA をご利用中に、お客様の IAM ユーザーが認証デバイスを紛失、損傷した場合、またはデバイスの盗難、機能停止が発生した場合は、IAM コンソールや AWS CLI を使用して、お客様ご自身で AWS MFA を無効化できます。
Q: AWS ルートアカウントまたは IAM ユーザーに対して AWS MFA を有効にした場合、AWS API を直接呼び出すときに、常に MFA コードを入力する必要がありますか?
いいえ、必須ではありません。ただし、MFA 保護 API アクセス機能によって保護されている API を呼び出す場合は、MFA コードを入力する必要があります。
AWS API を呼び出すときに、AWS ルートアカウントまたは IAM ユーザーのアクセスキーを使用する場合は、MFA コードを入力する必要はありません。セキュリティ上の理由で、AWS ルートアカウントからすべてのアクセスキーを削除し、必要なアクセス許可を持つ IAM ユーザーのアクセスキーを使用して AWS API を呼び出すことをお勧めします。
Q: 認証デバイスを使って AWS Portal および AWS マネジメントコンソールにサインインするにはどのようにすればよいですか?
以下の 2 つの手順に従ってください。
AWS ルートアカウントとしてサインインする場合、プロンプトが表示されたら通常どおり ユーザー名 とパスワードを使用してサインインします。IAM ユーザーとしてサインインするには、アカウント固有の URL を使用して、プロンプトが表示されたら ユーザー名 とパスワードを入力します。
次のページで、お客様の認証デバイスに表示されている 6 桁の認証コードを入力してください。
Q: AWS MFA は AWS Service API へのアクセスに影響がありますか?
IAM ユーザーが AWS サービス API にアクセスする方法が AWS MFA の導入によって変化するのは、アカウント管理者が MFA 保護 API アクセスを有効化した場合のみです。管理者がこの機能を有効にする目的は、機密性の高い API へのアクセスに関してセキュリティを強化するためであり、呼び出し元は AWS MFA デバイスによる認証を受ける必要があります。詳細については、MFA 保護 API アクセスのドキュメントをご覧ください。
他の例外としては、S3 PUT バケットバージョニング、GET バケットバージョニング、および DELETE オブジェクトの各 API があります。これらの API を呼び出すと、バケットのバージョニング状態を削除または変更する際に MFA 認証が求められるようにすることができます。詳細については、S3 のドキュメントの「Configuring a Bucket with MFA Delete」をご覧ください。
それ以外のすべてのケースについては、現時点では AWS MFA の導入によって AWS サービス API へのアクセス方法が変わることはありません。
Q: 与えられた認証コードは 2 回以上使えますか?
いいえ。セキュリティ上の理由で、各認証コードを使用できるのは 1 回のみです。
Q: 私の認証コードが否認されたため、最近、認証デバイスを再同期するよう指示されました。心配すべきですか?
いいえ。これは時折発生することがあります。AWS MFA は、当社サーバーのクロックとお客様の認証デバイスのクロックが同期されていることに依存しています。場合によっては、これらのクロックがずれることがあります。ずれが発生した場合に、お客様が認証デバイスを使って AWS ウェブサイトの保護されたページ、または AWS マネジメントコンソールにアクセスするためにサインインしようとすると、当社はお客様に 2 つの連続認証コードを求めてこれを自動的に再同期します (アクティベートする時点で行ったことと同じです)。
Q: 認証デバイスは正常に稼働しているようですが、それを使って AWS マネジメントコンソールにサインインすることができません。どうすればよいですか?
IAM ユーザーの認証情報のために、MFA デバイスを再同期することをお勧めします。再同期を試した後にもサインインの問題が解決しない場合は、別の認証要素を使ってサインインし、MFA デバイスをリセットすることができます。それでも問題が解決されない場合は、サポートにお問い合わせください。
Q: 認証デバイスの紛失、損傷、盗難、不具合のため、AWS マネジメントコンソールにサインインできません。どうすればよいですか?
認証デバイスが AWS ルートアカウントと関連付けられている場合、
まずパスワードを使用して AWS マネジメントコンソールにサインインしてから MFA デバイスをリセットします。その後、ルートアカウントに関連付けられているメールアドレスと電話番号を確認します。
MFA デバイスの紛失、損傷、盗難、不具合の場合、別の認証要素を使ってサインインして MFA デバイスを無効化し、その後新しい MFA デバイスをアクティベートします。セキュリティのベストプラクティスとして、ルートアカウントのパスワードを変更することをお勧めします。
新しい認証デバイスが必要な場合、新しいハードウェアの認証デバイスをサードパーティーのプロバイダー、Gemalto から購入するか、IAM コンソールを使用して、アカウントの新しい仮想 MFA デバイスをプロビジョニングすることができます。
前述の方法を試みてもサインインできない場合は、AWS サポートにお問い合わせください。
Q: AWS MFA を無効にする方法を教えてください。
AWS アカウントの AWS MFA を無効にする場合、セキュリティ認証情報ページを使って、あなたの認証デバイスを無効にできます。お客様の IAM ユーザーの AWS MFA を無効にする場合、IAM コンソールまたは AWS CLI を使用する必要があります。
Q: AWS MFA を GovCloud で使用できますか?
はい。AWS 仮想 MFA やハードウェア MFA デバイスを GovCloud で使用できます。
MFA 保護 API アクセス
Q: MFA 保護 API アクセスとは何ですか?
MFA 保護 API アクセスはオプション機能で、この機能を有効にすると、アカウント管理者は、お客様が指定した API の認証を強化できます。つまり、ユーザーに対して、パスワードだけでなく 2 つ目の認証要素の提供が要求されるようにします。具体的には、管理者が IAM ポリシーに条件を追加し、この中で特定の API へのアクセスに対して MFA 認証を必須とし、確認するよう指定します。これらの API に対して呼び出しを行うユーザーは、まず、有効な MFA コードを入力したことを示す一時的な認証情報を取得する必要があります。
Q: MFA 保護 API アクセスによって、どのような問題が解決されますか?
以前は、AWS マネジメントコンソールへのアクセスに MFA を要求することはできましたが、開発者や AWS のサービス API と直接連携するアプリケーションに MFA の要求を実施することはできませんでした。MFA 保護 API アクセスを使用すると、 アクセス パスにかかわらず、IAM ポリシーを一様に強制することができます。これにより、強力な API の呼び出しや機密性の高いリソースへのアクセス前に、AWS を使用してユーザーに MFA 認証を要求する独自のアプリケーションを構築できるようになりました。
Q: MFA 保護 API アクセスの使用を開始するには、どうすればよいですか?
開始するためのステップは次の 2 つです。
MFA デバイスを IAM ユーザーに割り当てます。キーホルダータイプのハードウェアを購入するか、TOTP と互換性のある無料のアプリケーションをスマートフォン、タブレット、コンピュータなどにダウンロードします。AWS MFA デバイスの詳細については、MFA の詳細ページを参照してください。
MFA 保護 API アクセスを有効にするには、IAM ユーザーや IAM グループに対して MFA 認証を必須とするアクセス許可ポリシーを作成します。アクセスポリシー言語の構文の詳細については、アクセスポリシー言語のドキュメントを参照してください。
Q: 開発者とユーザーは、MFA 保護 API アクセスで保護された API やリソースにどのようにアクセスしますか?
開発者やユーザーは、AWS マネジメントコンソールおよび API の両方を介して、MFA 保護 API アクセスで保護された API やリソースにアクセスします。
MFA が有効化された IAM ユーザーが AWS マネジメントコンソールにサインインするには、各自のデバイスを使用して認証を受ける必要があります。MFA が無効なユーザーは、MFA で保護された API やリソースにアクセスできません。
API レベルでは、開発するアプリケーションに AWS MFA を統合すると、API 呼び出しの前や機密性の高いリソースへのアクセスの前に、ユーザーに割り当てた MFA による認証を要求できるようになります。開発者がこの機能を有効にするには、一時的セキュリティ認証情報を取得するためのリクエストに、任意指定の MFA パラメータ(シリアル番号と MFA コード)を追加します(このようなリクエストを「セッションリクエスト」と呼ぶこともあります)。パラメータが有効な場合、MFA ステータスを示す一時的なセキュリティ認証情報が返されます。詳細については、一時的セキュリティ認証情報のドキュメントを参照してください。
Q: MFA 保護 API アクセスは誰が使用できますか?
MFA 保護 API アクセスは、AWS のすべてのお客様に無料でご利用いただけます。
Q: MFA 保護 API アクセスはどのサービスと連携しますか?
MFA 保護 API アクセスをサポートしているのは、AWS のサービスのうち、一時的セキュリティ認証情報をサポートしているものすべてです。サポートされているサービスの一覧については、「IAM と連携する AWS サービス」を参照し、「一時セキュリティ認証情報」というラベルの付いた列を確認してください。
Q: ユーザーが一時的セキュリティ認証情報をリクエストするときに入力した MFA デバイス情報が正しくない場合は、どうなりますか?
一時的セキュリティ認証情報発行のリクエストは、失敗します。一時的セキュリティ認証情報リクエストで MFA のパラメータが指定されている場合は、IAM ユーザーにリンクしているデバイスの正しいシリアル番号を、有効な MFA コードとともに指定する必要があります。
Q: MFA 保護 API アクセスによって、AWS ルートアカウントの API アクセスもコントロールされますか?
いいえ。MFA 保護 API アクセスでコントロールされるのは、IAM ユーザーによるアクセスのみです。ルートアカウントには IAM ポリシーに従う義務はないので、AWS では、AWS サービス API にアクセスする場合、AWS ルートアカウント認証情報を使用する代わりに IAM ユーザーを作成することをお勧めしています。
Q: ユーザーが MFA 保護 API アクセスを利用するには、各自に割り当てられた MFA デバイスが必要ですか?
はい。初めに、各ユーザーに固有のハードウェアまたは仮想 MFA デバイスを割り当てる必要があります。
Q: MFA 保護 API アクセスは S3 オブジェクト、SQS キュー、および SNS トピックにも対応していますか?
はい。
Q: MFA 保護 API アクセスと既存の MFA ユースケース(例えば S3 MFA Delete)はどのように相互作用するのですか?
MFA 保護 API アクセスと S3 MFA Delete は相互作用しません。現時点では、S3 MFA Delete は一時的セキュリティ認証情報をサポートしていません。S3 MFA Delete API を呼び出すには、代わりに長期間有効なアクセスキーを使用する必要があります。
Q: MFA 保護 API アクセスは GovCloud (米国) リージョンで機能しますか?
はい。
Q: MFA 保護 API アクセスは、フェデレーテッドユーザーに対しても機能しますか?
お客様は MFA 保護 API アクセスを使用してフェデレーテッドユーザーを制御できません。GetFederatedSession API は、MFA のパラメータを受け付けません。フェデレーテッドユーザーは、AWS MFA デバイスによる認証ができないので、MFA 保護 API アクセスの使用が指定されたリソースにはアクセスできません。
料金
Q: AWS IAM では何に対して課金されますか?
IAM は、各 AWS アカウントで追加料金なしで利用できる機能です。課金は、お客様のユーザーが使用した、AWS の他のサービスに対してのみ行われます。
Q: AWS アカウントまたは IAM ユーザーに対して AWS MFA が有効になっている場合は、AWS にサインインするとき常に認証コードを使用する必要があるのですか?
はい。AWS はシングルサインオン(Single Sign-On/SSO)をサポートしています。これはつまり、どれかの AWS サイトにサインインすると、すべての AWS サイトにサインインすることになるということです。お客様の AWS アカウントまたはお客様の IAM ユーザーが割り当てられている MFA デバイスを持っているならば、サインインの際には常にこの認証デバイスを使用する必要があるという意味です。
Q: AWS アカウントまたは IAM ユーザーに対して AWS MFA が有効になっている場合は、AWS ポータルや AWS マネジメントコンソールにサインインするとき常に認証コードを使用する必要があるのですか?
はい。AWS アカウントおよび IAM ユーザーは、どんな AWS サイトでもサインインする必要がある際には常に、自分の MFA デバイスを持っている必要があります。
AWS アカウントに関連付けられている認証デバイスが損傷または紛失した、盗まれた、またはデバイスが機能しなくなった場合は、当社に連絡を入れて、アカウントの AWS MFA を無効にする必要があります。そうすれば、一時的に AWS アカウントのユーザー名とパスワードだけを使って AWS にサインインすることができるようになります。
お客様の IAM ユーザーが認証デバイスを損傷または紛失した、盗まれた、またはデバイスが機能しなくなった場合は、IAM コンソールまたは IAM CLI を使用して、お客様が自分で AWS MFA を無効にすることができます。
Q: AWS アカウントまたは IAM ユーザーに対して AWS MFA が有効になっている場合は、AWS API を直接呼び出すとき常に MFA コードを入力する必要があるのですか?
いいえ、必須ではありません。ただし、MFA 保護 API アクセス機能によって保護されている API を呼び出す場合は、MFA コードを入力する必要があります。
AWS API を呼び出すときに、ルートアカウントまたは IAM ユーザーアクセスキーを使用する場合は、MFA コードを入力する必要はありません。セキュリティ上の理由から、アクセスキーをルートアカウントから削除して、代わりに IAM ユーザーを使用して AWS API を呼び出すことをお勧めします。
Q: 認証デバイスを使って AWS Portal および AWS マネジメントコンソールにサインインするにはどのようにすればよいですか?
以下の 2 つの手順に従ってください。
AWS アカウントとしてサインインする場合、プロンプトが表示されたら通常通りユーザー名とパスワードを使用してサインインします。IAM ユーザーとしてサインインするには、アカウント固有の URL を使用して、プロンプトが表示されたらユーザー名とパスワードを入力します。
次ページで、お客様の認証デバイスに表示されている6桁の認証コードを入力してください。
Q: AWS MFA は AWS Service API へのアクセスに影響がありますか?
IAM ユーザーが AWS サービス API にアクセスする方法が AWS MFA の導入によって変化するのは、アカウント管理者が MFA 保護 API アクセスを有効化した場合のみです。管理者がこの機能を有効にする目的は、機密性の高い API へのアクセスに関してセキュリティを強化するためであり、呼び出し元は AWS MFA デバイスによる認証を受ける必要があります。詳細については、MFA 保護 API アクセスのドキュメントをご覧ください。
その他の例外としては、S3 の PUT Bucket バージョニング、GET Bucket バージョニング、DELETE Object の API があります。これを利用すると、バケットのバージョニング状態を削除または変更するときに追加の認証コードの使用を必須とすることができます。詳細については、S3 のドキュメントの「Configuring a Bucket with MFA Delete」をご覧ください。
それ以外のすべてのケースについては、現時点では AWS MFA の導入によって AWS サービス API へのアクセス方法が変わることはありません。
Q: 与えられた認証コードは 2 回以上使えますか?
いいえ。セキュリティ上の理由で、それぞれの認証コードは1回しか使用できません。
Q: 私の認証コードが否認されたため、最近、認証デバイスを再同期するよう指示されました。心配すべきですか?
いいえ。これは時折発生することがあります。AWS MFA は、当社サーバーのクロックとお客様の認証デバイスのクロックが同期されていることに依存しています。場合によっては、温度、湿度、圧力などの環境要因により、これらのクロックの同期がずれることがあります。これが発生した場合に、お客様が認証デバイスを使って AWS ウェブサイトの保護されたページ、または AWS Management Console にサインインしようとすると、当社はお客様に2つの連続認証コードを求めてこれを自動的に再同期します(アクティベートする時点で行ったことと同じです)。
Q: 認証デバイスは正常に稼働しているようですが、それを使って AWS Portal または AWS マネジメントコンソールにサインインすることができません。どのようにすればよいですか?
MFA デバイスでルート認証情報が保護される場合は(サインインが必要)、こちらのリンクを、IAM ユーザー認証情報の場合は、こちらのリンクを利用して、認証デバイスの再同期をお試しください。すでに再同期を試みて、それでもログインできない場合は、当社までご連絡ください。
Q: 認証デバイスが紛失、損傷、または盗難され、AWS Portal または AWS マネジメントコンソールにサインインすることができません。どうすればよいですか?
認証デバイスが AWS アカウントに関連付けられている場合は、次の手順に従います。
当社までご連絡いただき、AWS MFA の無効化を依頼してください。これで、AWS のウェブサイトの保護されたページや AWS マネジメントコンソールに、一時的にユーザー名とパスワードだけでアクセスできるようになります。
アタッカーが認証デバイスを盗み、お客様の現在のパスワードを入手した可能性があるので、Amazon のパスワードを変更してください。
サードパーティのプロバイダー Gemalto から、そのウェブサイトを使って新しいデバイスを購入するか、または IAM コンソールを使用してアカウントで新しい仮想 MFA デバイスをプロビジョニングします。
上記のステップを完了したら、IAM コンソールを使用して、認証デバイスをアクティベートし、AWS アカウントの AWS MFA を再度有効にします。
認証デバイスが IAM ユーザーに関連付けられている場合は、IAM コンソール、IAM CLI、または IAM API を使用して、IAM ユーザーの MFA デバイスを削除することができます。
Q: 物理的な認証デバイスが働かなくなって、AWS Portal または AWS マネジメントコンソールにサインインすることができなくなりました。どうすればよいですか?
物理的な認証デバイスが AWS アカウントに関連付けられている場合は、次の手順に従います。
当社までご連絡いただき、AWS MFA の無効化を依頼してください。これで、AWS のウェブサイトの保護されたページや AWS マネジメントコンソールに、一時的にユーザー名とパスワードだけでアクセスできるようになります。
サードパーティのプロバイダー Gemalto に連絡し、認証デバイスに関する援助を受けてください。
別の認証デバイスを一旦入手したら、前のように、AWS のウェブサイトに戻って、認証デバイスをアクティベートし、お客様の AWS アカウントの AWS MFA を再度有効にします。
認証デバイスが IAM ユーザーに関連付けられている場合は、IAM ユーザーのユーザー名とパスワードを提供した人にご連絡ください。
Q: AWS MFA はどのように無効にできますか?
AWS アカウントの AWS MFA を無効にするには、セキュリティ認証情報ページを使って、あなたの認証デバイスを無効にする必要があります。お客様の IAM ユーザーの AWS MFA を無効にするには、IAM コンソールまたは IAM CLI を使用する必要があります。現時点では、IAM ユーザーは自分で AWS MFA を無効にすることはできません。
Q: AWS MFA は GovCloud でも使用できますか?
はい。AWS 仮想 MFA を GovCloud で使用できます。現時点では、ハードウェア MFA デバイスは GovCloud ではサポートされません。