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
GitLab Ultimateを用いたDevSecOps実践事例
Search
k1nakayama
December 14, 2023
Technology
0
210
GitLab Ultimateを用いたDevSecOps実践事例
GitLab Dev Ops Dive で登壇したスライド
k1nakayama
December 14, 2023
Tweet
Share
More Decks by k1nakayama
See All by k1nakayama
Amazon Q Developerを活用したアーキテクチャのリファクタリング
k1nakayama
2
300
GitLab Duo with Amazon Q の機能実装を試してみた
k1nakayama
0
150
GitLabを活用したDevSecOps
k1nakayama
1
450
GitLabを活用したクラウドネイティブ アプリケーションセキュリティ
k1nakayama
0
180
サーバーレス開発を円滑に進めるための実践DevSecOps
k1nakayama
1
530
大容量データをDynamoDBで扱う際のMomento導入検討
k1nakayama
0
830
Deep Dive on DevOps for Serverless Applications
k1nakayama
0
350
Access to multiple microservices on AWS
k1nakayama
3
1.5k
Other Decks in Technology
See All in Technology
身近なCSVを活用する!AWSのデータ分析基盤アーキテクチャ
koosun
0
2.8k
AIエージェントによるエンタープライズ向けスライド検索!
shibuiwilliam
4
630
クレジットカードの不正を防止する技術
yutadayo
17
7.9k
SRE視点で振り返るメルカリのアーキテクチャ変遷と普遍的な考え
foostan
2
430
Redux → Recoil → Zustand → useSyncExternalStore: 状態管理の10年とReact本来の姿
zozotech
PRO
21
8.9k
リアーキテクティングのその先へ 〜品質と開発生産性の壁を越えるプラットフォーム戦略〜 / architecture-con2025
visional_engineering_and_design
0
4.1k
都市スケールAR制作で気をつけること
segur
0
190
ABEMAのCM配信を支えるスケーラブルな分散カウンタの実装
hono0130
4
1k
レガシーで硬直したテーブル設計から変更容易で柔軟なテーブル設計にする
red_frasco
4
460
レガシーシステム刷新における TypeSpec スキーマ駆動開発のすゝめ
tsukuha
0
290
はじめての OSS コントリビューション 〜小さな PR が世界を変える〜
chiroito
4
350
pmconf 2025 大阪「生成AI時代に未来を切り開くためのプロダクト戦略:圧倒的生産性を実現するためのプロダクトサイクロン」 / The Product Cyclone for Outstanding Productivity
yamamuteki
3
1.9k
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Raft: Consensus for Rubyists
vanstee
140
7.2k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
The Pragmatic Product Professional
lauravandoore
36
7k
Mobile First: as difficult as doing things right
swwweet
225
10k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Building a Scalable Design System with Sketch
lauravandoore
463
33k
Into the Great Unknown - MozCon
thekraken
40
2.2k
Docker and Python
trallard
46
3.7k
Code Reviewing Like a Champion
maltzj
527
40k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
Transcript
© 2023, CHARA-WEB Co.,Ltd. All rights reserved. GitLab Ultimateを用いたDevSecOps実践事例 Keiichi
Nakayama Vice General Manager Cloud Partner Group CHARA-WEB Co., Ltd.
© 2023, CHARA-WEB Co.,Ltd. All rights reserved. 自己紹介 • 中山
桂一 ( @k1nakayama ) • 株式会社キャラウェブ クラウドパートナーグループ 副部長 • クラウドインテグレーション事業をリード • AWS Community Builders (Serverless) • AWS x Serverless / GitLab / DevSecOps
© 2023, CHARA-WEB Co.,Ltd. All rights reserved. DevOpsを導入する目的は?
© 2023, CHARA-WEB Co.,Ltd. All rights reserved. DevOpsを導入する目的 Ø チームの生産性向上
要件定義からデリバリーまでのリードタイムを短縮 ソフトウェアの質を向上させ、変更後の障害を低減する Ø セキュリティ対応 デリバリー後のセキュリティインシデントによって手戻りや、信用 失墜を未然に防ぐ Ø ガバナンス対応 ライセンス違反や、適切な承認者による承認のないデリバリーを 防ぐ
© 2023, CHARA-WEB Co.,Ltd. All rights reserved. CI/CDを構築しただけでは生産性は向上しない uCI/CDはビルド、テスト、デプロイ、デリバリーの自動化をする ビルド、テスト、デプロイ、デリバリーに関する時間を最小限にす
ることが出来るため、CI/CDの導入自体は必須 u多くの場合、コードをマージする前までのフェーズに時間が掛 かっている SDLCにおいて改善を検討する場合、設計フェーズでビジネス側 で要件が甘く、固まっていない状態で設計フェーズにきてしまっ たことによる認識合わせの時間や、MRのレビューをアサインし た後、長時間放置されて停滞するなど、CI/CDの前段階に改善 ポイントが見られるケースが多い
© 2023, CHARA-WEB Co.,Ltd. All rights reserved. セキュリティ対応は別にせずシフトレフトする セキュリティへの取り組みを早い段階に組み込み(シフトレフト)、 手戻りを最小限に抑える
セキュリティ診断 セキュリ ティ診断 DevOps DevSecOps 手戻り
© 2023, CHARA-WEB Co.,Ltd. All rights reserved. ガバナンスが効いていないマージは危険 Ø セキュリティテストを実施していたら、常に安全なリリースになっ
ているという勘違い Ø ライセンス違反はリリースした時点でアウト Ø 承認者が承認してしまえば、マージ出来てしまう Ø 問題のあるままのデリバリーは企業の信用失墜リスク
© 2023, CHARA-WEB Co.,Ltd. All rights reserved.
© 2023, CHARA-WEB Co.,Ltd. All rights reserved. DORA Four Keys
u顧客への価値提供のスループットが高いか Ø デプロイ頻度 Ø 変更のリードタイム u安定したデリバリーを続けられているか Ø サービス復旧時間 Ø 変更時の障害率 出典:GitLab Blog
© 2023, CHARA-WEB Co.,Ltd. All rights reserved. バリューストリーム 上記は、とあるプロジェクトのバリューストリーム分析をカスタム設 定により、開発フェーズ毎に分析したものです。
イシューがBacklogに入った後、1日程度後で着手され、そのイ シューは7時間で構築が完了しレビューに移行しています。そして、 レビュー状態が1日経過して、ようやくリリース出来る状態になって いることが分かります。 これを見ることで、このチームは、レビューをもっと早く進められれ ば、市場への価値提供が1日早く改善できることが分かります。
© 2023, CHARA-WEB Co.,Ltd. All rights reserved. 各種セキュリティテスト • SAST等の静的なテストだけではな
く、DAST、API Fuzz Testなど、従 来外部に委託し行っていたような 脆弱性診断を、コードをプッシュす る毎に自動的に実行できる • 脆弱性ダッシュボードで、脆弱性を 一元管理でき、必要に応じてワンク リックでイシュー化できる • 依存関係スキャンで検出した結果 を元にSBOMの出力が行える
© 2023, CHARA-WEB Co.,Ltd. All rights reserved. AIを活用した脆弱性対応 脆弱性として検出される内容は 多種多様なものがあり、セキュ
リティの専門家であっても、その 脆弱性についての説明や対応 方法を全て提示することは難し いです。 GitLabは、AIを活用し、ボタン1 つで脆弱性の説明、脅威の内 容、対応策を説明します
© 2023, CHARA-WEB Co.,Ltd. All rights reserved. セキュリティポリシー、コンプライアンス テスト結果に応じて、特定のライ センスが使用されていることが
検出された場合や、脆弱性が検 出された場合などに、特定の人 や一定のロールを持つ人の承 認を一定数得られなければマー ジできない、といったルールを設 定できます。 また、特定のテストを実行してい なければマージ出来ないという ポリシーも設定できます。
© 2023, CHARA-WEB Co.,Ltd. All rights reserved. 単一プラットフォームだから実現 Ø DORAメトリクス
イシュー管理、CI/CD、インシデント管理が一体となったプラット フォームでないとDORAメトリクスは取得できない Ø 脆弱性管理 コード管理、CI/CD、イシュー管理、脆弱性管理が一体となって いないと、二重管理が発生したり、マージ前に脆弱性の状態を 確認できないまま、マージされてしまう恐れがある Ø ガバナンス テスト結果に応じた承認者の設定や、それらの設定が正しく行 われているかを組織全体を俯瞰して管理
© 2023, CHARA-WEB Co.,Ltd. All rights reserved. まとめ ü DevOpsを進める際は、目的を達成できているかをどの様に判
断するかまで考える ü セキュリティを常に意識したデリバリーをすることは、企業の責 任であり、怠ると信用を失う恐れがあるため、シフトレフトして開 発現場にセキュリティ意識を持たせる ü ガバナンスの効いていないデリバリーは、テストを行わないまま デリバリーしている状態と同じである ü DevSecOpsを単一プラットフォームで進めることができる GitLab(Ultimate)を使うことで、生産性向上とセキュリティを両 立させていくことができる
Accelerate your business with the cloud.