SlideShare une entreprise Scribd logo
1  sur  17
S3 Event Notifications 
やってみた 
JAWS-UG北陸NKMC 
2014/11/29
セッション枠が埋まらなかったので 
• 最近追加された機能を紹介&実践
S3 Event Notifications 
• 2014/11/13に追加されたS3の新機能 
• S3にオブジェクトがアップロードされると 
• トピック(SNS) 
• キュー(SQS) 
• 関数(Lambda) 
にイベントを送ることができる 
• 詳しくはAWSブログを見てね 
http://aws.typepad.com/aws_japan/2014/11/s3- 
event-notification.html
用途? 
• オブジェクト駆動の実装が可能 
例)モバイルアプリからS3に画像をアップロードし、パ 
スをDBに保存する 
今までだと・・・ 
• モバイルアプリ=> 画像をダイレクトS3転送+ EC2 
サーバのAPIをコールして通知(DBにパスを保存) 
• モバイルアプリ=> EC2サーバに画像送信=>EC2 
サーバからS3にアップロード+DBにパスを保存
こんな風に使える? 
• Event Notificationsを使うと 
モバイルアプリ=> 画像ダイレクトS3転送 
↓ 
イベント通知(SQS) 
↑ 
EC2サーバでキュー処理=>パスをDB登録 
といった感じで、クライアント-サーバ間で非同 
期で画像を処理できる。
他にも・・・ 
• オブジェクトアップロード時の初期化や、ロ 
グ取り、内容チェックができそう。 
• Lambdaと組み合わせれば、S3に画像を 
アップロードするとEC2サーバを使わずにリ 
サイズ・変換・加工したりできるね!
では実践! 
• やってみること 
S3バケットにオブジェクトがアップロードされ 
たら、メールで通知する
S3バケットの準備 
• おもむろにS3のバケットを作成 
S3 > 『Create Bucket』 
• 既存のバケットでもいいよ
SNSトピック作成 
• SNSトピックをつくる 
SNS > SNS Dashboard > 『Create New 
Topic』 
• トピック名、表示名を設定して作成
トピックの購読者登録 
• SNS > Subscriptions > トピックを選択> 
『Create Subscription』 
• 「Protocol」をEmailまたはEmail-JSON 
• 「Endpoint」を自分のメールアドレス
購読の承認 
• 購読者のメールアドレスに「AWS 
Notification – Subscription 
Confirmation」というメールが届く 
• 本文中のURLをクリックして承認
トピックの権限設定 
• SNS > トピック選択> All Topic Actions > 
View/Edit Topic Policy > Advanced View 
• S3がSNSにイベントを通知できるように、ト 
ピックの権限を手直し
設定内容 
{ "Version": "2008-10-17", 
"Id": "__default_policy_ID", 
"Statement": [ { 
"Sid": "__default_statement_ID", 
"Effect": "Allow", 
"Principal": { "AWS": "*" }, 
"Action": "SNS:Publish", 
"Resource": "arn:aws:sns:ap-northeast-1:026724327907:S3-Notification", 
"Condition": { 
"ArnEquals": { 
"AWS:SourceArn": "arn:aws:s3:::nkmc-s3-event" 
}}}] 
} 
作成したトピッ 
クのARN 
自分のS3バ 
ケットのARN 
SNS:Publish 
に限定 
ARNの比較と 
指定
S3にイベント通知設定 
• S3 > バケット選択> Properties > Events 
• イベント名をつける 
• 通知イベントを選択 
• SNSトピックを選択
通知されるか試す 
• オブジェクトをバケットにアップロード 
• メールが飛んだか確認
通知される内容 
• Region 
• Timestamp 
• Event Type (上記のリストで示したイベント) 
• Request Actor Principal ID 
• リクエストのSource IP 
• Request ID 
• Host ID 
• Notification Configuration Destination ID 
• バケット名 
• バケットARN 
• Bucket Owner Principal ID 
• オブジェクトのキー(オブジェクトの名前) 
• オブジェクトのサイズ 
• オブジェクトのETag 
• オブジェクトのバージョンID(もしバケットでバージョニングを有効に為ていた場合)
おしまい 
• 工夫次第でいろいろ使いどころがありそうで 
すね。

Contenu connexe

Tendances

20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model  20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model Amazon Web Services Japan
 
