@startuml
participant GUIUser as guiuser order 1
participant SDNCGUI as sdncgui order 2
participant UserSDNC as usersdnc order 3
participant OAUthProvider as oauth order 4
gui -> sdnc: GET /oauth/providers
sdnc --> gui: providers array
user -> gui: Select OAuth provider
gui -> oauth: /loginForm
oauth --> gui: redirect to redirectURI
gui -> sdnc: GET /oauth/redirect with params
sdnc -> oauth:POST /oauth2/token with params
oauth -> sdnc: OAuthToken with roles
sdnc -> sdnc: create odl bearer token with with roles
sdnc -> gui: odl bearer token
@enduml |