Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
マルチクラウドを使い倒すスタートアップの管理とサービス開発の裏側
Search
k.harada
February 25, 2021
Technology
0
790
マルチクラウドを使い倒すスタートアップの管理とサービス開発の裏側
AWS Startup Tech Meetup Online#2 LT資料
k.harada
February 25, 2021
Tweet
Share
Other Decks in Technology
See All in Technology
複雑な構成要素を持つUIとの向き合い方 〜新・支出グラフでの実例〜 / B43 TECH TALK
nakamuuu
0
140
推しは推せるときに推せ! プロダクトにフィードバックしていこう
nakasho
0
310
web-application-security
matsuihidetoshi
0
170
On Your Data を超えていく!
hirotomotaguchi
2
680
Cracking the KubeCon CfP
inductor
2
240
DevOpsメトリクスとアウトカムの接続にトライ!開発プロセスを通して計測できるメトリクスの活用方法
ham0215
2
240
長期間TiDBを使ってきた話 @ 私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT / Experiences with TiDB Over Time
chibiegg
2
890
VSCodeの拡張機能を作っている話
ebarakazuhiro
1
390
よく聞くけど使ったことないソフトウェアNo.1 KafkaとSnowflake
foursue
4
360
Gitlab本から学んだこと - そーだいなるプレイバック / gitlab-book
soudai
4
380
ServiceNow Knowledge Learning Rise up
manarobot
0
210
いつか使うかも貯金してたらめちゃめちゃ機能が増えてた話
riyaamemiya
0
140
Featured
See All Featured
Infographics Made Easy
chrislema
238
18k
Fireside Chat
paigeccino
21
2.6k
Producing Creativity
orderedlist
PRO
337
39k
The MySQL Ecosystem @ GitHub 2015
samlambert
243
12k
Testing 201, or: Great Expectations
jmmastey
28
6.4k
Learning to Love Humans: Emotional Interface Design
aarron
267
39k
Large-scale JavaScript Application Architecture
addyosmani
504
110k
The Illustrated Children's Guide to Kubernetes
chrisshort
31
46k
The Mythical Team-Month
searls
216
42k
Designing with Data
zakiwarfel
96
4.8k
Designing the Hi-DPI Web
ddemaree
276
33k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
30
6k
Transcript
マルチクラウドを使い倒すスタートアップの AWS管理とサービス開発の裏側 株式会社DATAFLUCT 原⽥ ⼀樹
2 原⽥ ⼀樹 • (株)DATAFLUCT ‒ CTO 兼 PO/PdM ◦
インフラ・アプリ・データ分析をカバーする アーキテクト ◦ マルチクラウドAutoMLサービスのプロダク ト責任者とDX案件のテクニカルリードを兼任 • 経歴 ◦ AWS インテグレーター ◦ IBM Bluemix Community Leader ◦ Microsoft Apps Consultant ◦ Azure Technical Trainer
3 会社概要 沿⾰ ձ໊ࣾ גࣜձࣾ%"5"'-6$5 ʢσʔλϑϥΫτʣ ࢿຊۚ ສԁ ઃཱ
݄ ॅॴ ˟౦ژઍా۠߿ொ '-*'6--)6# ݄ %"5"'-6$5ϓϩδΣΫτ։࢝ ݄ %"5"'-6$5ۀ ݄ +"9" ϕϯνϟʔೝఆ ݄ ૿ࢿɺऔక$'0ʹࡉాࢯ͕ब ݄ ΤϯδΣϧϥϯυͰສԁௐୡ ݄ σοτͱΤΫΠςΟͰສԁͷՃௐୡ
DATAFLUCTとは 4 データサイエンス事業開発集団 Vertical SaaS SaaS開発 Platfrom Vertical Data Data
Platform
DATAFLUCTとは 5 創業2年で⾃社プロダクトを21本保有(未ローンチ分含む) 商圏分析 フードロス需 要予測 ⾃動発注 プライシング 顧客導線 解析
サイネージ 広告最適化 コンパクトシ ティ 収穫予測 衛星画像解析 ルート最適化 ダイナミック マップ CO2排出 不動産投資 ⾷品 MD⽀援 にぎわう 街づくり 移動販売 SNS広告 最適化 企業業績予測 再⽣ エネルギー ハザード AutoML PaaS 脳波と⽣産性 new new new new new 開発中 開発中 開発中 開発中 開発中 開発中 開発中
マルチクラウドAutoML 6 マルチクラウドAutoMLで⾼精度なモデル構築を 低コスト・迅速に実現する機械学習プラットフォーム
マルチクラウドを使い倒すスタートアップの AWS管理とサービス開発の裏側 − 統合認証環境とセキュリティ −
プロダクト共通のデータ基盤 8 【脅威 1】なりすまし SIEM * による リスクイベント分析 【脅威 2】改ざん
【脅威 3】否認 【脅威 4】情報漏洩 【脅威 6】特権の昇格 【脅威 5】サービス拒否 通信・蓄積データ暗号化 厳密なアクセス制御 ログの改ざんの防⽌ 厳密なアクセスログ管理 多層防御による不正防⽌ 運営メンバーの権限制御 DDoS 攻撃への対策 APIの流量制限 * Security Information and Event Management 特権ID管理 最⼩権限の徹底による 被害の局地化 外部からの攻撃防⽌だけでなく、内部の不正利⽤を仕組みで制御する ゼロ・トラストセキュリティ設計を推奨
ゼロ・トラストの実現に必要な要素 9 ID管理・権限制御 ・認証・認可により、権限を与えた「個⼈」を特定した上で許可を与える ・1 User・1 ID になるように運⽤することで「誰が・何を・いつ⾏ったのか」を特定 ・許可を与えていない悪意のある社員・外部からの不正アクセス者の操作を制限する デバイス・サーバー管理
・マルウェア対策による既知の攻撃対策 ・未知の攻撃に対しては SIEM (Security Information and Event Management) を利⽤し た収集したログからのふるまい検知で対策 ログ収集・監査 ・すべての通信ログを収集し、不正の発⽣を検知して即座に対策(SIEM) ・監査ログとして⻑期保存しておくことで、不正アクセス者の「否認」を防⽌
IDのベースをどこにするか? 10 Azure Active Directory Google Cloud Identity メインで利⽤するコミュニケーションツール⽤のIDをベースに 統合ID認証環境を⽤意することで複数のID管理から解放される
≒ 誰がどこにアクセスしているのかを識別しやすくなる
IDのベースをどこにするか? - DATAFLUCTの例 11 Azure Active Directory Google Cloud Identity
DATAFLUCT メンバー ID同期 Platform ⽤ アカウント Organizations Microsoft Azure Platform ⽤ サブスクリプション Product xx ⽤ サブスクリプション Google Cloud Platform Platform ⽤ プロジェクト Product xx ⽤ プロジェクト Product xx ⽤ アカウント AWS SSO Azure Portal にアクセスする際は、Google Cloud Identity のユーザー ID / PW でサインイン Google Cloud Console にアクセスする際は、Google Cloud Identity のユーザー ID / PW でサインイン AWS SSO ポータルに Google Cloud Identity のユーザー ID と 独⾃管理PW でサインイン ※ Azure AD から AWS SSO への ID 同期は可能だが、AWS SSO → Azure AD → Google Cloud Identity という⼆重 フェデレーション構成となりエラーとなるため、ID 同期の構成は実施しない サインイン サインイン サインイン Amazon Web Services Google Cloud Identityからの ID同期機能は未 サポート (サポート後に 実装検討) Federation
IDのベースをどこにするか? - 参考リソース 12 ・AWS 公式:G Suite アカウントを用いた AWS へのシングルサインオン
・AWS 公式:AWS Single Sign-On の ID ソースとしての Azure AD の接続 ・GCP 公式:GCP と Azure Active Directory の連携 ・Azure 公式:Azure Active Directory と Google Cloud Connector の統合
AWS環境での脅威検知 13 GuardDuty Amazon Macie CloudWatch Logs Amazon S3 (DataLake)
CloudTrail VPC Flow logs CloudWatch Insights / Alarm オブジェクトレベルの アクセスログの記録 機密情報の 検出・分類・保護 AWSアカウント内 の脅威検知 GuardDuty データソース CloudTrailのログを モニタリング アクセスログの 分析・可視化・アラート AWS Config CloudWatch Events AWS Security Hub 構成情報の 変更を監視 AWS環境のセキュリティと コンプライアンス状態を⼀元表⽰ 脅威イベント・ 変更イベント通知 • GuardDuty : 複数のAWS アカウント内の脅 威を検知・対応 • AWS Config: プラットフォームの設定変更 を検知 • Amazon Macie:データレイクに蓄積して いる機密情報の検出・保護
マルチクラウドを使い倒すスタートアップの AWS管理とサービス開発の裏側 − クロスアカウントアクセス −
複数のAWSアカウントから利⽤するデータ基盤 15 Datalake Platformアカウント プロダクトアカウント データ 投入 社内共通 Rawデータバケット 社内共通
構造化データバケット Crawling ETL Data Catalog登録 データ 投入 プロダクト Rawデータバケット プロダクト 構造化データバケット Crawling ETL Data Catalog登録 クロスアカウント SQL実行 SQL実行結果 保持バケット • AWSアカウントは予算管理単位やプロジェクト単位で分割する • データレイクなど複数のAWSアカウントから利⽤できるように共通化 • クロスアカウントアクセス⽤にGlue Data Catalogを⾃動⽣成する [クロスアカウント⽤変換処理例] ① S3にデータを投⼊ ② S3PUTをトリガーにLambda実⾏ ③ LambdaがETL Jobを実⾏ ④ ETL JobがS3のデータをベースに ⑤ データを変換して別のS3に保存し ⑥ Glue DataCatalogに登録 / 更新 ① ① ② ③ ⑤ ④ ⑥
まとめ • マルチクラウドはいきなり⼿を出すと⼤変 • 世の中にはたくさんのSaaSがあるため、ID統合認証環境 を⽤意すると管理者もユーザーも幸せに • エンジニアには技術選択の⾃由と説明責任を。 ただし ⾃由すぎるとAWSアカウント乱⽴するため、最低限のポ
リシーと共通ルールを設けて楽しいAWSライフを!
⼈材募集中! https://www.wantedly.com/companies/datafluct DATAFLUCT Wantedly