20200212 AWS Black Belt Online Seminar AWS Systems Manager
20200212 AWS Black Belt Online Seminar AWS Systems Manager20200212 AWS Black Belt Online Seminar AWS Systems Manager
20200212 AWS Black Belt Online Seminar AWS Systems ManagerAmazon Web Services Japan
 
AWS WAF のマネージドルールって結局どれを選べばいいの?
AWS WAF のマネージドルールって結局どれを選べばいいの?AWS WAF のマネージドルールって結局どれを選べばいいの?
AWS WAF のマネージドルールって結局どれを選べばいいの?YOJI WATANABE
 
OSS+AWSでここまでできるDevSecOps (Security-JAWS第24回)
OSS+AWSでここまでできるDevSecOps (Security-JAWS第24回)OSS+AWSでここまでできるDevSecOps (Security-JAWS第24回)
OSS+AWSでここまでできるDevSecOps (Security-JAWS第24回)Masaya Tahara
 
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows ServerAmazon Web Services Japan
 
20180322 AWS Black Belt Online Seminar AWS Snowball Edge
20180322 AWS Black Belt Online Seminar AWS Snowball Edge20180322 AWS Black Belt Online Seminar AWS Snowball Edge
20180322 AWS Black Belt Online Seminar AWS Snowball EdgeAmazon Web Services Japan
 
20200811 AWS Black Belt Online Seminar CloudEndure
20200811 AWS Black Belt Online Seminar CloudEndure20200811 AWS Black Belt Online Seminar CloudEndure
20200811 AWS Black Belt Online Seminar CloudEndureAmazon Web Services Japan
 
AWS Black Belt Techシリーズ AWS Directory Service
AWS Black Belt Techシリーズ AWS Directory ServiceAWS Black Belt Techシリーズ AWS Directory Service
AWS Black Belt Techシリーズ AWS Directory ServiceAmazon Web Services Japan
 
20190806 AWS Black Belt Online Seminar AWS Glue
20190806 AWS Black Belt Online Seminar AWS Glue20190806 AWS Black Belt Online Seminar AWS Glue
20190806 AWS Black Belt Online Seminar AWS GlueAmazon Web Services Japan
 
AWS 初心者向けWebinar Amazon Web Services料金の見積り方法 -料金計算の考え方・見積り方法・お支払方法-
AWS 初心者向けWebinar Amazon Web Services料金の見積り方法 -料金計算の考え方・見積り方法・お支払方法-AWS 初心者向けWebinar Amazon Web Services料金の見積り方法 -料金計算の考え方・見積り方法・お支払方法-
AWS 初心者向けWebinar Amazon Web Services料金の見積り方法 -料金計算の考え方・見積り方法・お支払方法-Amazon Web Services Japan
 
AWS Black Belt Techシリーズ Amazon WorkDocs / Amazon WorkMail
AWS Black Belt Techシリーズ Amazon WorkDocs / Amazon WorkMailAWS Black Belt Techシリーズ Amazon WorkDocs / Amazon WorkMail
AWS Black Belt Techシリーズ Amazon WorkDocs / Amazon WorkMailAmazon Web Services Japan
 
20190220 AWS Black Belt Online Seminar Amazon S3 / Glacier
20190220 AWS Black Belt Online Seminar Amazon S3 / Glacier20190220 AWS Black Belt Online Seminar Amazon S3 / Glacier
20190220 AWS Black Belt Online Seminar Amazon S3 / GlacierAmazon Web Services Japan
 
AWS Black Belt Online Seminar 2017 AWS体験ハンズオン~Deploy with EB CLI編~
AWS Black Belt Online Seminar 2017 AWS体験ハンズオン~Deploy with EB CLI編~AWS Black Belt Online Seminar 2017 AWS体験ハンズオン~Deploy with EB CLI編~
AWS Black Belt Online Seminar 2017 AWS体験ハンズオン~Deploy with EB CLI編~Amazon Web Services Japan
 
Amazon Athena で実現する データ分析の広がり
Amazon Athena で実現する データ分析の広がりAmazon Athena で実現する データ分析の広がり
Amazon Athena で実現する データ分析の広がりAmazon Web Services Japan
 
Black Belt Online Seminar AWS上の暗号化ソリューション
Black Belt Online Seminar AWS上の暗号化ソリューションBlack Belt Online Seminar AWS上の暗号化ソリューション
Black Belt Online Seminar AWS上の暗号化ソリューションAmazon Web Services Japan
 
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPNAmazon Web Services Japan
 
