Skip to content

Commit a90336b

Browse files
committed
[DOP-21576] Update schema
1 parent 33591c8 commit a90336b

File tree

1 file changed

+23
-24
lines changed

1 file changed

+23
-24
lines changed

docs/reference/server/auth/keycloak.rst

Lines changed: 23 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -22,82 +22,81 @@ Interaction schema
2222

2323
@startuml
2424
title DummyAuthProvider
25-
participant "Client"
25+
participant "Frontend"
2626
participant "Backend"
2727
participant "Keycloak"
2828

29-
== Client Authentication at Keycloak ==
29+
== Frontend Authentication at Keycloak ==
3030

31-
Client -> Backend : Request endpoint with authentication (/v1/locations)
31+
Frontend -> Backend : Request endpoint with authentication (/v1/locations)
3232

33-
Backend x-[#red]> Client: 401 with redirect url in 'details' response field
33+
Backend x-[#red]> Frontend: 401 with redirect url in 'details' response field
3434

35-
Client -> Keycloak : Redirect user to Keycloak login page
35+
Frontend -> Keycloak : Redirect user to Keycloak login page
3636

3737
alt Successful login
38-
Client --> Keycloak : Log in with login and password
38+
Frontend --> Keycloak : Log in with login and password
3939
else Login failed
40-
Keycloak x-[#red]> Client -- : Display error (401 Unauthorized)
40+
Keycloak x-[#red]> Frontend -- : Display error (401 Unauthorized)
4141
end
4242

43-
Keycloak -> Client : Callback to Client /callback which is proxy between Keycloak and Backend
43+
Keycloak -> Frontend : Callback to Frontend /callback which is proxy between Keycloak and Backend
4444

45-
Client -> Backend : Send request to Backend '/v1/auth/callback'
45+
Frontend -> Backend : Send request to Backend '/v1/auth/callback'
4646

4747
Backend -> Keycloak : Check original 'state' and exchange code for token's
4848
Keycloak --> Backend : Return token's
49-
Backend --> Client : Set token's in user's browser in cookies
50-
Clietn --> Client : Get response from backend and redirect to /locations
49+
Backend --> Frontend : Set token's in user's browser in cookies
5150

52-
Client --> Backend : Request to /v1/locations
51+
Frontend --> Backend : Request to /v1/locations with session cookies
5352
Backend -> Backend : Get user info from token and check user in internal backend database
5453
Backend -> Backend : Create user in internal backend database if not exist
55-
Backend -[#green]> Client -- : Return requested data
54+
Backend -[#green]> Frontend -- : Return requested data
5655

5756

5857
== GET v1/datasets ==
5958

6059

6160
alt Successful case
62-
"Client" -> "Backend" ++ : access_token
61+
"Frontend" -> "Backend" ++ : access_token
6362
"Backend" --> "Backend" : Validate token
6463
"Backend" --> "Backend" : Check user in internal backend database
6564
"Backend" -> "Backend" : Get data
66-
"Backend" -[#green]> "Client" -- : Return data
65+
"Backend" -[#green]> "Frontend" -- : Return data
6766

6867
else Token is expired (Successful case)
69-
"Client" -> "Backend" ++ : access_token, refresh_token
68+
"Frontend" -> "Backend" ++ : access_token, refresh_token
7069
"Backend" --> "Backend" : Validate token
7170
"Backend" -[#yellow]> "Backend" : Token is expired
7271
"Backend" --> "Keycloak" : Try to refresh token
7372
"Backend" --> "Backend" : Validate new token
7473
"Backend" --> "Backend" : Check user in internal backend database
7574
"Backend" -> "Backend" : Get data
76-
"Backend" -[#green]> "Client" -- : Return data
75+
"Backend" -[#green]> "Frontend" -- : Return data
7776

7877
else Create new User
79-
"Client" -> "Backend" ++ : access_token
78+
"Frontend" -> "Backend" ++ : access_token
8079
"Backend" --> "Backend" : Validate token
8180
"Backend" --> "Backend" : Check user in internal backend database
8281
"Backend" --> "Backend" : Create new user
8382
"Backend" -> "Backend" : Get data
84-
"Backend" -[#green]> "Client" -- : Return data
83+
"Backend" -[#green]> "Frontend" -- : Return data
8584

8685
else Token is expired and bad refresh token
87-
"Client" -> "Backend" ++ : access_token, refresh_token
86+
"Frontend" -> "Backend" ++ : access_token, refresh_token
8887
"Backend" --> "Backend" : Validate token
8988
"Backend" -[#yellow]> "Backend" : Token is expired
9089
"Backend" --> "Keycloak" : Try to refresh token
91-
"Backend" x-[#red]> "Client" -- : RedirectResponse can't refresh
90+
"Backend" x-[#red]> "Frontend" -- : RedirectResponse can't refresh
9291

9392
else Bad Token payload
94-
"Client" -> "Backend" ++ : access_token, refresh_token
93+
"Frontend" -> "Backend" ++ : access_token, refresh_token
9594
"Backend" --> "Backend" : Validate token
96-
"Backend" x-[#red]> "Client" -- : 307 Authorization error
95+
"Backend" x-[#red]> "Frontend" -- : 307 Authorization error
9796

9897
end
9998

100-
deactivate "Client"
99+
deactivate "Frontend"
101100
@enduml
102101

103102

0 commit comments

Comments
 (0)