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
190
GitLab Ultimateを用いたDevSecOps実践事例
GitLab Dev Ops Dive で登壇したスライド
k1nakayama
December 14, 2023
Tweet
Share
More Decks by k1nakayama
See All by k1nakayama
GitLab Duo with Amazon Q の機能実装を試してみた
k1nakayama
0
110
GitLabを活用したDevSecOps
k1nakayama
1
390
GitLabを活用したクラウドネイティブ アプリケーションセキュリティ
k1nakayama
0
160
サーバーレス開発を円滑に進めるための実践DevSecOps
k1nakayama
1
500
大容量データをDynamoDBで扱う際のMomento導入検討
k1nakayama
0
780
Deep Dive on DevOps for Serverless Applications
k1nakayama
0
330
Access to multiple microservices on AWS
k1nakayama
3
1.4k
Other Decks in Technology
See All in Technology
Observability в PHP без боли. Олег Мифле, тимлид Altenar
lamodatech
0
240
~宇宙最速~2025年AWS Summit レポート
satodesu
1
630
生成AIでwebアプリケーションを作ってみた
tajimon
2
110
kubellが挑むBPaaSにおける、人とAIエージェントによるサービス開発の最前線と技術展望
kubell_hr
1
390
AIにどこまで任せる?実務で使える(かもしれない)AIエージェント設計の考え方
har1101
3
1.2k
Cloud Native Scalability for Internal Developer Platforms
hhiroshell
2
490
Agentic Workflowという選択肢を考える
tkikuchi1002
1
220
Agentic DevOps時代の生存戦略
kkamegawa
0
780
Uniadex__公開版_20250617-AIxIoTビジネス共創ラボ_ツナガルチカラ_.pdf
iotcomjpadmin
0
140
Definition of Done
kawaguti
PRO
6
440
工具人的一生: 開發很多 AI 工具讓我 慵懶過一生
line_developers_tw
PRO
0
1k
DenoとJSRで実現する最速MCPサーバー開発記 / Building MCP Servers at Lightning Speed with Deno and JSR
yamanoku
1
230
Featured
See All Featured
Statistics for Hackers
jakevdp
799
220k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
32
5.9k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.3k
GitHub's CSS Performance
jonrohan
1031
460k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Unsuck your backbone
ammeep
671
58k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Being A Developer After 40
akosma
90
590k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Writing Fast Ruby
sferik
628
61k
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.