<mxfile host="app.diagrams.net" agent="architecture-diagram" version="24.0.0">
  <diagram name="External Identity — customer sign-in and partner federation" id="19-external-identity-flow">
    <mxGraphModel dx="1400" dy="900" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1790" pageHeight="1020" math="0" shadow="0">
      <root>
        <mxCell id="0" />
        <mxCell id="1" parent="0" />
        <mxCell id="n.cust" value="&lt;b&gt;Customer&lt;/b&gt;" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=0;collapsible=0;recursiveResize=0;outlineConnect=0;size=58;rounded=1;arcSize=8;fillColor=#08427b;strokeColor=#073b6f;fontColor=#ffffff;fontSize=12;fontFamily=Segoe UI;verticalAlign=top;spacingTop=9;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="60" y="80" width="220" height="820" as="geometry" />
        </mxCell>
        <mxCell id="_plate1" value="" style="rounded=1;arcSize=22;html=1;fillColor=#ffffff;strokeColor=none;movable=0;resizable=0;connectable=0;" vertex="1" parent="n.cust">
          <mxGeometry x="5" y="13" width="32" height="32" as="geometry" />
        </mxCell>
        <mxCell id="_ico2" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAACWklEQVRoge3Zz4tNYRzH8dfIrwmJGcZMIgpJEjZsiA1pLGhK2VDEcpLFWCkrG3tr/8GQHRNWipRhocxmombIaESNjDFj8XTrNHPunXueOfec2zTv+m7Ovd9z3p/uvec8z/eyRLm05Hy+lTiBbuzEFvzGKF6hH0M5XzMXVuAaRjAzTz3BwXI002nHc/OLJ2sKfSW4zqELw7LJJ+te4cYJWoXvdax8pa4WLV7hdp2C89UEthbsrh0/FyierPvF6nM9J/FK/cKqGJFlkQHORvZVYy2OxzTGBtgX2Zf7OWMDdET21aIzpik2wHRkXy3+xTTFBhiN7KvFSExTbIB3kX21eN+Ac1blknxvo9+xvMgA6zGWY4BS1kQ3ImVn1zjaCnZH+MifZpSdXdO4ULR4ko3Cjy9W/lbxynNZh0eyyU/gYhmytTiPD2qLT+EBtuV10bw39XAIZ7BLWHL8wWe8xmPhlrnEoiH2K7RfGI10YgMm8RBv6uhtRY+wfJ7CV3zCC/zIKpIlwBr04oowtErjozD3GRSmFePCTqsNe3EUJ4U712z+4hnuCmOaXOlW39Aqr+oXnjG5cFNYqxclX6kh7Fmo/OUSxJM1jM2x8oeFe3iZAWYwEBtgoAnkK3Uuq/yxJpBO1ttqotW2lD1ZEzeYA9id9kK1AKcb5xLNqbSDaQFasL2xLlHsSDuYFqBN+Kuo2ehKO5gWYHWDRWJJ9YqdCzUNizLAZOEW9ZHqlRZgTGNmnwtlMMube5X/9E3WN2zKEqAFdzTHYm5IWFhWFa1FB44o77nwBS+FrecSTcl/+F0YjmstwYwAAAAASUVORK5CYII=;" vertex="1" parent="n.cust">
          <mxGeometry x="9" y="17" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.part" value="&lt;b&gt;Partner employee&lt;/b&gt;" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=0;collapsible=0;recursiveResize=0;outlineConnect=0;size=58;rounded=1;arcSize=8;fillColor=#08427b;strokeColor=#073b6f;fontColor=#ffffff;fontSize=12;fontFamily=Segoe UI;verticalAlign=top;spacingTop=9;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="300" y="80" width="220" height="820" as="geometry" />
        </mxCell>
        <mxCell id="_plate3" value="" style="rounded=1;arcSize=22;html=1;fillColor=#ffffff;strokeColor=none;movable=0;resizable=0;connectable=0;" vertex="1" parent="n.part">
          <mxGeometry x="5" y="13" width="32" height="32" as="geometry" />
        </mxCell>
        <mxCell id="_ico4" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAACWklEQVRoge3Zz4tNYRzH8dfIrwmJGcZMIgpJEjZsiA1pLGhK2VDEcpLFWCkrG3tr/8GQHRNWipRhocxmombIaESNjDFj8XTrNHPunXueOfec2zTv+m7Ovd9z3p/uvec8z/eyRLm05Hy+lTiBbuzEFvzGKF6hH0M5XzMXVuAaRjAzTz3BwXI002nHc/OLJ2sKfSW4zqELw7LJJ+te4cYJWoXvdax8pa4WLV7hdp2C89UEthbsrh0/FyierPvF6nM9J/FK/cKqGJFlkQHORvZVYy2OxzTGBtgX2Zf7OWMDdET21aIzpik2wHRkXy3+xTTFBhiN7KvFSExTbIB3kX21eN+Ac1blknxvo9+xvMgA6zGWY4BS1kQ3ImVn1zjaCnZH+MifZpSdXdO4ULR4ko3Cjy9W/lbxynNZh0eyyU/gYhmytTiPD2qLT+EBtuV10bw39XAIZ7BLWHL8wWe8xmPhlrnEoiH2K7RfGI10YgMm8RBv6uhtRY+wfJ7CV3zCC/zIKpIlwBr04oowtErjozD3GRSmFePCTqsNe3EUJ4U712z+4hnuCmOaXOlW39Aqr+oXnjG5cFNYqxclX6kh7Fmo/OUSxJM1jM2x8oeFe3iZAWYwEBtgoAnkK3Uuq/yxJpBO1ttqotW2lD1ZEzeYA9id9kK1AKcb5xLNqbSDaQFasL2xLlHsSDuYFqBN+Kuo2ehKO5gWYHWDRWJJ9YqdCzUNizLAZOEW9ZHqlRZgTGNmnwtlMMube5X/9E3WN2zKEqAFdzTHYm5IWFhWFa1FB44o77nwBS+FrecSTcl/+F0YjmstwYwAAAAASUVORK5CYII=;" vertex="1" parent="n.part">
          <mxGeometry x="9" y="17" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.capp" value="&lt;b&gt;Customer application&lt;/b&gt;" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=0;collapsible=0;recursiveResize=0;outlineConnect=0;size=58;rounded=1;arcSize=8;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#1a2b45;fontSize=12;fontFamily=Segoe UI;verticalAlign=top;spacingTop=9;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="540" y="80" width="220" height="820" as="geometry" />
        </mxCell>
        <mxCell id="_ico5" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAACpUlEQVRoge3YTYhNYRzH8Y+3iLzkbZoSdhJZkI1YUWzYWbCxJCU1ZShlpVhQKIoFG28pKxaKDUnyUtTQZJCExZSJEYMMFs+cXMe5955z7jn3jppf/evWfc7/+f6e5/+8nMOIWqsxJeWdhA3YhMUYQG9JfRWqZTiJfvyKxRPsxuyW0VXRHAGsx7/QSfED17ER41rACyYMAVwZAkoDnhTvhRlb2izwWiXSaJRWYvOxDy9yQOWZnW+4jPUaKLFGS+QBdmIGFuGgsAuVXmLTcUS+EnmDA1hQJff4oUG5mnNQ7mNdLfjJeJQx6QDOY61sZ0o7dqErY38/saVa0r0ZEt3BVkzLAF1Ny3EcfSn77sOUpEQ36zz4FkexpADoJI0XFu4lfK/DsjopwdOEhgO4INReWdeOJEUl9iSB6Rc2Rw1H10n0CS/RjcEySKuoF8/wOstDSTMQxaA/x//YIkljahcOs1c1WP6agbQG4mvhIOYWBD0aa6Sr/UIMRFF5KcuzPqYJh93zjP0WZqAyeoSpn5UCPLpPfWmgv8INRPEV57Aqljsa7ax9DDbbQGV0oQOn8Tnjs++wHwtbaSBP3Pb3i87EegbK3BLT6oOwAx0TDq5MaqWBhziFs8KCzqVmG+jHRZzA4yISNtPAGewQFnRhqncXKlLdCoanuQZK0YiBVuu/NzAcDrJqasOeeo0qDXwsjyWT2tCJbcJVIkkfoh+VJXSrRKg0asNh4RW2Q3X4r7iX9Mds4R20rItaZx3wtDfWvbVGYR6uNclAVvA+bMeoWgYirRC+i5ZhYKbwTp0WvH+ofa6PaCtxoyADh2Qf8X2Ymgc8rjJmpJQRb6WRUsHLNNJU8LgaMdJS8LiyGBlW4HHVMjKsweNaKXyW78Zd4atdIdvhiEZUsH4D+zfN9JHFLwAAAAAASUVORK5CYII=;" vertex="1" parent="n.capp">
          <mxGeometry x="9" y="17" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.extid" value="&lt;b&gt;Entra External ID&lt;/b&gt;" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=0;collapsible=0;recursiveResize=0;outlineConnect=0;size=58;rounded=1;arcSize=8;fillColor=#e1d5e7;strokeColor=#9673a6;fontColor=#3a2b44;fontSize=12;fontFamily=Segoe UI;verticalAlign=top;spacingTop=9;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="790" y="80" width="220" height="820" as="geometry" />
        </mxCell>
        <mxCell id="_ico6" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,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;" vertex="1" parent="n.extid">
          <mxGeometry x="9" y="17" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.entra" value="&lt;b&gt;Corporate Entra ID&lt;/b&gt;" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=0;collapsible=0;recursiveResize=0;outlineConnect=0;size=58;rounded=1;arcSize=8;fillColor=#e1d5e7;strokeColor=#9673a6;fontColor=#3a2b44;fontSize=12;fontFamily=Segoe UI;verticalAlign=top;spacingTop=9;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="1030" y="80" width="220" height="820" as="geometry" />
        </mxCell>
        <mxCell id="_ico7" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,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;" vertex="1" parent="n.entra">
          <mxGeometry x="9" y="17" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.home" value="&lt;b&gt;Partner home tenant&lt;/b&gt;" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=0;collapsible=0;recursiveResize=0;outlineConnect=0;size=58;rounded=1;arcSize=8;fillColor=#f5f5f5;strokeColor=#8c8c8c;fontColor=#333333;fontSize=12;fontFamily=Segoe UI;verticalAlign=top;spacingTop=9;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="1270" y="80" width="220" height="820" as="geometry" />
        </mxCell>
        <mxCell id="_ico8" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,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;" vertex="1" parent="n.home">
          <mxGeometry x="9" y="17" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.api" value="&lt;b&gt;Tenant-scoped API&lt;/b&gt;" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=0;collapsible=0;recursiveResize=0;outlineConnect=0;size=58;rounded=1;arcSize=8;fillColor=#ffe6cc;strokeColor=#d79b00;fontColor=#4a3200;fontSize=12;fontFamily=Segoe UI;verticalAlign=top;spacingTop=9;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="1520" y="80" width="220" height="820" as="geometry" />
        </mxCell>
        <mxCell id="_ico9" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAABzklEQVRoge3XsYsUMRjG4efURgQbQQ4OxSu2EEEEwVo7Qey8VlGxFnv/BnsFCy0Ee7sDRXsrUQQREexszgOFc3HXIg7sjJPc3TK7k4H8IEXyzYT3JfnyJRQKhUKhznEc6FvEPBzBa0zxEaN+5eyf64L4qn2zBxM5LdWxRn8Nb3A69VNOBtpYxUsJE7kbYBcTh1rGjuLgIhVFOJyIrWITl/Ap9tF5fFZPpNxaMrE3MxC4l/ZV2CWo58BazFlmnMTFqjNr4OfSpczHb7yvOrMGHgtLlDMT3BFyFaw0PjinvxJ+BTcS8Qlu4uly5Oyfe+KJ+0fE3BAK2QS38KQtmLuBpHjaK3Ff7DT6ne75q/iAt7jQxYQtrOOHsOfHwvW6Ezb+TVgl1LuuJm7hFG7jbFcTNsVPDafguSZUveaRNggDMfGDMJASn52B5lViA8+kj9cpvixMUZotPMLDtuBl/ydsjm0i3NlQr8T35VXYYqzgTNWZNfB9+VrmZtw2uC68OfveIru1bTOvx2YSj/BK+nk5xoNEfJHs4LlwrYkykl6JrI7RGCkTgzBA3MRgDNBuYrtXRXPQNPGiXzl1mqdQjBO4i1/CCbS1MEWFQqFQWCZ/AdclH6RcD+9yAAAAAElFTkSuQmCC;" vertex="1" parent="n.api">
          <mxGeometry x="9" y="17" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="_m10" value="1. sign up or sign in" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;fontFamily=Segoe UI;verticalAlign=bottom;endArrow=block;endFill=1;strokeColor=#5a6570;exitX=0.5;exitY=0.1122;exitDx=0;exitDy=0;entryX=0.5;entryY=0.1122;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.cust" target="n.capp">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="_m11" value="2. OIDC user flow + PKCE" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;fontFamily=Segoe UI;verticalAlign=bottom;endArrow=block;endFill=1;strokeColor=#5a6570;exitX=0.5;exitY=0.1610;exitDx=0;exitDy=0;entryX=0.5;entryY=0.1610;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.capp" target="n.extid">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="_m12" value="3. local account or Google / Apple" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;fontFamily=Segoe UI;verticalAlign=bottom;endArrow=block;endFill=1;strokeColor=#5a6570;exitX=0.5;exitY=0.2098;exitDx=0;exitDy=0;entryX=0.5;entryY=0.2390;entryDx=0;entryDy=0;align=left;spacingLeft=6;" edge="1" parent="1" source="n.extid" target="n.extid">
          <mxGeometry relative="1" as="geometry">
            <Array as="points">
              <mxPoint x="980" y="250" />
              <mxPoint x="980" y="280" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="_m13" value="4. step-up: email OTP or authenticator" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;fontFamily=Segoe UI;verticalAlign=bottom;endArrow=block;endFill=1;strokeColor=#5a6570;exitX=0.5;exitY=0.2732;exitDx=0;exitDy=0;entryX=0.5;entryY=0.3024;entryDx=0;entryDy=0;align=left;spacingLeft=6;" edge="1" parent="1" source="n.extid" target="n.extid">
          <mxGeometry relative="1" as="geometry">
            <Array as="points">
              <mxPoint x="980" y="310" />
              <mxPoint x="980" y="330" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="_m14" value="5. tokens, tid = CIAM tenant" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;fontFamily=Segoe UI;verticalAlign=bottom;endArrow=open;endFill=0;dashed=1;strokeColor=#5a6570;exitX=0.5;exitY=0.3366;exitDx=0;exitDy=0;entryX=0.5;entryY=0.3366;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.extid" target="n.capp">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="_m15" value="6. call with customer token" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;fontFamily=Segoe UI;verticalAlign=bottom;endArrow=block;endFill=1;strokeColor=#5a6570;exitX=0.5;exitY=0.3854;exitDx=0;exitDy=0;entryX=0.5;entryY=0.3854;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.capp" target="n.api">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="_m16" value="7. subject to customer_id, load org scope" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;fontFamily=Segoe UI;verticalAlign=bottom;endArrow=block;endFill=1;strokeColor=#5a6570;exitX=0.5;exitY=0.4341;exitDx=0;exitDy=0;entryX=0.5;entryY=0.4634;entryDx=0;entryDy=0;align=left;spacingLeft=6;" edge="1" parent="1" source="n.api" target="n.api">
          <mxGeometry relative="1" as="geometry">
            <Array as="points">
              <mxPoint x="1700" y="440" />
              <mxPoint x="1700" y="460" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="_m17" value="8. that customer's data only" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;fontFamily=Segoe UI;verticalAlign=bottom;endArrow=open;endFill=0;dashed=1;strokeColor=#5a6570;exitX=0.5;exitY=0.4976;exitDx=0;exitDy=0;entryX=0.5;entryY=0.4976;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.api" target="n.capp">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="_m18" value="9. access a contoso resource" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;fontFamily=Segoe UI;verticalAlign=bottom;endArrow=block;endFill=1;strokeColor=#5a6570;exitX=0.5;exitY=0.5463;exitDx=0;exitDy=0;entryX=0.5;entryY=0.5463;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.part" target="n.entra">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="_m19" value="10. cross-tenant: was MFA satisfied?" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;fontFamily=Segoe UI;verticalAlign=bottom;endArrow=block;endFill=1;strokeColor=#5a6570;exitX=0.5;exitY=0.5951;exitDx=0;exitDy=0;entryX=0.5;entryY=0.5951;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.entra" target="n.home">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="_m20" value="11. MFA + device claims, trusted" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;fontFamily=Segoe UI;verticalAlign=bottom;endArrow=open;endFill=0;dashed=1;strokeColor=#5a6570;exitX=0.5;exitY=0.6439;exitDx=0;exitDy=0;entryX=0.5;entryY=0.6439;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.home" target="n.entra">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="_m21" value="12. guest object + collaboration settings" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;fontFamily=Segoe UI;verticalAlign=bottom;endArrow=block;endFill=1;strokeColor=#5a6570;exitX=0.5;exitY=0.6927;exitDx=0;exitDy=0;entryX=0.5;entryY=0.7220;entryDx=0;entryDy=0;align=left;spacingLeft=6;" edge="1" parent="1" source="n.entra" target="n.entra">
          <mxGeometry relative="1" as="geometry">
            <Array as="points">
              <mxPoint x="1220" y="650" />
              <mxPoint x="1220" y="670" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="_m22" value="13. token: guest, restricted app role" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;fontFamily=Segoe UI;verticalAlign=bottom;endArrow=open;endFill=0;dashed=1;strokeColor=#5a6570;exitX=0.5;exitY=0.7561;exitDx=0;exitDy=0;entryX=0.5;entryY=0.7561;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.entra" target="n.api">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="_m23" value="14. guest predicate: no export, no admin scope" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;fontFamily=Segoe UI;verticalAlign=bottom;endArrow=block;endFill=1;strokeColor=#5a6570;exitX=0.5;exitY=0.8049;exitDx=0;exitDy=0;entryX=0.5;entryY=0.8341;entryDx=0;entryDy=0;align=left;spacingLeft=6;" edge="1" parent="1" source="n.api" target="n.api">
          <mxGeometry relative="1" as="geometry">
            <Array as="points">
              <mxPoint x="1700" y="740" />
              <mxPoint x="1700" y="770" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="_m24" value="15. restricted view" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;fontFamily=Segoe UI;verticalAlign=bottom;endArrow=open;endFill=0;dashed=1;strokeColor=#5a6570;exitX=0.5;exitY=0.8683;exitDx=0;exitDy=0;entryX=0.5;entryY=0.8683;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.api" target="n.part">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="_m25" value="16. no trust in this direction, by design" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;fontFamily=Segoe UI;verticalAlign=bottom;endArrow=block;endFill=1;dashed=1;strokeColor=#b85450;fontColor=#b85450;exitX=0.5;exitY=0.9171;exitDx=0;exitDy=0;entryX=0.5;entryY=0.9171;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.extid" target="n.entra">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="title" value="External Identity — customer sign-in and partner federation" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=20;fontStyle=1;fontColor=#16202c;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="40" y="20" width="1700" height="30" as="geometry" />
        </mxCell>
        <mxCell id="rule" value="" style="line;strokeWidth=1;html=1;strokeColor=#c9d3de;" vertex="1" parent="1">
          <mxGeometry x="40" y="50" width="1700" height="10" as="geometry" />
        </mxCell>
        <mxCell id="note" value="Two journeys, one rule: the tenant a subject came from is a claim the API reads, never a parameter the caller supplies. The red line is the point of the view — the CIAM tenant can obtain nothing in the corporate tenant, so a customer-facing compromise has no path to an administrative role." style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#8a97a5;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="40" y="950" width="1700" height="20" as="geometry" />
        </mxCell>
        <mxCell id="foot-rule" value="" style="line;strokeWidth=1;html=1;strokeColor=#e3e9ef;" vertex="1" parent="1">
          <mxGeometry x="40" y="970" width="1700" height="10" as="geometry" />
        </mxCell>
        <mxCell id="foot" value="v 1.0   ·   owner Data &amp; AI Global Practice   ·   date 2026-08" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=9;fontColor=#9aa7b4;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="40" y="980" width="1700" height="10" as="geometry" />
        </mxCell>
      </root>
    </mxGraphModel>
  </diagram>
</mxfile>
