pythonasyncioapiasyncfastapiframeworkjsonjson-schemaopenapiopenapi3pydanticpython-typespython3redocreststarletteswaggerswagger-uiuvicornweb
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
203 lines
19 KiB
203 lines
19 KiB
<mxfile host="65bd71144e">
|
|
<diagram id="jyERGzDynktFHFRGN0ph" name="Page-1">
|
|
<mxGraphModel dx="3321" dy="2867" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1920" pageHeight="1200" math="0" shadow="0">
|
|
<root>
|
|
<mxCell id="0"/>
|
|
<mxCell id="1" parent="0"/>
|
|
<mxCell id="2" value="" style="rounded=0;whiteSpace=wrap;html=1;fontStyle=1;strokeWidth=4;" parent="1" vertex="1">
|
|
<mxGeometry x="450" y="-50" width="820" height="970" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="3" value="<font face="Roboto"><span style="font-size: 24px">Server(s)</span></font>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;strokeWidth=3;fontFamily=Roboto Mono, mono;FType=g;" parent="1" vertex="1">
|
|
<mxGeometry x="710" y="-50" width="300" height="80" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="8" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;strokeWidth=3;exitX=0.092;exitY=1.01;exitDx=0;exitDy=0;dashed=1;exitPerimeter=0;" parent="1" edge="1">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="800" y="521"/>
|
|
<mxPoint x="800" y="560"/>
|
|
</Array>
|
|
<mxPoint x="803" y="521" as="sourcePoint"/>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="9" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;strokeWidth=3;dashed=1;" parent="1" edge="1">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<mxPoint x="800" y="520" as="sourcePoint"/>
|
|
<Array as="points">
|
|
<mxPoint x="800" y="680"/>
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="33" value="" style="group" parent="1" vertex="1" connectable="0">
|
|
<mxGeometry x="-140" y="-75" width="500" height="350" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="29" value="<font face="Roboto" data-font-src="https://fonts.googleapis.com/css?family=Roboto" style="font-size: 24px">https://someapp.example.com</font>" style="rounded=0;whiteSpace=wrap;html=1;fontStyle=1;strokeWidth=4;" parent="33" vertex="1">
|
|
<mxGeometry x="60" y="27" width="380" height="250" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="32" value="" style="pointerEvents=1;shadow=0;dashed=0;html=1;fillColor=#505050;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;outlineConnect=0;align=center;shape=mxgraph.office.devices.laptop;strokeColor=none;" parent="33" vertex="1">
|
|
<mxGeometry width="500" height="350" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="90" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;dashed=1;startArrow=none;startFill=0;endArrow=classic;endFill=1;strokeWidth=3;" parent="1" source="101" target="32" edge="1">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<mxPoint x="390" y="-190" as="sourcePoint"/>
|
|
<Array as="points">
|
|
<mxPoint x="390" y="-132"/>
|
|
<mxPoint x="280" y="-132"/>
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="34" value="<font face="Roboto" data-font-src="https://fonts.googleapis.com/css?family=Roboto" style="font-size: 24px">DNS Servers</font>" style="ellipse;shape=cloud;whiteSpace=wrap;html=1;strokeColor=#000000;strokeWidth=3;" parent="1" vertex="1">
|
|
<mxGeometry x="-60" y="-540" width="330" height="260" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="6" value="" style="rounded=0;whiteSpace=wrap;html=1;fontStyle=1;strokeWidth=4;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="1" vertex="1">
|
|
<mxGeometry x="495" y="320" width="355" height="440" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="7" value="<font style="font-size: 24px" face="Roboto">TLS Termination Proxy<br></font>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;strokeWidth=3;fontFamily=Roboto Mono, mono;FType=g;" parent="1" vertex="1">
|
|
<mxGeometry x="525" y="330" width="280" height="40" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="73" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=none;startFill=0;endArrow=classic;endFill=1;strokeWidth=3;" parent="1" source="85" target="6" edge="1">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points"/>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="62" value="<font face="Roboto" data-font-src="https://fonts.googleapis.com/css?family=Roboto" style="font-size: 24px">FastAPI</font><font face="Roboto" data-font-src="https://fonts.googleapis.com/css?family=Roboto" style="font-size: 24px ; font-weight: normal"> app for: someapp.example.com</font>" style="rounded=0;whiteSpace=wrap;html=1;fontStyle=1;strokeWidth=4;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="1" vertex="1">
|
|
<mxGeometry x="895" y="650" width="300" height="100" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="85" value="<span style="font-family: &#34;roboto&#34; ; font-size: 24px">Plain response from: someapp.example.com</span>" style="shape=hexagon;perimeter=hexagonPerimeter2;whiteSpace=wrap;html=1;fixedSize=1;strokeColor=#9673a6;strokeWidth=3;fillColor=#e1d5e7;" parent="1" vertex="1">
|
|
<mxGeometry x="890" y="500" width="310" height="80" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="86" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=none;startFill=0;endArrow=none;endFill=1;strokeWidth=3;" parent="1" source="62" target="85" edge="1">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<mxPoint x="1030.0000000000005" y="649.9999999999995" as="sourcePoint"/>
|
|
<mxPoint x="850" y="540.0000000000005" as="targetPoint"/>
|
|
<Array as="points">
|
|
<mxPoint x="1030" y="540"/>
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="87" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=none;startFill=0;endArrow=classic;endFill=1;strokeWidth=3;" parent="1" source="6" target="62" edge="1">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="1240" y="390"/>
|
|
<mxPoint x="1240" y="700"/>
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="84" value="<span style="font-family: &#34;roboto&#34; ; font-size: 24px">Decrypted request for: someapp.example.com</span>" style="shape=hexagon;perimeter=hexagonPerimeter2;whiteSpace=wrap;html=1;fixedSize=1;strokeColor=#82b366;strokeWidth=3;fillColor=#d5e8d4;" parent="1" vertex="1">
|
|
<mxGeometry x="890" y="350" width="310" height="80" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="88" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=none;startFill=0;endArrow=classic;endFill=1;strokeWidth=3;dashed=1;" parent="1" source="100" target="34" edge="1">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<mxPoint x="65.05882352941171" y="-220" as="sourcePoint"/>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="89" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=none;startFill=0;endArrow=none;endFill=1;strokeWidth=3;dashed=1;" parent="1" source="32" target="100" edge="1">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<mxPoint x="110" y="-75" as="sourcePoint"/>
|
|
<mxPoint x="-4.941176470588289" y="-139.99999999999955" as="targetPoint"/>
|
|
<Array as="points">
|
|
<mxPoint x="-5" y="-90"/>
|
|
<mxPoint x="-5" y="-90"/>
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="91" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;dashed=1;startArrow=none;startFill=0;endArrow=none;endFill=1;strokeWidth=3;" parent="1" source="34" target="101" edge="1">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<mxPoint x="105" y="-280" as="sourcePoint"/>
|
|
<mxPoint x="390" y="-260" as="targetPoint"/>
|
|
<Array as="points">
|
|
<mxPoint x="390" y="-430"/>
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="109" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;dashed=1;startArrow=none;startFill=0;endArrow=classic;endFill=1;strokeWidth=3;" parent="1" source="97" target="32" edge="1">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="340" y="480"/>
|
|
<mxPoint x="340" y="480"/>
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="36" value="<font face="Roboto" data-font-src="https://fonts.googleapis.com/css?family=Roboto" style="font-size: 24px">Port 443 (HTTPS)</font>" style="ellipse;whiteSpace=wrap;html=1;strokeColor=#000000;strokeWidth=3;" parent="1" vertex="1">
|
|
<mxGeometry x="330" y="680" width="170" height="120" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="92" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;dashed=1;startArrow=none;startFill=0;endArrow=classic;endFill=1;strokeWidth=3;" parent="1" source="96" target="36" edge="1">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<mxPoint x="50" y="500" as="sourcePoint"/>
|
|
<Array as="points">
|
|
<mxPoint x="50" y="740"/>
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="93" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;dashed=1;startArrow=none;startFill=0;endArrow=none;endFill=1;strokeWidth=3;" parent="1" source="32" target="96" edge="1">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<mxPoint x="300" y="350" as="sourcePoint"/>
|
|
<mxPoint x="55" y="330" as="targetPoint"/>
|
|
<Array as="points">
|
|
<mxPoint x="160" y="340"/>
|
|
<mxPoint x="160" y="340"/>
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="96" value="<span style="font-family: &#34;roboto&#34; ; font-size: 24px">Encrypted request for: someapp.example.com</span>" style="shape=hexagon;perimeter=hexagonPerimeter2;whiteSpace=wrap;html=1;fixedSize=1;strokeColor=#82b366;strokeWidth=3;fillColor=#d5e8d4;" parent="1" vertex="1">
|
|
<mxGeometry x="-10" y="400" width="310" height="80" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="100" value="<span style="font-family: &#34;roboto&#34; ; font-size: 24px">Who is: someapp.example.com</span>" style="shape=hexagon;perimeter=hexagonPerimeter2;whiteSpace=wrap;html=1;fixedSize=1;strokeWidth=3;" parent="1" vertex="1">
|
|
<mxGeometry x="-110" y="-210" width="310" height="80" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="101" value="<span style="font-family: &#34;roboto&#34; ; font-size: 24px">IP:</span><br style="font-family: &#34;roboto&#34;"><span style="font-family: &#34;roboto&#34; ; font-size: 24px">123.124.125.126</span>" style="shape=hexagon;perimeter=hexagonPerimeter2;whiteSpace=wrap;html=1;fixedSize=1;strokeWidth=3;" parent="1" vertex="1">
|
|
<mxGeometry x="270" y="-290" width="240" height="80" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="106" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;dashed=1;startArrow=none;startFill=0;endArrow=none;endFill=0;strokeWidth=3;" parent="1" source="104" target="36" edge="1">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="-40" y="770"/>
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="104" value="<span style="font-family: &#34;roboto&#34; ; font-size: 24px">TLS Handshake</span>" style="shape=hexagon;perimeter=hexagonPerimeter2;whiteSpace=wrap;html=1;fixedSize=1;strokeWidth=3;" parent="1" vertex="1">
|
|
<mxGeometry x="-110" y="300" width="230" height="80" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="107" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;dashed=1;startArrow=none;startFill=0;endArrow=none;endFill=1;strokeWidth=3;" parent="1" source="32" target="104" edge="1">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<mxPoint x="-40" y="275" as="sourcePoint"/>
|
|
<mxPoint x="341.38784067832285" y="770" as="targetPoint"/>
|
|
<Array as="points">
|
|
<mxPoint x="-40" y="290"/>
|
|
<mxPoint x="-40" y="290"/>
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="97" value="<span style="font-family: &#34;roboto&#34; ; font-size: 24px">Encrypted response from: someapp.example.com</span>" style="shape=hexagon;perimeter=hexagonPerimeter2;whiteSpace=wrap;html=1;fixedSize=1;strokeColor=#9673a6;strokeWidth=3;fillColor=#e1d5e7;" parent="1" vertex="1">
|
|
<mxGeometry x="90" y="500" width="310" height="80" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="110" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;dashed=1;startArrow=none;startFill=0;endArrow=none;endFill=1;strokeWidth=3;" parent="1" source="36" target="97" edge="1">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<mxPoint x="415" y="680" as="sourcePoint"/>
|
|
<mxPoint x="110" y="275" as="targetPoint"/>
|
|
<Array as="points">
|
|
<mxPoint x="245" y="710"/>
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="49" value="" style="rounded=0;whiteSpace=wrap;html=1;fontStyle=1;strokeWidth=4;fillColor=#fff2cc;strokeColor=#d6b656;" parent="1" vertex="1">
|
|
<mxGeometry x="510" y="400" width="310" height="320" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="50" value="<font style="font-size: 24px" face="Roboto">HTTPS certificates<br></font>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;strokeWidth=3;fontFamily=Roboto Mono, mono;FType=g;" parent="1" vertex="1">
|
|
<mxGeometry x="550.9" y="410" width="228.21" height="40" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="51" value="<font face="Roboto" data-font-src="https://fonts.googleapis.com/css?family=Roboto"><span style="font-size: 24px">someapp.example.com</span><br></font>" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=#000000;strokeWidth=3;" parent="1" vertex="1">
|
|
<mxGeometry x="530" y="465" width="270" height="70" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="52" value="<font face="Roboto" data-font-src="https://fonts.googleapis.com/css?family=Roboto"><span style="font-size: 24px">another.example.net</span><br></font>" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=#666666;strokeWidth=3;fillColor=#f5f5f5;fontColor=#333333;" parent="1" vertex="1">
|
|
<mxGeometry x="530" y="545" width="270" height="70" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="53" value="<font face="Roboto" data-font-src="https://fonts.googleapis.com/css?family=Roboto"><span style="font-size: 24px">onemore.example.org</span><br></font>" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=#666666;strokeWidth=3;fillColor=#f5f5f5;fontColor=#333333;" parent="1" vertex="1">
|
|
<mxGeometry x="530" y="625" width="270" height="70" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="42" value="<font face="Roboto" data-font-src="https://fonts.googleapis.com/css?family=Roboto"><span style="font-size: 24px">IP:</span><br><span style="font-size: 24px">123.124.125.126</span><br></font>" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=#000000;strokeWidth=3;" parent="1" vertex="1">
|
|
<mxGeometry x="290" y="600" width="220" height="70" as="geometry"/>
|
|
</mxCell>
|
|
</root>
|
|
</mxGraphModel>
|
|
</diagram>
|
|
</mxfile>
|
|
|