ハンズオン(簡易版): Lambda基礎 Boto3 (Python SDK)

ハンズオン(簡易版): Lambda基礎 Boto3 (Python SDK)

作成者

波田野 裕一

公開日

2021-03-18

目的

LambdaのPython SDKであるBoto3を使用してみる。

前提

作業権限条件

本手順は、以下の権限を有する「IAMユーザー」もしくは「IAMロールが付与された環境(Cloud9などを含むEC2環境)で行います。

作業権限条件: 必要なIAMポリシー

  • AWSLambda_FullAccess

  • IAMFullAccess

  • CloudWatchLogsFullAccess

  • AmazonEC2FullAccess

必要なIAMポリシーを利用する環境(「IAMユーザー」「IAMグループ」もしくは「IAMロール」)にアタッチした後に、手順を実施します。

作業環境条件

注釈

本手順は、Cloud9環境での実施を推奨します。

本手順は、以下の環境で行います。

環境条件1: OSとバージョン

本手順は、Amazon Linux 2"2018.03"以降のOS環境での実施を前提としています。

コマンド:

cat /etc/system-release

結果(例):

Amazon Linux release 2 (2018.03)

環境条件2: シェルとバージョン

本手順は、bash "4.2.46(2)-release"以降のシェル環境での実施を前提としています。

コマンド:

bash --version -v \
  | head -1

結果(例):

GNU bash, バージョン 4.2.46(2)-release (x86_64-redhat-linux-gnu)

環境条件3: AWS CLIのバージョン

本手順は、AWS CLIのバージョン"1.18.81"以降での実施を前提としています。

コマンド:

aws --version

結果(例):

aws-cli/1.18.81 Python/3.6.10 Linux/4.14.173-106.229.amzn1.x86_64 botocore/1.16.0

手順

注釈

CLIハンズオンの実施方法や効果的に行うためのポイントについては、CLIハンズオンガイドをご参照ください。

1. STS (AWS IDの取得)

構成:

本手順書で構築するAWSリソースの構成は以下の図のようになります。

_images/handson-basic_boto3_sts.png

2. EC2 (セキュリティグループのルール追加・削除)

構成(authorize):

本手順書で構築するAWSリソースの構成は以下の図のようになります。

_images/handson-basic_boto3_ec2_authorize.png

構成(revoke):

本手順書で構築するAWSリソースの構成は以下の図のようになります。

_images/handson-basic_boto3_ec2_revoke.png

Lambda関数の作成 (ec2:revoke)

セキュリティグループのルールがCIDR指定のもの(全てのポート)を全て削除するLambda関数を作成します。

警告

対向がセキュリティグループのルールが存在する場合の挙動は確認していません。

アンケート

今後の参考にするため、本手順についてご意見・コメントをお願いします。

注釈

  • 必須項目はありません。お気軽にご回答ください。

  • 内容が違えばお一人何回回答していただいても問題ありません。

  • はまりどころや誤字・脱字などの修正のご指摘もお待ちしています。

注釈

このアンケートシステムはS3 + Cognitoで構築しています。

後始末

後始末2. EC2 (セキュリティグループのルール追加・削除)

事後作業 (Cloud9環境)

備考

(特になし)

参照情報

Lambda 公式サイト

https://aws.amazon.com/jp/lambda/

Lambda 公式ドキュメント一覧

https://docs.aws.amazon.com/lambda/index.html

AWS サービス別資料

https://aws.amazon.com/jp/aws-jp-introduction/aws-jp-webinar-service-cut/