SlideShare une entreprise Scribd logo
1  sur  17
Télécharger pour lire hors ligne
RecoChoku Tech Night #09
AWS Transfer for SFTPについて
1. 自己紹介
2. 会社紹介
3. AWS Transfer for SFTPについて
A g e n d a
2
• 野口 孝昭 @ntakaaki
• カスタマーバリュー開発部インフラグループ
• SREというかインフラ 兼 情シス
• Re:Inventは今回初参加
• AWS歴
• ガッツリ触りだして2年位
•
自 己 紹 介
3
• 2002年1月 創業
• 2013年7月 マザーズ上場
• 2016年11月 非上場 → CCCグループ
株 式 会 社 フ ォ ト ク リ エ イ ト
4
AWS Transfer for SFTP
6
AW S Tr a n s f e r f o r S F T P と は
• S 3 が ス ト レ ー ジ に な って る マ ネ ー ジ ド な S F T P
• 冗 長 化 ・ ス ケ ー ラ ビ リ テ ィ は AW S に お ま か せ
• 数 ク リ ッ ク で S F T P サ ー バ ー が 立 ち 上 げ 可 能
• 写真の納品手段がFTP
• 繁忙期だとひと月で1600万枚位納品されてくる
• 5台のFTPサーバーとCIFSでマウントされたスト
レージでさばいてる
• 積もり積もって3ペタバイト、10億枚の写真
フ ォ ト ク リ エ イ ト と F T P
7
FTP周り結構辛い
8
回線の帯域が。。。
FTPサーバーが突然の死。。。
見込みを越えてくる納品量。。。
ストレージの空き容量がIOPSが。。。
そんな悩みをふっとばしてくれそう!
Tr a n s f e r f o r S F T P な ら
9
10
認 証 周 り
•I A M か 独 自 認 証 か を 選 べ る
•独 自 認 証 の 場 合 は A P I G a t e w a y
•ド キ ュ メ ン ト に C l o u d F o r m a t i o n の テ ン プ レ ー ト
が あ る
•A P I G a t e w a y と L a m b d a を ディ プ ロ イ して く れ る
A P I G a t e w a y
11
• SFTP構築時に振られるserveridとusernameは
API Gatewayのパス変数になる
• SFTPクライアントがパスワードを送ってきた場
合はAPI GatewayからLambdaを呼び出す時に
Passwordヘッダが追加される
• パスワードがなければ 認証になる
12
L a m b d a
13
'use strict';
// GetUserConfig Lambda
exports.handler = (event, context, callback) => {
console.log("Event:", JSON.stringify(event));
var response;
if (event.serverId == 's-myServerId' && event.username == 'MyUserName') {
response = {
Role: "arn:arn:aws:iam::000000000000:role/UserS3AccessRole",
Policy: 'user-scope-down-policy', // Not required
HomeDirectory: '/bucket/userHome' // Not required, defaults to '/'
};
if (event.password == "") {
response['PublicKeys'] = [ "ssh-rsa rsapubkey" ];
} else if (event.password !== 'MySuperSecretPassword') {
response = {};
}
} else {
response = {};
}
callback(null, response);
};
• 認証に成功した場合は以下のJSONを返す
L a m b d a で の 認 証 の 成 功 ・ 失 敗 の 判 定
14
response = {
Role:"arn:arn:aws:iam::000000000000:role/UserS3AccessRole",
Policy: 'user-scope-down-policy', // Not required
HomeDirectory: '/bucket/userHome' // Not required, defaults to '/'
};
• 認証に失敗した場合は空のJSONを返す
• 当社のユースケースの場合、ユーザー毎にホームディ
レクトリが必要。
• 納品した写真が他ユーザーから見えてはいけない。

> Scope down policyで設定
ユ ー ザ ー 毎 の デ ィ レ ク ト リ が ほ し い
15
• ${transfer:UserName}

• ${transfer:HomeBucket}

