AWS Cloud9で環境を共有する
2020/02/27
(特にリモート環境では)画面共有をしたり、リポジトリを共有したり、コーディング環境の共有が必要になることが多くあります。
AWS Cloud9(IDE統合開発環境サービス)では、他のユーザーとのリアルタイム共有機能があります。
その設定をしましたので、手順を記録しました。
参照したのは、Cloud9のユーザーガイド共有環境を使用するです。
詳細はこちらをご確認ください。
目次
IAMユーザーの作成
複数ユーザーを作成していくことになるケースでしたので、IAMグループを作成してIAMポリシーをアタッチしました。
アタッチしたIAMポリシーは以下の2つのAWS管理ポリシーです。
- AWSCloud9User
- IAMUserChangePassword
IAMUserChangePassword は、作成したユーザーに初回サインイン時にパスワードを設定してもらう運用にしたかったのでアタッチしました。
アカウントのパスワードポリシーはセキュリティ高めの設定にしました。
Cloud9で必要なのは、AWSCloud9Userです。
AWS管理ポリシーですので、変更があるかもしれませんが、2020年2月現在は次のようになっています。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloud9:ValidateEnvironmentName", "cloud9:UpdateUserSettings", "cloud9:GetUserSettings", "iam:GetUser", "iam:ListUsers", "ec2:DescribeVpcs", "ec2:DescribeSubnets" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "cloud9:CreateEnvironmentEC2", "cloud9:CreateEnvironmentSSH" ], "Resource": "*", "Condition": { "Null": { "cloud9:OwnerArn": "true" } } }, { "Effect": "Allow", "Action": [ "cloud9:GetUserPublicKey" ], "Resource": "*", "Condition": { "Null": { "cloud9:UserArn": "true" } } }, { "Effect": "Allow", "Action": [ "cloud9:DescribeEnvironmentMemberships" ], "Resource": [ "*" ], "Condition": { "Null": { "cloud9:UserArn": "true", "cloud9:EnvironmentId": "true" } } }, { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "*", "Condition": { "StringLike": { "iam:AWSServiceName": "cloud9.amazonaws.com" } } } ] } |
Cloud9の共有ユーザーは大きく次の3種類で、今回はread/writeユーザーとして作成します。
read/writeユーザーはコードの編集、作成が可能です。
- owner
- read/write
- read
新規作成するIAMユーザーを、グループに追加していきます。
Cloud9の共有設定
owner(Cloud9環境を作成したユーザー)でCloud9環境にアクセスします。
右上の[Share]をクリックしました。
共有設定画面です。
EnvironmentのURLが表示されています。
下部のInvite MembersでIAMユーザーを選択しました。
警告メッセージが表示されましたので[OK]をクリックしました。
環境にメンバーが追加されたメッセージが表示されましたので、[OK]をクリックしました。
Who has access に追加したIAMユーザーが表示されました。
readもread/writeも同じIAMポリシーでしたので、どこで制御するのかなと思ってたのですが、ここで制御するのですね。
なるほど。
作成したユーザーでサインインします。
運用想定として、AWSマネジメントコンソールに慣れていないユーザーを想定してますので、以下のような手順を考えています。
- アカウントIDが含まれたマネジメントコンソールサインインURLにアクセスして初期パスワードでサインインする。
- パスワードを変更してサインインする。
- Cloud9環境のURLにアクセスする。
これでダイレクトに環境にアクセスできます。
一応マネジメントコンソールでも確認してみますと、Shared with youに環境が表示されます。
PermissionsはRead-writeと表示されています。
環境にアクセスすると、右上にアクセス中のユーザーの頭文字が表示されています。
他のユーザーがポインタをおいている箇所が頭文字と同じ色で示されています。
マウスオーバーするとユーザー名が表示されます。
右のCollaborateをクリックすると、チャットでメッセージが送信できます。
遠隔での共同開発にもすごく便利ですね!!!!
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。


開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
-
Amazon EC2のスクリーンショットとは
ドキュメント見てたらAmazon EC2でスクリーンショットって機能があったので …
-
-
T2.microからT3.nanoに変更(メモリエラーも対応)
このブログのEC2インスタンスをT2.micro 1インスタンスからT3.nan …
-
-
[事前準備] JAWS-UG 関西IoT専門支部「マクニカkibo + AWS IoTハンズオン」
来る12/19(土)の JAWS-UG 関西IoT専門支部第一回勉強会「マクニカ …
-
-
Backlogの実績工数をAmazon QuickSightで可視化してわかったこと
今年に入ってから、Backlogで個人タスクを登録しだして、予定工数、実績工数を …
-
-
Amazon Glacierのプロビジョニングされた迅速取り出し容量をなぜか購入しました
過去1年ぐらいのAWSコストをCost Explorerで見てまして、10/10 …
-
-
VPC内のLambdaからVPCエンドポイント経由でSecrets Managerを使う
InternetGatewayのないVPCでMySQLに対して一日数回のレポーテ …
-
-
共有AMIのコピー時にエラー「You do not have permission to access the storage of this ami」
他アカウントから共有されたAMIをコピーする際に、「You do not hav …
-
-
Amazon VPCにオンプレミス検証環境想定プライベートDNSサーバー(BIND)をEC2で起動する
オンプレミス想定の検証で使うために、Amazon VPCにプライベート向けDNS …
-
-
RDSインスタンスのストレージをgp2からgp3に変更しました
2022/11/9にRDSでgp3ボリュームが使用できるようになりました。 Am …
-
-
Amazon LinuxにRedmine 環境構築(エラーと対応をそのまま記載版)
Amazon Linuxにgit + Redmineの環境を構築してみます。 自 …