IMPポリシー内でのアクセスおよび使用の管理AWS CloudShell - AWS CloudShell

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

IMPポリシー内でのアクセスおよび使用の管理AWS CloudShell

AWS Identity and Access Management (IAM) によって提供されるアクセス管理リソースを使用して、管理者は IAM ユーザーにアクセス許可を付与することができます。こうすれば、ユーザーは AWS CloudShell にアクセスし、環境の機能を使用できます。管理者は、ユーザーがシェル環境で実行できるアクションをきめ細かく指定するポリシーを作成することもできます。

管理者がユーザーにアクセス権を付与する最も簡単な方法は、AWS マネージドポリシーを介した方法です。AWS マネージドポリシーは、AWS で作成および管理されるスタンドアロンポリシーです。AWS CloudShell 用に次の AWS マネージドポリシーを IAM アイデンティティにアタッチできます。

  • CloudShellPolicy: すべての機能へのフルアクセス権のある AWS CloudShell を使用するためのアクセス許可を付与します。

CloudShellPolicyこのポリシーでは、ワイルドカード (*) 文字を使用して IAM ID (ユーザー、ロール、またはグループ) CloudShell におよび機能へのフルアクセスを許可します。 CloudShellPolicy このポリシーは、許可されるユーザーアクションに関してより制限の厳しいカスタムポリシーのテンプレートとして使用することもできます。

{ "Version": "2012-10-17", "Statement": [{ "Sid": "CloudShellUser", "Effect": "Allow", "Action": [ "cloudshell:*" ], "Resource": "*" }] }
注記

AWS以下の管理ポリシーを持つ IAM ID も起動できます。 CloudShellただし、これらのポリシーは広範な許可を付与します。そのため、 IAM ユーザーのジョブロールに必須な場合のみ、これらのポリシーを許可することを推奨します。

  • 管理者: フルアクセスを IAM ユーザーに提供し、AWS の各サービスおよびリソースへのアクセス許可を委任できます。

  • デベロッパーパワーユーザー: この IAM ユーザーはアプリケーション開発タスクを実行し、AWS 対応アプリケーションの開発をサポートするリソースとサービスを作成および設定できます。

マネージドポリシーをアタッチする方法の詳細については、IAM ユーザーガイドのIAM アイデンティ許可の追加 (コンソール)を参照してください。

AWS CloudShell でカスタムポリシーを使用して、許可されるアクションを管理する

IAM ユーザーが実行できるアクションを管理するには CloudShell、 CloudShellPolicy 管理ポリシーをテンプレートとして使用するカスタムポリシーを作成します。または、関連する IAM アイデンティティ (ユーザー、グループ、もしくはロール) に埋め込まれているインラインポリシーを編集します。

たとえば、 CloudShell シェル環境内ではユーザーにはアクセスを許可するが、ファイルのアップロードやダウンロードは禁止できます。 CloudShell へのアクセスを明示的に拒否できます。

重要

IAM ユーザーが AWS Management Console から AWS CloudShell を開始するには、次のアクションについてアクセス許可が必要です。

  • CreateEnvironment

  • CreateSession

  • GetEnvironmentStatus

  • StartEnvironment

これらのアクションのいずれかが添付されたポリシーで明示的に許可されていない場合、起動しようとすると IAM アクセス権限エラーが返されます。 CloudShell

AWS CloudShell のアクセス許可
名前 付与されたアクセス許可の説明 起動には必要ですか? CloudShell

cloudshell:CreateEnvironment

CloudShell 環境を作成し、 CloudShell セッションの開始時にレイアウトを取得し、ウェブアプリから現在のレイアウトをバックエンドに保存します。この権限は、*以下の例で概説されているように、Resource値としてのみ想定されます。

はい

cloudshell:CreateSession

CloudShell から環境Connect AWS Management Console

はい

cloudshell:GetEnvironmentStatus

CloudShell 環境のステータスを読み取ります。

はい

cloudshell:DeleteEnvironment