• ${transfer:HomeDirectory}
• Transfer for SFTP用のIAMポリシー変数。
• ユーザーごとにポリシーを作らなくても良い。
• Custom認証だとScope down policyが効かない?
• Cusotm認証時の設定がドキュメントにあまり記載がない。
• Lambdaのレスポンスに何を入れれば良いのか。
• policyのarnとかpolicyをアタッチしたRoleのarnとか
• IAMのユーザーだと問題なし。
• Lambdaで返すJSONからPolicyを外すと認証は通る。

が、当然どこでも見えてしまう。
S c o p e d o w n p o l i c y
16
• マネージド万歳
• API Gateway経由でlambda叩けば認証周りは好きにできる。
• Scope down policyでユーザー毎の制限もできるはず。
• lambdaでのPolicy指定の仕方が悪い?
• グローバルにさらされてるんで、ちょいちょい怪しいアクセスが。
• IP制限は掛けたいですね。。
ま と め
17

Contenu connexe

Tendances

20150908 ”時間の流れ” という無限リストを扱うAWS Lambda
20150908 ”時間の流れ” という無限リストを扱うAWS Lambda20150908 ”時間の流れ” という無限リストを扱うAWS Lambda
20150908 ”時間の流れ” という無限リストを扱うAWS Lambda都元ダイスケ Miyamoto
 
AWS Lambdaによるサーバレスアーキテクチャの基本に触れてみよう!【kintone & AWS ハンズオン祭り2015秋 B-2】
AWS Lambdaによるサーバレスアーキテクチャの基本に触れてみよう!【kintone & AWS ハンズオン祭り2015秋 B-2】AWS Lambdaによるサーバレスアーキテクチャの基本に触れてみよう!【kintone & AWS ハンズオン祭り2015秋 B-2】
AWS Lambdaによるサーバレスアーキテクチャの基本に触れてみよう!【kintone & AWS ハンズオン祭り2015秋 B-2】Ryu Yamashita
 
はじめてのAWS Lambda
はじめてのAWS LambdaはじめてのAWS Lambda
はじめてのAWS LambdaMasaki Misawa
 
Lambdaによるクラウド型言語の実装
Lambdaによるクラウド型言語の実装Lambdaによるクラウド型言語の実装
Lambdaによるクラウド型言語の実装Sugawara Genki
 
Reco choku tech night #09 -reinvent2018報告会-
Reco choku tech night #09 -reinvent2018報告会-Reco choku tech night #09 -reinvent2018報告会-
Reco choku tech night #09 -reinvent2018報告会-recotech
 
AWSでAPI Gatewayから非同期でLambdaを起動してS3にファイルアップロードしようとしたらハマった話。
AWSでAPI Gatewayから非同期でLambdaを起動してS3にファイルアップロードしようとしたらハマった話。AWSでAPI Gatewayから非同期でLambdaを起動してS3にファイルアップロードしようとしたらハマった話。
AWSでAPI Gatewayから非同期でLambdaを起動してS3にファイルアップロードしようとしたらハマった話。Takehiro Suemitsu
 
Lambdaのscheduled eventで実現する運用視点のサーバレスパターン
Lambdaのscheduled eventで実現する運用視点のサーバレスパターンLambdaのscheduled eventで実現する運用視点のサーバレスパターン
Lambdaのscheduled eventで実現する運用視点のサーバレスパターンJin k
 
20160312 Jaws Days 2016 API Gateway+Lambda
20160312 Jaws Days 2016 API Gateway+Lambda20160312 Jaws Days 2016 API Gateway+Lambda
20160312 Jaws Days 2016 API Gateway+LambdaKazuki Ueki
 
AWS LambdaとDynamoDBがこんなにツライはずがない #ssmjp
AWS LambdaとDynamoDBがこんなにツライはずがない #ssmjpAWS LambdaとDynamoDBがこんなにツライはずがない #ssmjp
AWS LambdaとDynamoDBがこんなにツライはずがない #ssmjpMasahiro NAKAYAMA
 
