Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
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
310
GitLab Duo with Amazon Q の機能実装を試してみた
k1nakayama
0
160
GitLabを活用したDevSecOps
k1nakayama
1
460
GitLabを活用したクラウドネイティブ アプリケーションセキュリティ
k1nakayama
0
190
サーバーレス開発を円滑に進めるための実践DevSecOps
k1nakayama
1
540
大容量データをDynamoDBで扱う際のMomento導入検討
k1nakayama
0
850
Deep Dive on DevOps for Serverless Applications
k1nakayama
0
360
Access to multiple microservices on AWS
k1nakayama
3
1.5k
Other Decks in Technology
See All in Technology
SQLだけでマイグレーションしたい!
makki_d
0
1.2k
AIエージェント開発と活用を加速するワークフロー自動生成への挑戦
shibuiwilliam
5
850
Snowflake導入から1年、LayerXのデータ活用の現在 / One Year into Snowflake: How LayerX Uses Data Today
civitaspo
0
2.4k
ハッカソンから社内プロダクトへ AIエージェント「ko☆shi」開発で学んだ4つの重要要素
sonoda_mj
6
1.7k
Authlete で実装する MCP OAuth 認可サーバー #CIMD の実装を添えて
watahani
0
180
Oracle Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
2
200
ソフトウェアエンジニアとAIエンジニアの役割分担についてのある事例
kworkdev
PRO
0
250
20251222_サンフランシスコサバイバル術
ponponmikankan
2
140
Strands Agents × インタリーブ思考 で変わるAIエージェント設計 / Strands Agents x Interleaved Thinking AI Agents
takanorig
5
2.1k
日本Rubyの会: これまでとこれから
snoozer05
PRO
6
240
[Neurogica] 採用ポジション/ Recruitment Position
neurogica
1
120
Amazon Connect アップデート! AIエージェントにMCPツールを設定してみた!
ysuzuki
0
140
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
97
6.4k
Amusing Abliteration
ianozsvald
0
69
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.3k
Writing Fast Ruby
sferik
630
62k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
980
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
74
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
81
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
130
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
720
AI: The stuff that nobody shows you
jnunemaker
PRO
1
20
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.