AWS Well-Architected Security とベストプラクティス
AWS Well-Architected Security とベストプラクティスAWS Well-Architected Security とベストプラクティス
AWS Well-Architected Security とベストプラクティスAmazon Web Services Japan
 
[AKIBA.AWS] NLBとPrivateLinkの仕様に立ち向かう
[AKIBA.AWS] NLBとPrivateLinkの仕様に立ち向かう[AKIBA.AWS] NLBとPrivateLinkの仕様に立ち向かう
[AKIBA.AWS] NLBとPrivateLinkの仕様に立ち向かうShuji Kikuchi
 

Tendances (20)

20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model  20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
 
20200212 AWS Black Belt Online Seminar AWS Systems Manager
20200212 AWS Black Belt Online Seminar AWS Systems Manager20200212 AWS Black Belt Online Seminar AWS Systems Manager
20200212 AWS Black Belt Online Seminar AWS Systems Manager
 
AWS WAF のマネージドルールって結局どれを選べばいいの?
AWS WAF のマネージドルールって結局どれを選べばいいの?AWS WAF のマネージドルールって結局どれを選べばいいの?
AWS WAF のマネージドルールって結局どれを選べばいいの?
 
OSS+AWSでここまでできるDevSecOps (Security-JAWS第24回)
OSS+AWSでここまでできるDevSecOps (Security-JAWS第24回)OSS+AWSでここまでできるDevSecOps (Security-JAWS第24回)
OSS+AWSでここまでできるDevSecOps (Security-JAWS第24回)
 
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server
 
20180322 AWS Black Belt Online Seminar AWS Snowball Edge
20180322 AWS Black Belt Online Seminar AWS Snowball Edge20180322 AWS Black Belt Online Seminar AWS Snowball Edge
20180322 AWS Black Belt Online Seminar AWS Snowball Edge
 
20200811 AWS Black Belt Online Seminar CloudEndure
20200811 AWS Black Belt Online Seminar CloudEndure20200811 AWS Black Belt Online Seminar CloudEndure
20200811 AWS Black Belt Online Seminar CloudEndure
 
AWS Black Belt Techシリーズ AWS Directory Service
AWS Black Belt Techシリーズ AWS Directory ServiceAWS Black Belt Techシリーズ AWS Directory Service
AWS Black Belt Techシリーズ AWS Directory Service
 
20190806 AWS Black Belt Online Seminar AWS Glue
20190806 AWS Black Belt Online Seminar AWS Glue20190806 AWS Black Belt Online Seminar AWS Glue
20190806 AWS Black Belt Online Seminar AWS Glue
 
AWS Blackbelt 2015シリーズ AWS Lambda
AWS Blackbelt 2015シリーズ AWS LambdaAWS Blackbelt 2015シリーズ AWS Lambda
AWS Blackbelt 2015シリーズ AWS Lambda
 
AWS 初心者向けWebinar Amazon Web Services料金の見積り方法 -料金計算の考え方・見積り方法・お支払方法-
AWS 初心者向けWebinar Amazon Web Services料金の見積り方法 -料金計算の考え方・見積り方法・お支払方法-AWS 初心者向けWebinar Amazon Web Services料金の見積り方法 -料金計算の考え方・見積り方法・お支払方法-
AWS 初心者向けWebinar Amazon Web Services料金の見積り方法 -料金計算の考え方・見積り方法・お支払方法-
 
AWS Black Belt Techシリーズ Amazon WorkDocs / Amazon WorkMail
AWS Black Belt Techシリーズ Amazon WorkDocs / Amazon WorkMailAWS Black Belt Techシリーズ Amazon WorkDocs / Amazon WorkMail
AWS Black Belt Techシリーズ Amazon WorkDocs / Amazon WorkMail
 
20190220 AWS Black Belt Online Seminar Amazon S3 / Glacier
20190220 AWS Black Belt Online Seminar Amazon S3 / Glacier20190220 AWS Black Belt Online Seminar Amazon S3 / Glacier
20190220 AWS Black Belt Online Seminar Amazon S3 / Glacier
 
AWS Black Belt Online Seminar 2017 AWS体験ハンズオン~Deploy with EB CLI編~
AWS Black Belt Online Seminar 2017 AWS体験ハンズオン~Deploy with EB CLI編~AWS Black Belt Online Seminar 2017 AWS体験ハンズオン~Deploy with EB CLI編~
AWS Black Belt Online Seminar 2017 AWS体験ハンズオン~Deploy with EB CLI編~
 