AWS Lambdaで作るクローラー/スクレイピング
AWS Lambdaで作るクローラー/スクレイピングAWS Lambdaで作るクローラー/スクレイピング
AWS Lambdaで作るクローラー/スクレイピングTakuro Sasaki
 
Elixir Meetup #1 Loggerの構造と拡張
Elixir Meetup #1 Loggerの構造と拡張Elixir Meetup #1 Loggerの構造と拡張
Elixir Meetup #1 Loggerの構造と拡張Sugawara Genki
 
Amazon AlexaとServerless
Amazon AlexaとServerlessAmazon AlexaとServerless
Amazon AlexaとServerlessJun Ichikawa
 
[Sumo Logic x AWS 共催セミナー_20190829] Sumo Logic on AWS -AWS を活用したログ分析とセキュリティモニ...
[Sumo Logic x AWS 共催セミナー_20190829] Sumo Logic on AWS  -AWS を活用したログ分析とセキュリティモニ...[Sumo Logic x AWS 共催セミナー_20190829] Sumo Logic on AWS  -AWS を活用したログ分析とセキュリティモニ...
[Sumo Logic x AWS 共催セミナー_20190829] Sumo Logic on AWS -AWS を活用したログ分析とセキュリティモニ...Takanori Ohba
 
メール受信も API Gateway と Lambda で!〜サービス連携でPaaSを拡張〜
メール受信も API Gateway と Lambda で!〜サービス連携でPaaSを拡張〜メール受信も API Gateway と Lambda で!〜サービス連携でPaaSを拡張〜
メール受信も API Gateway と Lambda で!〜サービス連携でPaaSを拡張〜宗 大栗
 
AWS Lambda のご紹介 2015 JAWS沖縄
AWS Lambda のご紹介 2015 JAWS沖縄AWS Lambda のご紹介 2015 JAWS沖縄
AWS Lambda のご紹介 2015 JAWS沖縄Toshiaki Enami
 
EC2上のWordPressをShifterに移行してみた!
 EC2上のWordPressをShifterに移行してみた! EC2上のWordPressをShifterに移行してみた!
EC2上のWordPressをShifterに移行してみた!Eiji KOMINAMI
 
serverless framework + AWS Lambda with Python
serverless framework + AWS Lambda with Pythonserverless framework + AWS Lambda with Python
serverless framework + AWS Lambda with Pythonmasahitojp
 
第18回 jaws ug札幌 勉強会 やってみたで終わらないlambdaな話
第18回 jaws ug札幌 勉強会 やってみたで終わらないlambdaな話第18回 jaws ug札幌 勉強会 やってみたで終わらないlambdaな話
第18回 jaws ug札幌 勉強会 やってみたで終わらないlambdaな話Hiroyuki Hiki
 

Tendances (20)

20150908 ”時間の流れ” という無限リストを扱うAWS Lambda
20150908 ”時間の流れ” という無限リストを扱うAWS Lambda20150908 ”時間の流れ” という無限リストを扱うAWS Lambda
20150908 ”時間の流れ” という無限リストを扱うAWS Lambda
 
AWS Lambdaによるサーバレスアーキテクチャの基本に触れてみよう!【kintone & AWS ハンズオン祭り2015秋 B-2】
AWS Lambdaによるサーバレスアーキテクチャの基本に触れてみよう!【kintone & AWS ハンズオン祭り2015秋 B-2】AWS Lambdaによるサーバレスアーキテクチャの基本に触れてみよう!【kintone & AWS ハンズオン祭り2015秋 B-2】
AWS Lambdaによるサーバレスアーキテクチャの基本に触れてみよう!【kintone & AWS ハンズオン祭り2015秋 B-2】
 
はじめてのAWS Lambda
はじめてのAWS LambdaはじめてのAWS Lambda
はじめてのAWS Lambda
 
Lambdaによるクラウド型言語の実装
Lambdaによるクラウド型言語の実装Lambdaによるクラウド型言語の実装
Lambdaによるクラウド型言語の実装
 
