に対する認証とアクセスコントロール - Amazon Kinesis Data Analytics for SQL Applications デベロッパーガイド

新しいプロジェクトでは、Kinesis Data Analytics for Applications で新しい Managed Service for Apache Flink Studio SQL を使用することをお勧めします。Managed Service for Apache Flink Studio は、使いやすさと高度な分析機能を兼ね備えているため、高度なストリーム処理アプリケーションを数分で構築できます。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

に対する認証とアクセスコントロール

へのアクセスには、認証情報が必要です。これらの認証情報には、 へのアクセス許可が必要です AWS アプリケーションや Amazon Elastic Compute Cloud (Amazon EC2) インスタンスなどの リソース。以下のセクションでは、 の使用方法について詳しく説明します。 AWS Identity and Access Management (IAM) および は、 リソースへの安全なアクセスに役立ちます。

アクセスコントロール

有効な認証情報があればリクエストを認証できますが、アクセス許可が付与されている場合を除き、 リソースの作成やアクセスはできません。たとえば、 アプリケーションの作成にはアクセス権限が必要です。

次のセクションでは、 の許可を管理する方法について説明します。最初に概要のセクションを読むことをお勧めします。

アイデンティティを使用した認証

認証は、 にサインインする方法です。 AWS ID 認証情報を使用する。認証されている必要があります ( にサインインします AWSとしての ) AWS アカウントのルートユーザー、 IAM ユーザーとして、または IAMロールを引き受ける方法。

にサインインできます。 AWS ID ソースを通じて提供される認証情報を使用して、フェデレーティッド ID として を指定します。 AWS IAM Identity Center (IAM Identity Center) ユーザー、会社のシングルサインオン認証、Google または Facebook の認証情報は、フェデレーティッド ID の例です。フェデレーティッド ID としてサインインすると、管理者は以前に IAMロールを使用して ID フェデレーションをセットアップしていました。にアクセスする場合 AWS フェデレーションを使用すると、間接的にロールを引き受けることになります。

ユーザーのタイプに応じて、 にサインインできます。 AWS Management Console または AWS アクセスポータル。へのサインインの詳細については、「」を参照してください。 AWS「 にサインインする方法」を参照してください。 AWS アカウント ()AWS サインイン ユーザーガイド

アクセスする場合 AWS プログラムにより、 AWS は、 認証情報を使用してリクエストに暗号で署名するためのソフトウェア開発キット (SDK) とコマンドラインインターフェイス (CLI) を提供します。を使用しない場合 AWS ツール、リクエストには自分で署名する必要があります。推奨される方法を使用してリクエストに自分で署名する方法の詳細については、「署名」を参照してください。 AWS API IAMユーザーガイドの リクエスト

使用する認証方法を問わず、追加セキュリティ情報の提供をリクエストされる場合もあります。例えば、 などです AWS では、アカウントのセキュリティを高めるために多要素認証 (MFA) を使用することをお勧めします。詳細については、「」の「多要素認証」を参照してください。 AWS IAM Identity Center ユーザーガイドでの多要素認証 (MFA) の使用 AWS「」(IAM ユーザーガイド) を参照してください。

AWS アカウント ルートユーザー

を作成する場合 AWS アカウントでは、すべての への完全なアクセス権を持つ 1 つのサインインアイデンティティから始めます。 AWS のサービス アカウントの および リソース。この ID は と呼ばれます。 AWS アカウント root ユーザー と には、アカウントの作成に使用した E メールアドレスとパスワードでサインインすることでアクセスできます。日常的なタスクには、ルートユーザーを使用しないことを強くお勧めします。ルートユーザーの認証情報は保護し、ルートユーザーでしか実行できないタスクを実行するときに使用します。ルートユーザーとしてサインインする必要があるタスクの完全なリストについては、「 IAMユーザーガイド」の「ルートユーザーの認証情報を必要とするタスク」を参照してください。

