AWS Identity and Access Management
ユーザーガイド

IAM ユーザー

IAM ユーザーは AWS で作成するエンティティであり、AWS とやり取りするためにこれを使用する人またはサービスを表します。AWS のユーザーは名前と認証情報で構成されます。

管理者アクセス許可を持つ IAM ユーザーが AWS アカウントのルートユーザー ということではありません。ルートユーザー の詳細については、「AWS アカウントのルートユーザー」を参照してください。

重要

アプリケーションまたはウェブサイト用のアマゾン広告を有効にしている間にこのページに移動した場合は、「Product Advertising API にサインアップする」を参照してください。

AWS が IAM ユーザーを識別する方法

ユーザーを作成すると、IAM はそのユーザーを識別するための以下の手段を作成します。

  • ユーザーの「フレンドリ名」。ユーザーを作成したときに指定した名前です (RichardAnaya など)。これは、AWS マネジメントコンソール に表示される名前です。

  • ユーザーの Amazon リソースネーム (ARN) AWS 全体でユーザーを一意に識別する必要がある場合は、ARN を使用します。たとえば、ARN を使用して、Amazon S3 バケットの IAM ポリシーの Principal としてユーザーを指定できます。IAM ユーザーの ARN は次の例のように表示されます。

    arn:aws:iam::account-ID-without-hyphens:user/Richard

  • ユーザー用の一意の識別子 (この ID が返されるのは、API、Tools for Windows PowerShell、または AWS CLI を使用してユーザーを作成した場合だけです。この ID はコンソールには表示されません)。

これらの ID の詳細についてはIAM IDを参照してください。

ユーザーと認証情報

AWS には、ユーザーの認証情報に応じてさまざまな方法でアクセスできます。

  • コンソールパスワード: AWS マネジメントコンソール などのインタラクティブセッションにサインインする際にユーザーが入力するパスワード。

  • アクセスキー: アクセスキー ID とシークレットアクセスキーの組み合わせ。1 人のユーザーに一度に 2 つ割り当てることができます。これらを使用して AWS をプログラムで呼び出すことができます。たとえば、コードの API、または AWS CLI や AWS PowerShell ツールのコマンドプロンプトで、アクセスキーを使用する場合があります。

  • AWS CodeCommit で使用する SSH キー: AWS CodeCommit での認証に使用可能な OpenSSH 形式の SSH パブリックキー。

  • サーバー証明書: 一部の AWS のサービスでの認証に使用可能な SSL/TLS 証明書。AWS Certificate Manager (ACM) を使用してサーバー証明書のプロビジョニング、管理、デプロイを行うことをお勧めします。ACM でサポートされていないリージョンで HTTPS 接続をサポートする必要があるときにのみ、IAM を使用してください。ACM をサポートするリージョンについては、AWS General Reference の「AWS Certificate Manager」を参照してください。

デフォルトでは、新しい IAM ユーザーはパスワードやアクセスキー (アクセスキー ID、— シークレットアクセスキーなど) を持っていません (どのような種類の認証情報も提供されていません)。IAM ユーザーが実行する内容に基づいて、対応するタイプの認証情報を作成する必要があります。