Reco choku tech night #09 -reinvent2018報告会-
Reco choku tech night #09 -reinvent2018報告会-Reco choku tech night #09 -reinvent2018報告会-
Reco choku tech night #09 -reinvent2018報告会-
 
AWSでAPI Gatewayから非同期でLambdaを起動してS3にファイルアップロードしようとしたらハマった話。
AWSでAPI Gatewayから非同期でLambdaを起動してS3にファイルアップロードしようとしたらハマった話。AWSでAPI Gatewayから非同期でLambdaを起動してS3にファイルアップロードしようとしたらハマった話。
AWSでAPI Gatewayから非同期でLambdaを起動してS3にファイルアップロードしようとしたらハマった話。
 
Lambdaのscheduled eventで実現する運用視点のサーバレスパターン
Lambdaのscheduled eventで実現する運用視点のサーバレスパターンLambdaのscheduled eventで実現する運用視点のサーバレスパターン
Lambdaのscheduled eventで実現する運用視点のサーバレスパターン
 
Tune Up AWS Lambda
Tune Up AWS LambdaTune Up AWS Lambda
Tune Up AWS Lambda
 
20160312 Jaws Days 2016 API Gateway+Lambda
20160312 Jaws Days 2016 API Gateway+Lambda20160312 Jaws Days 2016 API Gateway+Lambda
20160312 Jaws Days 2016 API Gateway+Lambda
 
AWS LambdaとDynamoDBがこんなにツライはずがない #ssmjp
AWS LambdaとDynamoDBがこんなにツライはずがない #ssmjpAWS LambdaとDynamoDBがこんなにツライはずがない #ssmjp
AWS LambdaとDynamoDBがこんなにツライはずがない #ssmjp
 
AWS Lambdaで作るクローラー/スクレイピング
AWS Lambdaで作るクローラー/スクレイピングAWS Lambdaで作るクローラー/スクレイピング
AWS Lambdaで作るクローラー/スクレイピング
 
俺のLambda
俺のLambda俺のLambda
俺のLambda
 
Elixir Meetup #1 Loggerの構造と拡張
Elixir Meetup #1 Loggerの構造と拡張Elixir Meetup #1 Loggerの構造と拡張
Elixir Meetup #1 Loggerの構造と拡張
 
Amazon AlexaとServerless
Amazon AlexaとServerlessAmazon AlexaとServerless
Amazon AlexaとServerless
 
[Sumo Logic x AWS 共催セミナー_20190829] Sumo Logic on AWS -AWS を活用したログ分析とセキュリティモニ...
[Sumo Logic x AWS 共催セミナー_20190829] Sumo Logic on AWS  -AWS を活用したログ分析とセキュリティモニ...[Sumo Logic x AWS 共催セミナー_20190829] Sumo Logic on AWS  -AWS を活用したログ分析とセキュリティモニ...
[Sumo Logic x AWS 共催セミナー_20190829] Sumo Logic on AWS -AWS を活用したログ分析とセキュリティモニ...
 
メール受信も API Gateway と Lambda で!〜サービス連携でPaaSを拡張〜
メール受信も API Gateway と Lambda で!〜サービス連携でPaaSを拡張〜メール受信も API Gateway と Lambda で!〜サービス連携でPaaSを拡張〜
メール受信も API Gateway と Lambda で!〜サービス連携でPaaSを拡張〜
 
AWS Lambda のご紹介 2015 JAWS沖縄
AWS Lambda のご紹介 2015 JAWS沖縄AWS Lambda のご紹介 2015 JAWS沖縄
AWS Lambda のご紹介 2015 JAWS沖縄
 
EC2上のWordPressをShifterに移行してみた!
 EC2上のWordPressをShifterに移行してみた! EC2上のWordPressをShifterに移行してみた!
EC2上のWordPressをShifterに移行してみた!
 
serverless framework + AWS Lambda with Python
serverless framework + AWS Lambda with Pythonserverless framework + AWS Lambda with Python
serverless framework + AWS Lambda with Python
 