フェデレーティッドアイデンティティ

ベストプラクティスとして、管理者アクセスを必要とするユーザーを含む人間のユーザーに、ID プロバイダーとのフェデレーションを使用して にアクセスすることを要求します。 AWS のサービス 一時的な認証情報を使用する。

フェデレーティッド ID は、エンタープライズユーザーディレクトリのユーザー、ウェブ ID プロバイダー、 AWS Directory Service、Identity Center ディレクトリ、または にアクセスする任意のユーザー AWS のサービス ID ソースを通じて提供される認証情報を使用する。フェデレーティッド ID が にアクセスする場合 AWS アカウント、ロールを引き受け、ロールは一時的な認証情報を提供します。

一元的なアクセス管理を行うには、 を使用することをお勧めします。 AWS IAM Identity Center。 IAM Identity Center でユーザーとグループを作成することも、自分の ID ソース内のユーザーとグループのセットに接続して同期し、すべての で使用することもできます。 AWS アカウント および アプリケーション。IAM Identity Center の詳細については、「」のIAM「Identity Center とは」を参照してください。 AWS IAM Identity Center ユーザーガイド

IAM ユーザーとグループ

IAM ユーザーは 内のアイデンティティです。 AWS アカウント 1 人のユーザーまたはアプリケーションに対して特定のアクセス許可を持つ 。可能であれば、パスワードやアクセスキーなどの長期的な認証情報を持つIAMユーザーを作成するのではなく、一時的な認証情報を使用することをお勧めします。ただし、IAMユーザーとの長期的な認証情報を必要とする特定のユースケースがある場合は、アクセスキーをローテーションすることをお勧めします。詳細については、「 ユーザーガイド」の「長期的な認証情報を必要とするユースケースでアクセスキーを定期的にローテーションするIAM」を参照してください。

IAM グループは、IAMユーザーのコレクションを指定するアイデンティティです。グループとしてサインインすることはできません。グループを使用して、複数のユーザーに対して一度に権限を指定できます。多数のユーザーグループがある場合、グループを使用することで権限の管理が容易になります。例えば、 という名前のグループIAMAdminsを作成し、そのグループにIAMリソースを管理するアクセス許可を付与できます。

ユーザーは、ロールとは異なります。ユーザーは 1 人の人または 1 つのアプリケーションに一意に関連付けられますが、ロールはそれを必要とする任意の人が引き受けるようになっています。ユーザーには永続的な長期の認証情報がありますが、ロールでは一時認証情報が提供されます。詳細については、「 ユーザーガイド」のIAM「 (ロールの代わりに) ユーザーを作成する場合IAM」を参照してください。

IAM ロール

IAM ロールは 内のアイデンティティです。 AWS アカウント 特定のアクセス許可を持つ 。これは IAM ユーザーと似ていますが、特定のユーザーに関連付けられていません。で一時的に IAMロールを引き受けることができます。 AWS Management Console ロールを切り替えます。を呼び出すことでロールを引き受けることができます。 AWS CLI または AWS API オペレーション、またはカスタム の使用URL。ロールの使用方法の詳細については、「 ユーザーガイド」のIAM「ロールの使用IAM」を参照してください。

