ヤマムギ

growing hard days.

*

AWS Cloud9で環境を共有する

      2020/02/27

(特にリモート環境では)画面共有をしたり、リポジトリを共有したり、コーディング環境の共有が必要になることが多くあります。
AWS Cloud9(IDE統合開発環境サービス)では、他のユーザーとのリアルタイム共有機能があります。
その設定をしましたので、手順を記録しました。

参照したのは、Cloud9のユーザーガイド共有環境を使用するです。
詳細はこちらをご確認ください。

IAMユーザーの作成

複数ユーザーを作成していくことになるケースでしたので、IAMグループを作成してIAMポリシーをアタッチしました。
アタッチしたIAMポリシーは以下の2つのAWS管理ポリシーです。

  • AWSCloud9User
  • IAMUserChangePassword

IAMUserChangePassword は、作成したユーザーに初回サインイン時にパスワードを設定してもらう運用にしたかったのでアタッチしました。
アカウントのパスワードポリシーはセキュリティ高めの設定にしました。

Cloud9で必要なのは、AWSCloud9Userです。
AWS管理ポリシーですので、変更があるかもしれませんが、2020年2月現在は次のようになっています。

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マネジメントコンソールに慣れていないユーザーを想定してますので、以下のような手順を考えています。

  1. アカウントIDが含まれたマネジメントコンソールサインインURLにアクセスして初期パスワードでサインインする。
  2. パスワードを変更してサインインする。
  3. Cloud9環境のURLにアクセスする。

これでダイレクトに環境にアクセスできます。

一応マネジメントコンソールでも確認してみますと、Shared with youに環境が表示されます。
PermissionsはRead-writeと表示されています。

環境にアクセスすると、右上にアクセス中のユーザーの頭文字が表示されています。
他のユーザーがポインタをおいている箇所が頭文字と同じ色で示されています。
マウスオーバーするとユーザー名が表示されます。

右のCollaborateをクリックすると、チャットでメッセージが送信できます。

遠隔での共同開発にもすごく便利ですね!!!!


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

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

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

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

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

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

 - AWS ,

  関連記事

SendGridのイベントをAPI Gateway -> Lambda(Python) -> DynamoDBに格納する

SendGridのメールイベントログはコンソールで確認出来るのは直近7日分で一括 …

EC2にSystems MangerからCloudWatchエージェントをインストール

CloudWatchエージェント EC2の標準メトリクスでは収集できないメモリの …

AWS BackupでRDSスナップショットをクロスリージョンコピー

クロスリージョンでコピーしたい対象と理由 このブログはブログのアーキテクチャをコ …

EC2インスタンスを必要最小限のパラメータでCLIとSDKから起動する

EC2インスタンスをCLIとSDKから起動するデモで、パラメータを必要最小限にし …

Amazon LinuxにRedmine 環境構築(エラーと対応をそのまま記載版)

Amazon Linuxにgit + Redmineの環境を構築してみます。 自 …

別アカウントのVPCからAWS PrivateLinkを使う

VPC エンドポイントサービス (AWS PrivateLink)を参考にしまし …

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト – プロフェッショナル」を執筆しました

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテク …

特定のIAMロールをLambda(Python)で削除する

やりたいこと 特定アカウントの特定の名前が含まれるIAMロールをまとめて削除した …

Route 53サブドメインホストゾーンを作成したら、元のホストゾーンにNSレコードを作成する自動化

ハンズオン環境でRoute 53のホストゾーンを触ってほしい際に、サブドメインを …

DynamoDB IAMポリシーで特定項目だけを許可する

検証記録です。 対象テーブル 書籍のサンプルで作ったこちらです。 所属バンドの楽 …