IAM ポリシーによる AWS CloudShell アクセスと使用状況の管理 - AWS CloudShell

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

IAM ポリシーによる AWS CloudShell アクセスと使用状況の管理

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

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

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

このAWS CloudShellFullAccessポリシーでは、ワイルドカード (*) 文字を使用して、IAM アイデンティティ (ユーザー、ロール、またはグループ) に および 機能への CloudShellフルアクセスを許可します。このポリシーの詳細については、「 マネージドポリシーユーザーガイドAWS CloudShellFullAccess」の「」を参照してください。 AWS

注記

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

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

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

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

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

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

例えば、IAM ユーザーに へのアクセスを許可しても CloudShell、 へのログインに使用される CloudShell 環境認証情報は転送しないようにすることができます AWS Management Console。

重要

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

  • CreateEnvironment

  • CreateSession

  • GetEnvironmentStatus

  • StartEnvironment

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

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

cloudshell:CreateEnvironment

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

はい

cloudshell:CreateSession

から CloudShell 環境に接続します AWS Management Console。

はい

cloudshell:GetEnvironmentStatus

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

はい

cloudshell:DeleteEnvironment

CloudShell 環境を削除します。

いいえ

cloudshell:GetFileDownloadUrls

CloudShell ウェブインターフェイス CloudShell を使用して からファイルをダウンロードするために使用される署名付き Amazon S3 URLs を生成します。

いいえ

cloudshell:GetFileUploadUrls

CloudShell ウェブインターフェイス CloudShell を使用して からファイルをアップロードするために使用される、署名付き Amazon S3 URLs を生成します。

いいえ

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 ユーザーが にアクセスすることを許可します CloudShell が、ファイルのアップロードとダウンロード用の署名URLs の生成はブロックします。ユーザーは、例えば wget のようなクライアントを使用して、環境に向けておよび環境からファイルを転送することができます。

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

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

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowUsingCloudshell", "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", "cloudshell:CreateSession", "cloudshell:GetEnvironmentStatus", "cloudshell:StartEnvironment" ], "Resource": "*" }] }

にアクセスするためのアクセス許可 AWS のサービス

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

注記

へのサインインに使用した IAM 認証情報を使用するには AWS Management Console、 アクセスcloudshell:PutCredentials許可が必要です。

のこの事前認証機能は CloudShell 、 の使用に役立ちます AWS CLI。ただし、IAM ユーザーには、コマンドラインから呼び出 AWS のサービス される に対する明示的なアクセス許可が必要です。

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

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