パスワード、アクセスキー、および MFA デバイスを管理するために、次のオプションを使用します。

  • IAM ユーザーのパスワードを管理しますAWS マネジメントコンソールへのアクセスを許可するパスワードを作成および変更します。最低限のパスワードの複雑さを強制するパスワードポリシーを設定します。自分のパスワードを変更をユーザーに許可します。

  • IAM ユーザーのアクセスキーを管理します アカウントのリソースにプログラムでアクセスするためのアクセスキーを作成および更新します。

  • ユーザーの認証情報のセキュリティを強化するには、ユーザーに対して多要素認証 (MFA) を有効にすることができます。MFA を使用する場合、ユーザーは 2 つの形式の ID を指定する必要があります。まず、ユーザー ID の一部である認証情報 (パスワードまたはアクセスキー) を指定します。さらに、一時的な数値コードを指定します。この数値コードは、ハードウェアデバイスで生成されるか、スマートフォンやタブレットのアプリケーションで生成されるか、AWS から SMS 対応のモバイルデバイスに送信されます。

  • 使用されていないパスワードおよびアクセスキーを見つけるアカウントのパスワードまたはアクセスキーを持つユーザー、またはアカウント内の IAM ユーザーであれば、だれでも AWS リソースにアクセスできます。セキュリティ保護のためのベストプラクティスは、ユーザーがパスワードやアクセスキーを使用しなくなったら、それらを削除することです。

  • アカウントの認証情報レポートをダウンロードするアカウント内のすべての IAM ユーザーと、ユーザーの各種認証情報 (パスワード、アクセスキー、MFA デバイスなど) のステータスが示された認証情報レポートを生成し、ダウンロードできます。パスワードおよびアクセスキーについては、パスワードやアクセスキーが最近いつ使用されたかが、認証情報レポートに表示されます。

ユーザーとアクセス権限

デフォルトでは、新しい IAM ユーザーには、何かを実施するためのアクセス権限がありません。ユーザーには、AWS オペレーションを実行したり、AWS リソースにアクセスしたりする権限がありません。個々の IAM ユーザーを持つ利点は、アクセス権限を各ユーザーに個別に割り当てることができることです。管理権限を複数のユーザーに割り当てることができます。これらのユーザーは、AWS リソースを管理するだけでなく、他の IAM ユーザーを作成して管理することもできます。ただし、通常、ユーザーのアクセス許可はユーザーの作業に必要なタスク (AWS アクションまたはオペレーション) とリソースだけに制限します。

Diego というユーザーを想定します。IAM ユーザー Diego を作成する際に、このユーザーのパスワードを作成できます。また、IAM ユーザーにアクセス許可をアタッチして、特定の Amazon EC2 インスタンスを起動し、Amazon RDS データベース内のテーブルの情報を読み取る (GET) ことを許可します。ユーザーを作成して初期認証情報とアクセス権限を付与する手順については、「AWS アカウントでの IAM ユーザーの作成」を参照してください。既存のユーザーのアクセス権限を変更する手順については、「IAM ユーザーのアクセス権限の変更」を参照してください。ユーザーのパスワードやアクセスキーを変更する手順については、「パスワードの管理」と「IAM ユーザーのアクセスキーの管理」を参照してください。

ユーザーにアクセス許可の境界を追加することもできます。アクセス許可の境界は、ポリシーを使用してプリンシパルに許可されるアクセス許可の上限を設定するためのアドバンスド機能です。この境界は、AWS Organizations 組織に適用するか、IAM ユーザーまたはロールに適用できます。 ポリシーのタイプと用途の詳細については、「ポリシーとアクセス許可」を参照してください。

ユーザーとアカウント

各 IAM ユーザーが関連付けられる AWS アカウントは 1 つだけです。ユーザーは AWS アカウント内で定義されているため、AWS のファイルに対する支払方法を持つ必要はありません。アカウント内のユーザーが実行したすべての AWS アクティビティは、お客様のアカウントに請求されます。

お客様が AWS アカウントに作成できる IAM ユーザーの数には制限があります。詳細については、「IAM エンティティおよびオブジェクトの制限」を参照してください。

ユーザーとサービスアカウント

IAM ユーザーは必ずしも実際の人を表す必要はありません。IAM ユーザーは、実際には、認証情報とアクセス権限が関連付けられた単なる ID です。IAM ユーザーを作成し、AWS へのリクエストの送信に認証情報を必要とするアプリケーションを表すこともできます。これは通常、「サービスアカウント」と呼ばれます。アプリケーションは、AWS アカウント内に独自のサービスアカウントを持つ場合や、独自のアクセス許可セットを持つ場合があります。これは、プロセスが Windows や Linux などのオペレーティングシステムで、独自の定義されたサービスアカウントを持つのと似ています。