CloudShell
マネジメントコンソールの上部から実行できる、Amazon Linux2ベースのシェルプロンプトです。
EC2インスタンスをわざわざたてなくても、ボタン一つで、マネジメントコンソールからAWS Cliを実行したり、簡単なLinuxコマンドを実行したり、あるいは1GBのスーペースがあるのでちょっとしたツールのインストールも可能だったりします。
リージョン内に10個のCloudShellを同時実行できて、料金も無料です。
AWS Cliをインストールしていない端末かの操作や、ちょっとしたことを試すだけなら、EC2インスタンスがなくてもできてしまうので、結構使い道はあります。
起動方法
マネジメントコンソールの上部にあるボタンをポチっと押してください。それだけです。
すると、下のようなモーダル画面が表示されます。今後表示したくない場合は、「DO not show again」をチェックして画面をCloseしてください。
できること
右上の[Actions]を開くと、以下のようなことができることがわかります。
ファイルのアップロードやダウンロードもできます。
コマンドラインで、S3へのPUTや、CloudFormationのスタック作成などを確認したい場合などに使えますね。
さらに、その隣の歯車のアイコンからは、CloudShellの設定もできます。
フォントのサイズや、テーマカラー、あと複数行コマンド貼り付け時の確認の有無などがあります。
ではさっそく署名付きURLを発行してみます
アップロード
まずは、S3にファイルをアップロードします。この時、マネジメントコンソールからアップロードしてもよいですし、クライアントからAWS Cliを叩いてもOKです。
せっかくなんで、CloudShellにファイルアップロードしてCloudShellを叩いてみる、でももちろんOKです。
S3のURI確認
マネジメントコンソールで、アップロードしたファイルの画面をみてみましょう。
オブジェクト概要欄に「S3 URI」という欄があるので、これをコピーしておきます。
署名付きURLの発行
aws s3 presign [S3 URI] --expires-in 有効期間(秒)
すると、署名の付いたURLが表示されます。このURLでアクセスすると、認証なしでファイルにアクセスすることが可能となります。