第18回 jaws ug札幌 勉強会 やってみたで終わらないlambdaな話
第18回 jaws ug札幌 勉強会 やってみたで終わらないlambdaな話第18回 jaws ug札幌 勉強会 やってみたで終わらないlambdaな話
第18回 jaws ug札幌 勉強会 やってみたで終わらないlambdaな話
 

Similaire à Transfer for sftp 20181212

FluentdとRedshiftの素敵な関係
FluentdとRedshiftの素敵な関係FluentdとRedshiftの素敵な関係
FluentdとRedshiftの素敵な関係moai kids
 
LambdaとMobileの美味しいかもしれない関係
LambdaとMobileの美味しいかもしれない関係LambdaとMobileの美味しいかもしれない関係
LambdaとMobileの美味しいかもしれない関係Hiraku Komuro
 
Leap MotionとLambdaで「第九」を鳴らしてみる
Leap MotionとLambdaで「第九」を鳴らしてみるLeap MotionとLambdaで「第九」を鳴らしてみる
Leap MotionとLambdaで「第九」を鳴らしてみるTsuyoshi Seino
 
Programming AWS with Perl at YAPC::Asia 2013
Programming AWS with Perl at YAPC::Asia 2013Programming AWS with Perl at YAPC::Asia 2013
Programming AWS with Perl at YAPC::Asia 2013Yasuhiro Horiuchi
 
Bay Area Startup Report - IVS CTO Night & Day in Miyazaki
Bay Area Startup Report - IVS CTO Night & Day in MiyazakiBay Area Startup Report - IVS CTO Night & Day in Miyazaki
Bay Area Startup Report - IVS CTO Night & Day in MiyazakiEiji Shinohara
 
AWS SAMで始めるサーバーレスアプリケーション開発
AWS SAMで始めるサーバーレスアプリケーション開発AWS SAMで始めるサーバーレスアプリケーション開発
AWS SAMで始めるサーバーレスアプリケーション開発真吾 吉田
 
re:invent2018 総ざらえ
re:invent2018 総ざらえre:invent2018 総ざらえ
re:invent2018 総ざらえ真乙 九龍
 
Observability, Service Mesh and Microservices
Observability, Service Mesh and MicroservicesObservability, Service Mesh and Microservices
Observability, Service Mesh and MicroservicesTaiki
 
Alexaスキルを作ろう
Alexaスキルを作ろうAlexaスキルを作ろう
Alexaスキルを作ろう真吾 吉田
 
C# CloudScript Azure Functions との連携
C# CloudScript Azure Functions との連携C# CloudScript Azure Functions との連携
C# CloudScript Azure Functions との連携YutoNishine
 
Anchors Aweigh!! - re:Invent報告@re:Port 2016 大阪
Anchors Aweigh!! - re:Invent報告@re:Port 2016 大阪Anchors Aweigh!! - re:Invent報告@re:Port 2016 大阪
Anchors Aweigh!! - re:Invent報告@re:Port 2016 大阪真吾 吉田
 
認証/認可が実現する安全で高速分析可能な分析処理基盤
認証/認可が実現する安全で高速分析可能な分析処理基盤認証/認可が実現する安全で高速分析可能な分析処理基盤
認証/認可が実現する安全で高速分析可能な分析処理基盤Masahiro Kiura
 
Architecting on Alibaba Cloud - 超基礎編 -
Architecting on Alibaba Cloud - 超基礎編 -Architecting on Alibaba Cloud - 超基礎編 -
Architecting on Alibaba Cloud - 超基礎編 -真吾 吉田
 
May the FaaS be with us!!
May the FaaS be with us!!May the FaaS be with us!!
May the FaaS be with us!!真吾 吉田
 
今からでも間に合う!インフラ自動化超入門 @渋谷
今からでも間に合う!インフラ自動化超入門 @渋谷今からでも間に合う!インフラ自動化超入門 @渋谷
今からでも間に合う!インフラ自動化超入門 @渋谷Daigou Harada
 
MySQL→Aurora移行セミナー
MySQL→Aurora移行セミナーMySQL→Aurora移行セミナー
MySQL→Aurora移行セミナー真吾 吉田
 

