docu: Zur Verdeutlichung des Vorgehen UML schreiben
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
@startuml
|
||||
'https://plantuml.com/sequence-diagram
|
||||
|
||||
actor Veranstalter
|
||||
actor IT
|
||||
boundary "Auth-Website" as AuthUI
|
||||
control "Auth-API" as AuthAPI
|
||||
database "Auth-Datenbank" as AuthDB
|
||||
|
||||
Veranstalter -> IT : anfrage Account
|
||||
activate AuthUI
|
||||
IT -> AuthUI : Login
|
||||
IT -> AuthUI : Neuer //Veranstalter//
|
||||
Veranstalter -> AuthUI : Angabe Benutzername
|
||||
AuthUI -> AuthAPI : Erstellung //Veranstalter//
|
||||
AuthAPI -> AuthAPI : Erstellung //OPT-Token//
|
||||
AuthAPI -> AuthDB : Speicherung der Daten des //Veranstalter//
|
||||
AuthUI <-- AuthAPI : OTP-Token für die //OTP-App//
|
||||
Veranstalter <--AuthUI : OTP-Token für die //OTP-App//
|
||||
|
||||
@enduml
|
||||
@@ -0,0 +1,29 @@
|
||||
@startuml
|
||||
'https://plantuml.com/sequence-diagram
|
||||
|
||||
actor Veranstalter
|
||||
actor Client
|
||||
boundary "Auth-Website" as AuthUI
|
||||
control "Auth-API" as AuthAPI
|
||||
control "OTP-API" as OTP
|
||||
database "Auth-Datenbank" as AuthDB
|
||||
|
||||
Veranstalter -> Client : Anfrage mitarbeit?
|
||||
Client -> AuthUI : Aufruf Webseite Login
|
||||
Veranstalter -> AuthUI : Eintragung //Benutzername//-Client
|
||||
Veranstalter -> AuthUI : Eintragung //Benutzername//-Veranstalter
|
||||
Veranstalter -> AuthUI : Eintragung Rollen-Client
|
||||
Veranstalter -> AuthUI : Eintragung gültiges //OPT//
|
||||
AuthUI -> AuthAPI : Anfrage nach //Web-Token//
|
||||
AuthAPI -> AuthDB : Anfrage nach Veranstalter-Daten
|
||||
AuthAPI -> OTP : Prüfung OTP
|
||||
return
|
||||
alt OTP ist ok
|
||||
AuthAPI -> AuthDB : Speichere Daten
|
||||
AuthAPI -> AuthAPI : Erstelle //Web-Token//
|
||||
AuthUI <-- AuthAPI : //Web-Token//
|
||||
Client <-- AuthUI : //Web-Token//
|
||||
else OTP ist nicht ok
|
||||
AuthUI <-- AuthAPI : HTTP-Error 401
|
||||
end
|
||||
@enduml
|
||||
@@ -0,0 +1,36 @@
|
||||
@startuml
|
||||
'https://plantuml.com/activity-diagram-beta
|
||||
|
||||
start
|
||||
:Client möchte App-Server abfragen;
|
||||
:Client sendet Token>
|
||||
partition App-Server {
|
||||
if (Token nicht in der Datenbank) then (Ja)
|
||||
:Sende Token an Auth-Server>
|
||||
partition Auth-Server {
|
||||
:Überprüfe Token|
|
||||
:Sende Ergebnis<
|
||||
}
|
||||
if (Token ist gültig) then (Ja)
|
||||
:Speichere Token und Verfallsdatum
|
||||
in Datenbank/
|
||||
else
|
||||
:Sende HTTP-Code 401<
|
||||
stop
|
||||
endif
|
||||
else
|
||||
if (Token ist verfalle) then (Ja)
|
||||
:Sende HTTP-Code 401<
|
||||
stop
|
||||
endif
|
||||
endif
|
||||
:Rolle aus Token überprüfen]
|
||||
if (Rolle erlaubt Abfrage) then (Ja)
|
||||
:Abfrage ausführen|
|
||||
else
|
||||
:Sende HTTP-Code 403<
|
||||
endif
|
||||
}
|
||||
stop
|
||||
|
||||
@enduml
|
||||
@@ -0,0 +1,28 @@
|
||||
@startuml
|
||||
'https://plantuml.com/sequence-diagram
|
||||
|
||||
actor Client
|
||||
boundary "App-Website" as AppUI
|
||||
control "App-Rest-API" as AppAPI
|
||||
|
||||
Client -> AppUI : Anfrage an Webseite
|
||||
AppUI -> AppAPI : Anfrage an Webseite
|
||||
Client --> AppUI : //Web-Token//
|
||||
AppUI --> AppAPI : //Web-Token//
|
||||
AppAPI -> AppAPI : //Web-Token// überprüfen
|
||||
alt //Web-Token// ist gültig
|
||||
AppAPI -> AppAPI : Client-Rolle überprüfen
|
||||
alt Rolle ist gültig
|
||||
AppAPI -> AppAPI : Anfrage auswerten
|
||||
AppUI <-- AppAPI :
|
||||
Client <-- AppUI :
|
||||
else
|
||||
AppUI <- AppAPI : HTTP-Code 403
|
||||
Client <- AppUI : HTTP-Code 403
|
||||
end
|
||||
else
|
||||
AppUI <- AppAPI : HTTP-Code 401
|
||||
Client <- AppUI : HTTP-Code 401
|
||||
end
|
||||
|
||||
@enduml
|
||||
@@ -0,0 +1,30 @@
|
||||
@startuml
|
||||
'https://plantuml.com/component-diagram
|
||||
|
||||
|
||||
node Webseite {
|
||||
component UI
|
||||
folder Cookies
|
||||
UI <--> Cookies
|
||||
}
|
||||
node "App-API" {
|
||||
component API
|
||||
database "DB" as AppDB {
|
||||
folder "Clients" as BekannteClients
|
||||
}
|
||||
API <--> AppDB
|
||||
}
|
||||
node "Auth-API" {
|
||||
component "API" as AuthAPI
|
||||
database "DB" as AuthDB{
|
||||
folder "Administratoren"
|
||||
folder "Veranstalter"
|
||||
folder "Clients"
|
||||
}
|
||||
AuthAPI <--> AuthDB
|
||||
}
|
||||
|
||||
UI <-> API
|
||||
API <-> AuthAPI
|
||||
|
||||
@enduml
|
||||
Reference in New Issue
Block a user