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
220
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
340
GitLab Duo with Amazon Q の機能実装を試してみた
k1nakayama
0
170
GitLabを活用したDevSecOps
k1nakayama
1
470
GitLabを活用したクラウドネイティブ アプリケーションセキュリティ
k1nakayama
0
200
サーバーレス開発を円滑に進めるための実践DevSecOps
k1nakayama
1
550
大容量データをDynamoDBで扱う際のMomento導入検討
k1nakayama
0
870
Deep Dive on DevOps for Serverless Applications
k1nakayama
0
370
Access to multiple microservices on AWS
k1nakayama
3
1.6k
Other Decks in Technology
See All in Technology
Webアクセシビリティ技術と実装の実際
tomokusaba
0
210
ソフトウェアアーキテクトのための意思決定術: Create Decision Readiness—The Real Skill Behind Architectural Decision
snoozer05
PRO
30
9k
OSSで構築するIT基盤管理実践事例: NetBox・Snipe-IT・FreeRADIUS+PrivacyIDEA / Practical Case Studies of IT Infrastructure Management Using OSS
nttcom
0
200
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1.1k
Claude Cowork Plugins を読む - Skills駆動型業務エージェント設計の実像と構造
knishioka
0
260
Eight Engineering Unit 紹介資料
sansan33
PRO
1
6.9k
Kiro のクレジットを使い切る!
otanikohei2023
0
110
Exadata Fleet Update
oracle4engineer
PRO
0
1.3k
型を書かないRuby開発への挑戦
riseshia
0
190
バクラクのSREにおけるAgentic AIへの挑戦/Our Journey with Agentic AI
taddy_919
2
1k
Master Dataグループ紹介資料
sansan33
PRO
1
4.4k
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.4k
Featured
See All Featured
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.1k
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
62
51k
Music & Morning Musume
bryan
47
7.1k
We Have a Design System, Now What?
morganepeng
55
8k
Navigating Weather and Climate Data
rabernat
0
130
Building the Perfect Custom Keyboard
takai
2
710
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.1k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
WCS-LA-2024
lcolladotor
0
470
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
120
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.