Similaire à Transfer for sftp 20181212 (20)

FluentdとRedshiftの素敵な関係
FluentdとRedshiftの素敵な関係FluentdとRedshiftの素敵な関係
FluentdとRedshiftの素敵な関係
 
LambdaとMobileの美味しいかもしれない関係
LambdaとMobileの美味しいかもしれない関係LambdaとMobileの美味しいかもしれない関係
LambdaとMobileの美味しいかもしれない関係
 
Leap MotionとLambdaで「第九」を鳴らしてみる
Leap MotionとLambdaで「第九」を鳴らしてみるLeap MotionとLambdaで「第九」を鳴らしてみる
Leap MotionとLambdaで「第九」を鳴らしてみる
 
AWS小ネタ集
AWS小ネタ集AWS小ネタ集
AWS小ネタ集
 
Programming AWS with Perl at YAPC::Asia 2013
Programming AWS with Perl at YAPC::Asia 2013Programming AWS with Perl at YAPC::Asia 2013
Programming AWS with Perl at YAPC::Asia 2013
 
Bay Area Startup Report - IVS CTO Night & Day in Miyazaki
Bay Area Startup Report - IVS CTO Night & Day in MiyazakiBay Area Startup Report - IVS CTO Night & Day in Miyazaki
Bay Area Startup Report - IVS CTO Night & Day in Miyazaki
 
AWS SAMで始めるサーバーレスアプリケーション開発
AWS SAMで始めるサーバーレスアプリケーション開発AWS SAMで始めるサーバーレスアプリケーション開発
AWS SAMで始めるサーバーレスアプリケーション開発
 
re:invent2018 総ざらえ
re:invent2018 総ざらえre:invent2018 総ざらえ
re:invent2018 総ざらえ
 
Serverless for VUI
Serverless for VUIServerless for VUI
Serverless for VUI
 
OpenStack API
OpenStack APIOpenStack API
OpenStack API
 
Observability, Service Mesh and Microservices
Observability, Service Mesh and MicroservicesObservability, Service Mesh and Microservices
Observability, Service Mesh and Microservices
 
Alexaスキルを作ろう
Alexaスキルを作ろうAlexaスキルを作ろう
Alexaスキルを作ろう
 
C# CloudScript Azure Functions との連携
C# CloudScript Azure Functions との連携C# CloudScript Azure Functions との連携
C# CloudScript Azure Functions との連携
 
Anchors Aweigh!! - re:Invent報告@re:Port 2016 大阪
Anchors Aweigh!! - re:Invent報告@re:Port 2016 大阪Anchors Aweigh!! - re:Invent報告@re:Port 2016 大阪
Anchors Aweigh!! - re:Invent報告@re:Port 2016 大阪
 
認証/認可が実現する安全で高速分析可能な分析処理基盤
認証/認可が実現する安全で高速分析可能な分析処理基盤認証/認可が実現する安全で高速分析可能な分析処理基盤
認証/認可が実現する安全で高速分析可能な分析処理基盤
 
Architecting on Alibaba Cloud - 超基礎編 -
Architecting on Alibaba Cloud - 超基礎編 -Architecting on Alibaba Cloud - 超基礎編 -
Architecting on Alibaba Cloud - 超基礎編 -
 
May the FaaS be with us!!
May the FaaS be with us!!May the FaaS be with us!!
May the FaaS be with us!!
 
今からでも間に合う!インフラ自動化超入門 @渋谷
今からでも間に合う!インフラ自動化超入門 @渋谷今からでも間に合う!インフラ自動化超入門 @渋谷
今からでも間に合う!インフラ自動化超入門 @渋谷
 
AWS Lambda + Go
AWS Lambda + GoAWS Lambda + Go
AWS Lambda + Go
 
MySQL→Aurora移行セミナー
MySQL→Aurora移行セミナーMySQL→Aurora移行セミナー
MySQL→Aurora移行セミナー
 

Transfer for sftp 20181212