Skip to content

Commit f8d9464

Browse files
MahdiBaghbaniglpatcern
authored andcommitted
add: receiver side diagrams
Signed-off-by: Mahdi Baghbani <mahdi-baghbani@azadehafzar.io>
1 parent 9c312f7 commit f8d9464

3 files changed

Lines changed: 35 additions & 3 deletions

File tree

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
```mermaid
2+
flowchart TD
3+
A["Provider acts as Receiving Server"]
4+
A --> B{"Does it support the code flow"}
5+
6+
B -- "Yes" --> C["Advertise exchange-token"]
7+
C --> D{"Does it require code flow for all inbound shares"}
8+
D -- "Yes" --> E["Advertise token-exchange in criteria"]
9+
E --> F["Reject inbound shares that omit must-exchange-token"]
10+
D -- "No" --> G["Do not advertise token-exchange"]
11+
G --> H["Strict inbound shares may still be accepted share by share"]
12+
13+
B -- "No" --> I["Do not advertise exchange-token"]
14+
I --> J["Cannot honor strict inbound shares"]
15+
```
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
```mermaid
2+
flowchart TD
3+
A["Receiving Server gets a share and later accesses the resource"]
4+
A --> B["Inspect protocol.webdav.requirements"]
5+
B --> C{"must-exchange-token present"}
6+
7+
C -- "Yes" --> D["Exchange sharedSecret at the sender tokenEndPoint"]
8+
D --> E["Use only the bearer token"]
9+
10+
C -- "No" --> F["Inspect sender discovery"]
11+
F --> G{"Sender exposes exchange-token and tokenEndPoint"}
12+
G -- "Yes" --> H["Receiver may try token exchange"]
13+
H --> I{"Exchange succeeds"}
14+
I -- "Yes" --> E
15+
I -- "No" --> J["Fall back to sharedSecret access"]
16+
G -- "No" --> J
17+
```

diagrams/share-creation-preflight.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ flowchart TD
1010
F --> G["Do not fall back to legacy access for that share"]
1111
D -- "No" --> H["Do not create the share"]
1212
13-
C -- "No" --> I{"Sender still wants strict code flow"}
14-
I -- "Yes" --> J["Include must-exchange-token voluntarily"]
13+
C -- "No" --> I{"What is the sender policy for this share"}
14+
I -- "Strict" --> J["Include must-exchange-token voluntarily"]
1515
J --> F
16-
I -- "No" --> K["Create legacy compatible share"]
16+
I -- "Legacy" --> K["Send legacy share without must-exchange-token"]
1717
```

0 commit comments

Comments
 (0)