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
ネットワーク初心者でも使いやすい!VPC Latticeをご紹介します
Search
kimura.yuta
May 29, 2024
Technology
0
450
ネットワーク初心者でも使いやすい!VPC Latticeをご紹介します
kimura.yuta
May 29, 2024
Tweet
Share
Other Decks in Technology
See All in Technology
初めてのPostgreSQLメジャーバージョンアップ
kkato1
0
370
コード品質向上で得られる効果と実践的取り組み
ham0215
1
200
LINE Notify互換のボットを作った話
kenichirokimura
0
170
Why Go?
xpmatteo
0
130
一人QA時代が終わり、 QAチームが立ち上がった話
ma_cho29
0
280
ソフトウェア開発現代史: なぜ日本のソフトウェア開発は「滝」なのか?製造業の成功体験とのギャップ #jassttokyo
takabow
2
1.4k
AWS のポリシー言語 Cedar を活用した高速かつスケーラブルな認可技術の探求 #phperkaigi / PHPerKaigi 2025
ytaka23
7
1.5k
DevinはクラウドエンジニアAIになれるのか!? 実践的なガードレール設計/devin-can-become-a-cloud-engineer-ai-practical-guardrail-design
tomoki10
3
1.3k
グループポリシー再確認
murachiakira
0
160
SSH公開鍵認証による接続 / Connecting with SSH Public Key Authentication
kaityo256
PRO
2
210
移行できそうでやりきれなかった 10年超えのシステムを葬るための戦略
ryu955
2
200
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
20k
Featured
See All Featured
Thoughts on Productivity
jonyablonski
69
4.5k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
GraphQLの誤解/rethinking-graphql
sonatard
70
10k
Raft: Consensus for Rubyists
vanstee
137
6.8k
Optimizing for Happiness
mojombo
377
70k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Docker and Python
trallard
44
3.3k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
Code Reviewing Like a Champion
maltzj
521
39k
Transcript
ネットワーク初心者でも使いやすい! VPC Latticeをご紹介します
自己紹介 木村優太 (きむらゆうた) CM入社:2023年3月 オフィス:日比谷オフィス 所属:AWS事業本部コンサルティング部 趣味:野球観戦・カラオケ
Latticeの概要 • VPC LatticeはVPC向けのリバースプロキシサービスで、 VPCを跨いだ通信を可能 にする • HTTP、HTTPS、gRPCに対応しており、利用側のVPCと提供側のVPCのCIDRが 重複していてもアクセスができるようになっている ◦
IPv4、IPv6についても意識しなくて接続可 ◦ RAMで共有することでクロスアカウントでの接続も可能 • 但しリージョンを跨ぐ通信に関しては対応していない • ルートテーブルの設定などネットワークに関わる部分は自動で作成してくれる
想定ユースケース • 同アカウント内で別VPCに存在しているVPC Lambdaに対してアクセスしたい • 自社のOrganizations内のアカウント間でEC2に対してアクセスをしたい • サービスを連携している他社に対して InternalALBへのアクセスを提供したい
Latticeの全体像
Latticeの主要コンポーネントについて
サービスネットワーク • サービスネットワークはVPCとサービスを結びつけるハブの役割のリソース • サービスネットワーク1つあたりVPCとサービスそれぞれ500個まで関連付けることが 可能 • 但しVPCからは関連付けられるサービスネットワークは 1つのみ •
IAM認証の設定やログの設定を行うことができる
サービス • ドメインが払い出され、Latticeへのアクセスを行う際はこのリソースに対してアクセス を行う。カスタムドメインも設定可能 • ALBと同様にリスナーを設定でき、ルールごとにアクセスを振り分けることができる。 ◦ 設定できる条件はパスとメソッドのみで固定レスポンスは 404と500のみで固定 メッセージ
• 時間単位で費用が発生する • IAM認証の設定やログの設定を行うことができる
ターゲットグループ • サービスのリスナーに設定する転送ルールのアクション先を設定できる • ターゲットグループの対象にできるリソースは以下 ◦ IP ◦ EC2 ◦
VPC Lambda ◦ Internal ALB • サービスとターゲットグループは同アカウント内に存在している必要がある
設計パターン
セキュリティについて • Latticeのセキュリティには4つのレイヤーがある ◦ サービスとサービスネットワークの関連付け ◦ VPC とサービスネットワーク間の関連付けにセキュリティグループをアタッチす る ◦
サービスにIAM認証をアタッチする ◦ サービスネットワークにIAM認証をアタッチする 参考:https://docs.aws.amazon.com/ja_jp/vpc-lattice/latest/ug/what-is-vpc-lattice.html#vpc-service-network-features
IAM認証を活かした設計例
IAM認証を活かした設計例のメリデメ • メリット ◦ サービスネットワークを集中管理することができ、責任分界点を明確にしやすい ◦ 特定のリソースにのみ特定のサービスのアクセスを許可するなど細やかな制御 ができる • デメリット
◦ 一部のリソースの指定方法を除き SigV4署名を行う必要がある ◦ 大規模になればなるほどサービス側に定義する、 IAM認証のポリシーが複雑に なる
サービスとVPCの関連付けを活かした設計例
サービスとVPCの関連付けを活かした設計例のメリデメ • メリット ◦ 経路の限定が関連付けのみとなるので容易で分かりやすい ◦ IAM認証の設定による、署名の付与などのアプリ側の改修が不要 • デメリット ◦
サービスネットワークを数多く作成することになるので、責任分界点を決めにく い ◦ アクセスする側のVPC内の各リソースから特定のサービスに対してのみアクセ ス可能にするなどの細かい制御ができない
構築する際のつまづきポイント
SGでLatticeからのアクセスを許可する アクセスを受け付ける側のリソースにて、 Latticeからのアクセスを許可する設定が必要になります。 Lattice用のプレフィックスリストが用意されているので、そちらを登録してアクセスを許可してください。
IAM認証を利用する場合には権限とSigV4署名が必要 IAM認証を利用する場合、一部を除きアクセスをする側に Latticeの実行権限とSigV4の署名が必要になりま す。 どちらかが欠けると実行エラーとなってしまいますので注意してください。 参考:https://dev.classmethod.jp/articles/lattice-iam-cert/ https://docs.aws.amazon.com/ja_jp/vpc-lattice/latest/ug/sigv4-authenticated-requests.html
ご清聴いただきありがとうございました。
参考
VPCに関連付けられるサービスネットワークは一つのみ VPCに複数のサービスネットワークを関連づけることはできません。 VPCからアクセスしたいサービスを関連づけているサービスネットワークに関連づけるようにしてください。
実現できない例
実現できる例
実現できる例