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
全てのエンジニアに伝えたいDevSecOpsのお話(入門)
Search
yuriemori
December 23, 2023
Technology
0
93
全てのエンジニアに伝えたいDevSecOpsのお話(入門)
2023/12/23のコミュニティイベントでLTで登壇させていただいた際の資料です。
DevSecOpsの入門の入門的なお話です。
yuriemori
December 23, 2023
Tweet
Share
More Decks by yuriemori
See All by yuriemori
マルチテナントでのサービスコネクションを使用したAzure DevOps⇔Azure でのデプロイ実践
yuriemori
0
120
Azure DevOpsを活用したマルチチーム開発: ソース管理とセキュアプラクティス
yuriemori
0
170
エンジニアのキャリア開発と自己研鑽について
yuriemori
0
350
忙しい人のためのClean Architecture
yuriemori
1
230
Clean Architecture輪読会チームのチーム開発環境チラ見せ
yuriemori
1
80
AzureDevOpsを使ったScrumの実践_あるある問題への対処方を考えてみた.pdf
yuriemori
1
290
Clean Architectureの輪読会やってみた
yuriemori
0
430
開発未経験で入社してなんとかエンジニアとして自走できるようにやった(やってる)こと
yuriemori
0
530
Other Decks in Technology
See All in Technology
地理空間データ可視化・解析・活用ソリューション Pacific Spatial Solutions (PSS)
pacificspatialsolutions
0
320
Babylon.jsと色々なものを組み合わせる:ブラウザのAPIやガジェットや2D描画ライブラリなど / Babylon.js 勉強会 vol.3
you
PRO
0
140
GrafanaMeetup_AmazonManagedGrafanaのアクセス制御機能とマルチテナント環境下でのアクセス制御について
daitak
0
350
Azureの基本的な権限管理の勉強会
yhana
1
1.6k
「スニダン」開発組織の構造に込めた意図 ~組織作りはパッションや政治ではない!~
rinchsan
4
600
Azure Container Apps + Bicep 〜 こんな感じで運用しています
kaz29
3
600
BPStudyの200回を中心にIT業界を振り返る。そしてこれから
haru860
3
360
実例で紹介するRAG導入時の知見と精度向上の勘所
yamahiro
1
350
Amplify 🩷 Bedrock 〜生成AI入門〜
minorun365
PRO
3
130
LangSmith入門―トレース/評価/プロンプト管理などを担うLLMアプリ開発プラットフォーム
os1ma
5
640
Improve Your Development Workflow with Gemini Code Assist
meteatamel
0
120
GraphQL 成熟度モデルの紹介と、プロダクトに当てはめた事例 / GraphQL maturity model
mh4gf
7
1.4k
Featured
See All Featured
Making Projects Easy
brettharned
109
5.5k
Happy Clients
brianwarren
92
6.4k
Bootstrapping a Software Product
garrettdimon
PRO
302
110k
In The Pink: A Labor of Love
frogandcode
138
21k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
126
32k
Bash Introduction
62gerente
605
210k
What's new in Ruby 2.0
geeforr
337
31k
StorybookのUI Testing Handbookを読んだ
zakiyama
13
4.6k
Rebuilding a faster, lazier Slack
samanthasiow
74
8.2k
Build your cross-platform service in a week with App Engine
jlugia
226
17k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
358
22k
Atom: Resistance is Futile
akmur
260
25k
Transcript
全てのエンジニアに伝えたい DevSecOpsのお話(入門) yuriemori 2023/12/23
Agenda 1. 自己紹介 2. Why DevSecOps Now? 3. ソフトウェアのライフサイクルの中でのDevSecOpsの実践 4.
まとめ
Yurie Mori(森 友梨映) Agile Specialist お仕事 AgileとDevOpsの実践の支援
DevOpsソリューション( Azure DevOps/GitHub )の導入・構築 技術スタック Azure DevOps, GitHub, Azure, .Net, C# Please follow me
Why DevSecOps Now? DevOps • Dev(開発)とOps(運用)がコラボレーションによる 無駄のない(Lean)ソフトウェア開発 • 継続的に顧客に価値を届けるための人、プロセ ス、テクノロジーの集合
DevSecOps • DevOpsの取り組みにおいてセキュリティをどの ように担保するか • DevOpsの実践はソフトウェア開発、デリバリー を高速化するがその中でどのようにセキュリ ティを担保するかが重要になってくる Security/Complianceの担保 +
Maintenance Release Test Build ソフトウェアのライフサイクルの中でのDevSecOpsの 実践(1/3) Plan コラボレーション/ 開発環境の整備 開発
継続的 インテグレーション(CI) ユーザーフィードバック の収集・改善 ソースコード 管理計画 テスト 自動化 継続的 デリバリー(CD) パフォーマンス監視と最 適化 サポート提供/ トラブルシューティング コラボレーション/開発環 境は最小特権の原則に基 づいてアクセス管理がさ れているか シークレット情報をべた 書きしてないか? セキュリティアップデー トはちゃんとしてるか 静的コード解析でソース の中のセキュリティ的な 脆弱性はチェックしてる か? ペネトレーションテスト を定期的に実施している か インシデント発生時のワークフ ローは定義されているか Dev Ops
ソフトウェアのライフサイクルの中での DevSecOpsの実践(2/3) コラボレーション/開発環境は最小特権の原則に基づいてアクセス管理 がされているか 開発チームのメンバーがシステムに対して必要最小限の権限のみを持つよ うにすることで、不正アクセスや権限の乱用を防ぐことができる シークレット情報をべた書きしてないか?
シークレット情報(パスワードやAPI Key)をソースコードの中にそのまま 置くのは漏洩のリスクがあるので、ソースの中には入れない方がよい 静的コード解析でソースの中のセキュリティ的な脆弱性はチェックし てるか? SAST(Static Application Security Testing): 実行前のコードを静的解析 して開発プロセスの早い段階でセキュリティリスクを特定して修正すること ができる ツールでいうとSonarQube, bandit等
ソフトウェアのライフサイクルの中での DevSecOpsの実践(3/3) ペネトレーションテストを定期的に実施しているか DAST(Dynamic Application Security Testing):実行中のアプリケーションに 対して外部から攻撃を模倣し、セキュリティの弱点を探す
例えばペネトレーションテストで検出される問題は、A: 70%, B: 20%, C: 10% に分類されて、A と B は開発行為の中で解消可能なものだとしたら、 90% はちゃんと開発やってれば防げる) セキュリティアップデートはちゃんとしてるか ソフトウェアや依存ライブラリのセキュリティパッチとアップデートは、新 たに発見された脆弱性に対処するために定期的に実施することが必要 インシデント発生時のワークフローは定義されているか なにかが起きないようにすることも大事だけれども、なにかが起きたときに 迅速に対応できるワークフローも同じぐらい大事。
まとめ セキュリティを開発ライフサイクルに統合しよう DevSecOpsは単なるSonarQubeとかGitHub Advanced Securityとかのツールセットではな く、セキュリティをソフトウェア開発のDNAに組み込む文化。 セキュリティは後から付け加えるものではなく、日々の開発ライフサイクルの中に
内在するもの。 攻めのセキュリティ 開発ライフサイクルの中で積極的にセキュリティを考慮して対処することで、修正 コストを削減し、信頼できるプロダクトを速やかにユーザーに提供することができ、 後戻りすることなく前進し続けることができる。 透明性の高いセキュリティ対策によってユーザーとの信頼を築く 明確で透明なセキュリティプロセスはユーザーにとって信頼の証となる