CloudShell 環境を削除する。

いいえ

cloudshell:GetFileDownloadUrls

CloudShell CloudShell ウェブインターフェイスを使用してファイルをダウンロードする際に使用する、署名済みの Amazon S3 URL を生成します。

いいえ

cloudshell:GetFileUploadUrls

CloudShell CloudShell ウェブインターフェイスを使用してファイルをアップロードするために使用される署名済みの Amazon S3 URL を生成します。

いいえ

cloudshell:PutCredentials

ログインに使用した認証情報をに転送します。AWS Management Console CloudShell

いいえ

cloudshell:StartEnvironment

CloudShell 停止した環境を起動します。

はい

cloudshell:StopEnvironment

CloudShell 実行中の環境を停止します。

いいえ

の IAM ポリシーの例 CloudShell

以下の例は、 CloudShell誰がアクセスできるかを制限するポリシーを作成する方法を示しています。またこの例は、シェル環境で実行可能なアクションも示しています。

以下のポリシーは、 CloudShell その機能へのアクセスを完全に拒否します。

{ "Version": "2012-10-17", "Statement": [{ "Sid": "DenyCloudShell", "Effect": "Deny", "Action": [ "cloudshell:*" ], "Resource": "*" }] }

以下のポリシーでは、IAM ユーザーによるファイルのアップロードとダウンロードのための署名付き URL CloudShell へのアクセスは許可しますが、生成はブロックします。ユーザーは、たとえば wget のようなクライアントを使用して、環境に向けておよび環境からファイルを転送することができます。

{ "Version": "2012-10-17", "Statement": [{ "Sid": "CloudShellUser", "Effect": "Allow", "Action": [ "cloudshell:*" ], "Resource": "*" }, { "Sid": "DenyUploadDownload", "Effect": "Deny", "Action": [ "cloudshell:GetFileDownloadUrls", "cloudshell:GetFileUploadUrls" ], "Resource": "*" }] }

次のポリシーは IAM ユーザーにアクセスを許可します。 CloudShellただし、このポリシーでは、AWS Management Console CloudShell ログインに使用した認証情報が環境に転送されることはありません。このポリシーを適用している IAM ユーザーは、内部の認証情報を手動で設定する必要があります。 CloudShell

{ "Version": "2012-10-17", "Statement": [{ "Sid": "CloudShellUser", "Effect": "Allow", "Action": [ "cloudshell:*" ], "Resource": "*" }, { "Sid": "DenyCredentialForwarding", "Effect": "Deny", "Action": [ "cloudshell:PutCredentials" ], "Resource": "*" }] }

次のポリシーでは、IAM AWS CloudShell ユーザーが環境を作成することを許可します。

{ "Version": "2012-10-17", "Statement": [{ "Sid": "CloudShellUser", "Effect": "Allow", "Action": "cloudshell:CreateEnvironment", "Resource": "*" }] }

AWS のサービス へのアクセス許可

CloudShell へのサインインに使用した IAM 認証情報を使用します。AWS Management Console

注記

AWS Management Console へのサインインに使用された IAM 認証情報を使用するためには、cloudshell:PutCredentials のアクセス許可を持つ必要があります。

CloudShell の事前認証機能を使用すると便利です。AWS CLIただし、IAM ユーザーはコマンドラインから呼び出される AWS のサービス について明示的な許可が必要です。

例えば、IAM ユーザーが Amazon S3 バケットを作成し、ファイルをオブジェクトとしてそこにアップロードする必要があるとします。これらのアクションを明示的に許可するポリシーを作成することができます。IAM コンソールには、JSON 形式のポリシードキュメントを作成する手順を説明するインタラクティブなビジュアルエディタが用意されています。ポリシーを作成した後、関連する IAM アイデンティティ (ユーザー、グループ、もしくはロール) にアタッチできます。

マネージドポリシーをアタッチする方法の詳細については、IAM ユーザーガイドのIAM アイデンティ許可の追加 (コンソール)を参照してください。