24 lines
3.6 KiB
XML
24 lines
3.6 KiB
XML
<svg xmlns="http://www.w3.org/2000/svg" width="1200" height="720" viewBox="0 0 1200 720" role="img" aria-labelledby="title desc">
|
|
<title id="title">Учебный DFD одного потока и связанный контроль</title>
|
|
<desc id="desc">Browser client пересекает границу доверия перед handler. Handler сохраняет change request. Возле границы показаны злоупотребление, контроль и evidence.</desc>
|
|
<defs><marker id="arrow" markerWidth="10" markerHeight="10" refX="9" refY="3" orient="auto"><path d="M0,0 L10,3 L0,6 Z" fill="#17324d"/></marker></defs>
|
|
<rect width="1200" height="720" fill="#f7fafc"/>
|
|
<text x="70" y="80" font-family="Arial, sans-serif" font-size="34" font-weight="700" fill="#17324d">Один учебный поток: сначала актив и граница</text>
|
|
<rect x="70" y="250" width="215" height="120" rx="16" fill="#d8ecff" stroke="#2176ae" stroke-width="3"/>
|
|
<text x="177" y="302" text-anchor="middle" font-family="Arial, sans-serif" font-size="24" font-weight="700" fill="#17324d">browser-client</text><text x="177" y="335" text-anchor="middle" font-family="Arial, sans-serif" font-size="18" fill="#17324d">source</text>
|
|
<line x1="285" y1="310" x2="475" y2="310" stroke="#17324d" stroke-width="5" marker-end="url(#arrow)"/>
|
|
<line x1="390" y1="165" x2="390" y2="480" stroke="#d64545" stroke-width="5" stroke-dasharray="12 10"/>
|
|
<text x="390" y="140" text-anchor="middle" font-family="Arial, sans-serif" font-size="19" font-weight="700" fill="#a12c2c">trust boundary</text><text x="390" y="505" text-anchor="middle" font-family="Arial, sans-serif" font-size="17" fill="#a12c2c">public-api-to-handler</text>
|
|
<rect x="475" y="250" width="220" height="120" rx="16" fill="#e6f5df" stroke="#3b7a35" stroke-width="3"/>
|
|
<text x="585" y="302" text-anchor="middle" font-family="Arial, sans-serif" font-size="25" font-weight="700" fill="#17324d">handler</text><text x="585" y="335" text-anchor="middle" font-family="Arial, sans-serif" font-size="18" fill="#17324d">process</text>
|
|
<line x1="695" y1="310" x2="885" y2="310" stroke="#17324d" stroke-width="5" marker-end="url(#arrow)"/>
|
|
<path d="M885 250 H1085 L1115 280 V370 H885 Z" fill="#fff4cf" stroke="#9c6d00" stroke-width="3"/>
|
|
<text x="1000" y="302" text-anchor="middle" font-family="Arial, sans-serif" font-size="23" font-weight="700" fill="#17324d">change-request</text><text x="1000" y="335" text-anchor="middle" font-family="Arial, sans-serif" font-size="18" fill="#17324d">asset / store</text>
|
|
<rect x="78" y="545" width="315" height="105" rx="12" fill="#ffe1e1" stroke="#c44" stroke-width="2"/>
|
|
<text x="97" y="582" font-family="Arial, sans-serif" font-size="20" font-weight="700" fill="#8e2424">Abuse</text><text x="97" y="617" font-family="Arial, sans-serif" font-size="18" fill="#3c2424">request without valid signature</text>
|
|
<rect x="440" y="545" width="310" height="105" rx="12" fill="#dff4e4" stroke="#287744" stroke-width="2"/>
|
|
<text x="459" y="582" font-family="Arial, sans-serif" font-size="20" font-weight="700" fill="#185d31">Control</text><text x="459" y="617" font-family="Arial, sans-serif" font-size="18" fill="#17324d">signed-request: reject before handler</text>
|
|
<rect x="790" y="545" width="340" height="105" rx="12" fill="#e8e2ff" stroke="#6a52a3" stroke-width="2"/>
|
|
<text x="809" y="582" font-family="Arial, sans-serif" font-size="20" font-weight="700" fill="#4b3881">Evidence</text><text x="809" y="617" font-family="Arial, sans-serif" font-size="18" fill="#17324d">local check: unsigned value rejected</text>
|
|
</svg>
|