Amazon Athena で実現する データ分析の広がり
Amazon Athena で実現する データ分析の広がりAmazon Athena で実現する データ分析の広がり
Amazon Athena で実現する データ分析の広がり
 
Black Belt Online Seminar AWS上の暗号化ソリューション
Black Belt Online Seminar AWS上の暗号化ソリューションBlack Belt Online Seminar AWS上の暗号化ソリューション
Black Belt Online Seminar AWS上の暗号化ソリューション
 
Black Belt Online Seminar AWS Amazon S3
Black Belt Online Seminar AWS Amazon S3Black Belt Online Seminar AWS Amazon S3
Black Belt Online Seminar AWS Amazon S3
 
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
 
AWS Well-Architected Security とベストプラクティス
AWS Well-Architected Security とベストプラクティスAWS Well-Architected Security とベストプラクティス
AWS Well-Architected Security とベストプラクティス
 
[AKIBA.AWS] NLBとPrivateLinkの仕様に立ち向かう
[AKIBA.AWS] NLBとPrivateLinkの仕様に立ち向かう[AKIBA.AWS] NLBとPrivateLinkの仕様に立ち向かう
[AKIBA.AWS] NLBとPrivateLinkの仕様に立ち向かう
 

Similaire à S3 Event Notifications やってみた

サーバレスアプリケーション構築入門
サーバレスアプリケーション構築入門サーバレスアプリケーション構築入門
サーバレスアプリケーション構築入門YoshihiroHorizono1
 
AWS サービスアップデートまとめ 2014年7月
AWS サービスアップデートまとめ 2014年7月AWS サービスアップデートまとめ 2014年7月
AWS サービスアップデートまとめ 2014年7月Yasuhiro Horiuchi
 
Jawsday2015 lambda(なにができるの? EC2はもう不要?)
Jawsday2015 lambda(なにができるの? EC2はもう不要?)Jawsday2015 lambda(なにができるの? EC2はもう不要?)
Jawsday2015 lambda(なにができるの? EC2はもう不要?)Shiraishi Masayuki
 
CloudFormation/SAMのススメ
CloudFormation/SAMのススメCloudFormation/SAMのススメ
CloudFormation/SAMのススメEiji KOMINAMI
 
SaaS版Qlik Senseのマップチャートにフロアマップ画像を配置する – メディアライブラリとqlik-cliの活用
SaaS版Qlik Senseのマップチャートにフロアマップ画像を配置する – メディアライブラリとqlik-cliの活用SaaS版Qlik Senseのマップチャートにフロアマップ画像を配置する – メディアライブラリとqlik-cliの活用
SaaS版Qlik Senseのマップチャートにフロアマップ画像を配置する – メディアライブラリとqlik-cliの活用QlikPresalesJapan
 
AWS LambdaとAPI Gatewayでサーバレスなシステム構築に踏み出してみる
AWS LambdaとAPI Gatewayでサーバレスなシステム構築に踏み出してみるAWS LambdaとAPI Gatewayでサーバレスなシステム構築に踏み出してみる
AWS LambdaとAPI Gatewayでサーバレスなシステム構築に踏み出してみるTakashi Makino
 
Morning Session - AWS Serverless Ways
Morning Session - AWS Serverless WaysMorning Session - AWS Serverless Ways
Morning Session - AWS Serverless Waysakitsukada
 
re:Invent 2021のS3アップデート紹介 & Glacier Instant Retrieval試してみた
re:Invent 2021のS3アップデート紹介 & Glacier Instant Retrieval試してみたre:Invent 2021のS3アップデート紹介 & Glacier Instant Retrieval試してみた
re:Invent 2021のS3アップデート紹介 & Glacier Instant Retrieval試してみたHideaki Aoyagi
 
アプリ開発&チーム管理で 役立った拡張機能
アプリ開発&チーム管理で役立った拡張機能アプリ開発&チーム管理で役立った拡張機能
アプリ開発&チーム管理で 役立った拡張機能Masaki Suzuki
 
Lambda × Mobileの可能性
Lambda × Mobileの可能性Lambda × Mobileの可能性
Lambda × Mobileの可能性yuki0211s
 
