AiSecOps Architecture & Workflow
Security events from existing tools (SIEM, EDR, cloud logs) are streamed into the AiSecOps engine, where machine learning models score and cluster related alerts, eliminating duplicate and low-fidelity noise. High-priority incidents are automatically enriched with context and threat intelligence, then routed to analysts with AI-generated investigation summaries, or resolved automatically via pre-approved SOAR playbooks.
<style>
.aso{display:flex;flex-wrap:wrap;align-items:stretch;justify-content:center;gap:16px 12px;padding:4px 2px 10px}
.aso_src{display:flex;flex-direction:column;gap:16px;justify-content:center}
.aso_src span{display:flex;align-items:center;gap:10px;color:#fff;font-size:13px;white-space:nowrap}
.aso_src .sd_ico{width:28px;height:28px;margin:0}
.aso_col{display:flex;flex-direction:column;gap:14px;justify-content:center}
.aso_b{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;width:164px;padding:20px 14px;border:1px solid rgba(255,255,255,.16);border-radius:14px;text-align:center;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.01))}
.aso_b.is-core{border-color:rgba(230,46,45,.6)}
.aso_b.is-sm{width:178px;padding:14px}
.aso_b h4{margin:0;font-size:14px;line-height:1.25;color:#fff;font-weight:600}
.aso_b p{margin:0;font-size:12px;line-height:1.45;color:rgba(255,255,255,.6)}
.aso_b .sd_ico{margin:0;width:46px;height:46px}
.aso_row{display:flex;align-items:center;gap:9px;align-self:stretch;text-align:left}
.aso_row .sd_ico{width:30px;height:30px;flex:none}
.aso_ar{align-self:center;flex:none;color:#E62E2D}
.aso_btn{width:100%;padding:9px;border-radius:8px;text-align:center;font-size:13px;color:#fff;border:1px solid rgba(230,46,45,.6)}
.aso_btn.is-fill{background:#E62E2D;border-color:#E62E2D}
.aso{flex-wrap:nowrap;gap:14px 6px}.aso_src{flex:0 0 auto}.aso_src span{font-size:12px}.aso_b{width:auto;flex:1 1 0;min-width:0;padding:14px 6px;gap:8px}.aso_b.is-sm{width:auto;padding:12px 7px}.aso_col{flex:0 0 122px}.aso_col>.aso_b{width:100%;box-sizing:border-box}.aso_b h4{font-size:11.5px;line-height:1.2}.aso_b p{font-size:10.5px;line-height:1.35;overflow-wrap:anywhere}.aso_b .sd_ico{width:36px;height:36px}.aso_row{flex-direction:column;align-items:flex-start;gap:4px}.aso_row>div{min-width:0}.aso_row .sd_ico{width:22px;height:22px}.aso_btn{font-size:11px;padding:7px 4px}@media(max-width:1150px){.aso{flex-wrap:wrap;gap:16px 12px}.aso_src span{font-size:13px}.aso_b{flex:0 0 auto;width:164px;padding:20px 14px;gap:11px}.aso_b.is-sm{width:178px;padding:14px}.aso_col{flex:0 0 auto}.aso_b h4{font-size:14px}.aso_b p{font-size:12px}.aso_b .sd_ico{width:46px;height:46px}.aso_row{flex-direction:row;align-items:center;gap:9px}.aso_row .sd_ico{width:30px;height:30px}}
/* --- connectors, matching the Figma frame -----------------------------
Figma draws ONE continuous rule running through all six numbered
circles, not a dash floating in each gap. The circles carry their own
solid background, so the rule passes behind them and reads as touching
each one. An earlier pass here replaced that rule with five short
segments, which is what looked disconnected.
The flow connectors below were 16px sitting inside a 6px flex gap, so
they floated between the boxes instead of meeting them. They are now
34px with -6px margins, which closes the gap on both sides so each line
physically touches the box at either end.
------------------------------------------------------------------- */
.sd .sd_rail:before{display:block !important;height:2px;background:#E62E2D}
.sd .sd_rail:after{display:block !important}
.sd .sd_rn:not(:last-child):before,.sd .sd_rn:not(:last-child):after{display:none !important}
.aso_ar{width:34px !important;height:14px;margin-left:-6px;margin-right:-6px}
.aso_ar .aso_dot{animation:aso-run 1.9s linear infinite}
@keyframes aso-run{from{stroke-dashoffset:0}to{stroke-dashoffset:-24}}
@media(prefers-reduced-motion:reduce){.aso_ar .aso_dot{animation:none;opacity:0}}
/* responsive: the row turns into a column, so the connectors rotate and
their negative margins have to swap axis or the boxes overlap */
@media(max-width:767px){
.aso{flex-direction:column;align-items:center}
.aso_ar{transform:rotate(90deg);margin:-6px 0 !important;width:34px !important}
}
</style>
<div class="sd" style="--n:6;padding-bottom:40px">
<div class="sd_rail">
<span class="sd_rn"><b>1</b><i>Data Ingestion</i></span>
<span class="sd_rn"><b>2</b><i>AI Correlation</i></span>
<span class="sd_rn"><b>3</b><i>Incident Enrichment</i></span>
<span class="sd_rn"><b>4</b><i>Playbook Orchestration</i></span>
<span class="sd_rn"><b>5</b><i>Analyst Review Interface</i></span>
<span class="sd_rn"><b>6</b><i>Continuous Learning</i></span>
</div>
<div class="aso">
<div class="aso_src">
<span><img class="sd_ico" style="object-fit:contain" src="https://cdn.prod.website-files.com/6a8df6c4166ed6e5454a4f94/6aa9ae62f2c7a89399e9e4e0_hxp-aiseco8-01.png" alt="" loading="lazy">SIEM</span>
<span><img class="sd_ico" style="object-fit:contain" src="https://cdn.prod.website-files.com/6a8df6c4166ed6e5454a4f94/6aa9ae62f2c7a89399e9e506_hxp-aiseco8-02.png" alt="" loading="lazy">EDR</span>
<span><img class="sd_ico" style="object-fit:contain" src="https://cdn.prod.website-files.com/6a8df6c4166ed6e5454a4f94/6aa9ae63fb718c615f3162cb_hxp-aiseco8-03.png" alt="" loading="lazy">CLOUD LOGS</span>
<span><img class="sd_ico" style="object-fit:contain" src="https://cdn.prod.website-files.com/6a8df6c4166ed6e5454a4f94/6aa9ae639b69d9815f42a789_hxp-aiseco8-04.png" alt="" loading="lazy">EVENTS</span>
</div>
<svg class="aso_ar" width="20" height="12" viewBox="0 0 20 12" fill="none"><path d="M0 6h20M17 3l3 3-3 3" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/><path class="aso_dot" d="M0 6h20" stroke="#ff5f52" stroke-width="3" stroke-linecap="round" stroke-dasharray="0.01 24"/></svg>
<div class="aso_b" data-fl="1"><img class="sd_ico" style="object-fit:contain" src="https://cdn.prod.website-files.com/6a8df6c4166ed6e5454a4f94/6aa9ae6336a4b980fdae4b4a_hxp-aiseco8-05.png" alt="" loading="lazy"><p>Normalize all telemetry events</p></div>
<svg class="aso_ar" width="20" height="12" viewBox="0 0 20 12" fill="none"><path d="M0 6h20M17 3l3 3-3 3" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/><path class="aso_dot" d="M0 6h20" stroke="#ff5f52" stroke-width="3" stroke-linecap="round" stroke-dasharray="0.01 24"/></svg>
<div class="aso_b" data-fl="2"><img class="sd_ico" style="object-fit:contain" src="https://cdn.prod.website-files.com/6a8df6c4166ed6e5454a4f94/6aa9ae6348d070ce480ac728_hxp-aiseco8-06.png" alt="" loading="lazy"><p>Correlate and score to identify true incidents</p></div>
<svg class="aso_ar" width="20" height="12" viewBox="0 0 20 12" fill="none"><path d="M0 6h20M17 3l3 3-3 3" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/><path class="aso_dot" d="M0 6h20" stroke="#ff5f52" stroke-width="3" stroke-linecap="round" stroke-dasharray="0.01 24"/></svg>
<img class="aso_node" style="object-fit:contain" width="30" height="32" src="https://cdn.prod.website-files.com/6a8df6c4166ed6e5454a4f94/6aa9ae63a1e6948d1a4ac7e2_hxp-aiseco8-07.png" alt="" loading="lazy">
<svg class="aso_ar" width="20" height="12" viewBox="0 0 20 12" fill="none"><path d="M0 6h20M17 3l3 3-3 3" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/><path class="aso_dot" d="M0 6h20" stroke="#ff5f52" stroke-width="3" stroke-linecap="round" stroke-dasharray="0.01 24"/></svg>
<div class="aso_b" data-fl="3">
<div class="aso_row"><img class="sd_ico" style="object-fit:contain" src="https://cdn.prod.website-files.com/6a8df6c4166ed6e5454a4f94/6aa9ae636477dd95a46b51da_hxp-aiseco8-08.png" alt="" loading="lazy"><div><h4>Context Data</h4><p>e.g. User/Asset</p></div></div>
<div class="aso_row"><img class="sd_ico" style="object-fit:contain" src="https://cdn.prod.website-files.com/6a8df6c4166ed6e5454a4f94/6aa9ae636477dd95a46b51da_hxp-aiseco8-08.png" alt="" loading="lazy"><div><h4>Threat Intel</h4><p>e.g. User/Asset</p></div></div>
</div>
<svg class="aso_ar" width="20" height="12" viewBox="0 0 20 12" fill="none"><path d="M0 6h20M17 3l3 3-3 3" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/><path class="aso_dot" d="M0 6h20" stroke="#ff5f52" stroke-width="3" stroke-linecap="round" stroke-dasharray="0.01 24"/></svg>
<div class="aso_col">
<div class="aso_b is-sm" data-fl="4"><div class="aso_row"><img class="sd_ico" style="object-fit:contain" src="https://cdn.prod.website-files.com/6a8df6c4166ed6e5454a4f94/6aa9ae646b6497d5a88e969a_hxp-aiseco8-10.png" alt="" loading="lazy"><div><h4>Auto Resolution</h4><p>Pre-approved actions</p></div></div></div>
<img class="aso_tree" style="object-fit:contain" width="52" height="40" src="https://cdn.prod.website-files.com/6a8df6c4166ed6e5454a4f94/6aa9ae64bce59b36de28e0fb_hxp-aiseco8-11.png" alt="" loading="lazy">
<div class="aso_b is-sm" data-fl="5"><div class="aso_row"><img class="sd_ico" style="object-fit:contain" src="https://cdn.prod.website-files.com/6a8df6c4166ed6e5454a4f94/6aa9ae646b6497d5a88e969a_hxp-aiseco8-10.png" alt="" loading="lazy"><div><h4>Escalation to Analyst</h4><p>Human review required</p></div></div></div>
</div>
<svg class="aso_ar" width="20" height="12" viewBox="0 0 20 12" fill="none"><path d="M0 6h20M17 3l3 3-3 3" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/><path class="aso_dot" d="M0 6h20" stroke="#ff5f52" stroke-width="3" stroke-linecap="round" stroke-dasharray="0.01 24"/></svg>
<div class="aso_b is-core" data-fl="6"><img class="sd_ico" style="object-fit:contain" src="https://cdn.prod.website-files.com/6a8df6c4166ed6e5454a4f94/6aa9ae6423195312e750a191_hxp-aiseco8-13.png" alt="" loading="lazy"><p>Enriched investigation summary</p><div class="aso_btn is-fill">Resolve</div><div class="aso_btn">Escalate</div></div>
<svg class="aso_ar" width="20" height="12" viewBox="0 0 20 12" fill="none"><path d="M0 6h20M17 3l3 3-3 3" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/><path class="aso_dot" d="M0 6h20" stroke="#ff5f52" stroke-width="3" stroke-linecap="round" stroke-dasharray="0.01 24"/></svg>
<div class="aso_b" data-fl="7"><img class="sd_ico" style="object-fit:contain" src="https://cdn.prod.website-files.com/6a8df6c4166ed6e5454a4f94/6aa9ae65430c5cafdb764737_hxp-aiseco8-14.png" alt="" loading="lazy"><h4>Analyst Feedback</h4></div>
<svg class="aso_ar" width="20" height="12" viewBox="0 0 20 12" fill="none"><path d="M0 6h20M17 3l3 3-3 3" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/><path class="aso_dot" d="M0 6h20" stroke="#ff5f52" stroke-width="3" stroke-linecap="round" stroke-dasharray="0.01 24"/></svg>
<div class="aso_b" data-fl="8"><img class="sd_ico" style="object-fit:contain" src="https://cdn.prod.website-files.com/6a8df6c4166ed6e5454a4f94/6aa9ae652f3cec5b5a21c801_hxp-aiseco8-15.png" alt="" loading="lazy"><h4>Model Improvement</h4></div>
<svg class="aso_ar" width="20" height="12" viewBox="0 0 20 12" fill="none"><path d="M0 6h20M17 3l3 3-3 3" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/><path class="aso_dot" d="M0 6h20" stroke="#ff5f52" stroke-width="3" stroke-linecap="round" stroke-dasharray="0.01 24"/></svg>
<div class="aso_b" data-fl="9"><img class="sd_ico" style="object-fit:contain" src="https://cdn.prod.website-files.com/6a8df6c4166ed6e5454a4f94/6aa9ae65e812817b171e3bd9_hxp-aiseco8-16.png" alt="" loading="lazy"><h4>Optimized Detection</h4></div>
</div>
</div>