IAM 一時的な認証情報を持つ ロールは、以下の状況で役立ちます。

  • フェデレーションユーザーアクセス – フェデレーティッド ID に許可を割り当てるには、ロールを作成してそのロールの許可を定義します。フェデレーティッド ID が認証されると、その ID はロールに関連付けられ、ロールで定義されている許可が付与されます。フェデレーションのロールの詳細については、「 ユーザーガイド」の「サードパーティー ID プロバイダーのロールの作成IAM」を参照してください。IAM Identity Center を使用する場合は、アクセス許可セットを設定します。ID が認証後にアクセスできる内容を制御するために、IAMIdentity Center はアクセス許可セットを のロールに関連付けますIAM。アクセス許可セットの詳細については、「」の「アクセス許可セット」を参照してください。 AWS IAM Identity Center ユーザーガイド

  • 一時的なIAMユーザーアクセス許可 – IAM ユーザーまたはロールは、 IAMロールを引き受けて、特定のタスクに対して異なるアクセス許可を一時的に引き受けることができます。

  • クロスアカウントアクセス – IAMロールを使用して、別のアカウントのユーザー (信頼されたプリンシパル) がアカウントのリソースにアクセスすることを許可できます。クロスアカウントアクセスを許可する主な方法は、ロールを使用することです。ただし、 AWS のサービスでは、 (ロールをプロキシとして使用する代わりに) リソースにポリシーを直接アタッチできます。クロスアカウントアクセスのロールとリソースベースのポリシーの違いについては、「 ユーザーガイド」の「 でのクロスアカウントリソースアクセスIAMIAM」を参照してください。

  • クロスサービスアクセス – 一部 AWS のサービス 他の の機能を使用する AWS のサービス。 例えば、サービスで呼び出しを行うと、そのサービスが Amazon でアプリケーションを実行EC2したり、Amazon S3 にオブジェクトを保存したりするのが一般的です。サービスでは、呼び出し元プリンシパルの許可、サービスロール、またはサービスリンクロールを使用してこれを行う場合があります。

    • 転送アクセスセッション (FAS) – IAM ユーザーまたはロールを使用して でアクションを実行する場合 AWS、ユーザーはプリンシパルと見なされます。一部のサービスを使用する際に、アクションを実行することで、別のサービスの別のアクションがトリガーされることがあります。FAS は、 を呼び出すプリンシパルのアクセス許可を使用します。 AWS のサービス、 リクエストとの組み合わせ AWS のサービス ダウンストリームサービスにリクエストを行う 。FAS リクエストは、サービスが他の とのやり取りを必要とするリクエストを受け取った場合にのみ行われます。 AWS のサービス または完了するリソース。この場合、両方のアクションを実行するための権限が必要です。FAS リクエストを行う際のポリシーの詳細については、「転送アクセスセッション」を参照してください。

    • サービスロール – サービスロールは、ユーザーに代わってアクションを実行するためにサービスが引き受ける IAMロールです。IAM 管理者は、 内からサービスロールを作成、変更、削除できますIAM。詳細については、「 にアクセス許可を委任するロールの作成」を参照してください。 AWS のサービス「」(IAM ユーザーガイド) を参照してください。

    • サービスにリンクされたロール – サービスにリンクされたロールは、 にリンクされたサービスロールの一種です。 AWS のサービス。 このサービスは、ユーザーに代わってアクションを実行するロールを引き受けることができます。サービスにリンクされたロールが に表示されます。 AWS アカウント と は サービスによって所有されます。IAM 管理者は、サービスにリンクされたロールのアクセス許可を表示できますが、編集することはできません。

  • Amazon で実行されているアプリケーション EC2 – IAMロールを使用して、EC2インスタンスで実行され、 を作成しているアプリケーションの一時的な認証情報を管理できます。 AWS CLI または AWS API リクエスト。これは、EC2インスタンス内にアクセスキーを保存するよりも望ましいです。を割り当てるには AWS EC2 インスタンスにロールを割り当て、そのすべてのアプリケーションで使用できるようにするには、インスタンスにアタッチされたインスタンスプロファイルを作成します。インスタンスプロファイルには ロールが含まれており、EC2インスタンスで実行されているプログラムが一時的な認証情報を取得できるようにします。詳細については、「 ユーザーガイド」の「 IAMロールを使用して Amazon EC2インスタンスで実行されているアプリケーションにアクセス許可を付与するIAM」を参照してください。

IAM ロールとIAMユーザーのどちらを使用するかについては、「 ユーザーガイド」の「 (ユーザーではなく) IAMロールを作成する場合IAM」を参照してください。