モバイルBaaSの概観と最新動向 (2013/6/7)
モバイルBaaSの概観と最新動向 (2013/6/7)モバイルBaaSの概観と最新動向 (2013/6/7)
モバイルBaaSの概観と最新動向 (2013/6/7)Shinichi Tomita
 

Similaire à S3 Event Notifications やってみた (20)

サーバレスアプリケーション構築入門
サーバレスアプリケーション構築入門サーバレスアプリケーション構築入門
サーバレスアプリケーション構築入門
 
俺のLambda
俺のLambda俺のLambda
俺のLambda
 
20120319 aws meister-reloaded-s3
20120319 aws meister-reloaded-s320120319 aws meister-reloaded-s3
20120319 aws meister-reloaded-s3
 
20120319 aws meister-reloaded-s3
20120319 aws meister-reloaded-s320120319 aws meister-reloaded-s3
20120319 aws meister-reloaded-s3
 
AWS サービスアップデートまとめ 2014年7月
AWS サービスアップデートまとめ 2014年7月AWS サービスアップデートまとめ 2014年7月
AWS サービスアップデートまとめ 2014年7月
 
Jawsday2015 lambda(なにができるの? EC2はもう不要?)
Jawsday2015 lambda(なにができるの? EC2はもう不要?)Jawsday2015 lambda(なにができるの? EC2はもう不要?)
Jawsday2015 lambda(なにができるの? EC2はもう不要?)
 
AWS Black Belt Techシリーズ AWS SDK
AWS Black Belt Techシリーズ AWS SDKAWS Black Belt Techシリーズ AWS SDK
AWS Black Belt Techシリーズ AWS SDK
 
CloudFormation/SAMのススメ
CloudFormation/SAMのススメCloudFormation/SAMのススメ
CloudFormation/SAMのススメ
 
Serverless Revolution
Serverless RevolutionServerless Revolution
Serverless Revolution
 
20120303 jaws summit-meister-03_s3
20120303 jaws summit-meister-03_s320120303 jaws summit-meister-03_s3
20120303 jaws summit-meister-03_s3
 
AWSでのビッグデータ分析
AWSでのビッグデータ分析AWSでのビッグデータ分析
AWSでのビッグデータ分析
 
SaaS版Qlik Senseのマップチャートにフロアマップ画像を配置する – メディアライブラリとqlik-cliの活用
SaaS版Qlik Senseのマップチャートにフロアマップ画像を配置する – メディアライブラリとqlik-cliの活用SaaS版Qlik Senseのマップチャートにフロアマップ画像を配置する – メディアライブラリとqlik-cliの活用
SaaS版Qlik Senseのマップチャートにフロアマップ画像を配置する – メディアライブラリとqlik-cliの活用
 
AWS LambdaとAPI Gatewayでサーバレスなシステム構築に踏み出してみる
AWS LambdaとAPI Gatewayでサーバレスなシステム構築に踏み出してみるAWS LambdaとAPI Gatewayでサーバレスなシステム構築に踏み出してみる
AWS LambdaとAPI Gatewayでサーバレスなシステム構築に踏み出してみる
 
Morning Session - AWS Serverless Ways
Morning Session - AWS Serverless WaysMorning Session - AWS Serverless Ways
Morning Session - AWS Serverless Ways
 
AWS Update 2011/10
AWS Update 2011/10AWS Update 2011/10
AWS Update 2011/10
 
re:Invent 2021のS3アップデート紹介 & Glacier Instant Retrieval試してみた
re:Invent 2021のS3アップデート紹介 & Glacier Instant Retrieval試してみたre:Invent 2021のS3アップデート紹介 & Glacier Instant Retrieval試してみた
re:Invent 2021のS3アップデート紹介 & Glacier Instant Retrieval試してみた
 
アプリ開発&チーム管理で 役立った拡張機能
アプリ開発&チーム管理で役立った拡張機能アプリ開発&チーム管理で役立った拡張機能
アプリ開発&チーム管理で 役立った拡張機能
 
Lambda × Mobileの可能性
Lambda × Mobileの可能性Lambda × Mobileの可能性
Lambda × Mobileの可能性
 
AWS小ネタ集
AWS小ネタ集AWS小ネタ集
AWS小ネタ集
 
モバイルBaaSの概観と最新動向 (2013/6/7)
モバイルBaaSの概観と最新動向 (2013/6/7)モバイルBaaSの概観と最新動向 (2013/6/7)
モバイルBaaSの概観と最新動向 (2013/6/7)
 

S3 Event Notifications やってみた