blob: f833aa20050510e658034317f535d22b87b7d6e3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
@startuml
' skinparam linetype ortho
' skinparam groupInheritance 2
allowmixing
!include classdiagram-authentication.puml
!include classdiagram-episode-actions.puml
!include classdiagram-model.puml
!include classdiagram-subscriptions.puml
!include classdiagram-util.puml
class SecurityConfigurationBasicAuth {
<<create>> SecurityConfigurationBasicAuth()
PasswordEncoder encoder()
UserDetailsManager userDetailsService()
SecuryFilterChain fiterChain(HTTPSecurity http) throws Excpetion
}
note top
Erstellt einen Servlet Filter (springSecurityFilterChain)
der für die gesamte Sicherheit zuständig ist (Schutz der URLs,
Validierung von Anmeldedaten, Weiterleitung zur Anmeldung, etc.).
end note
class PSEApplication {
<<create>> PSEApplication()
void main(String[] args)
}
database Datenbank
Datenbank <-[hidden]d- subscriptionsAPI
Datenbank <-[hidden]d- episodeActionsAPI
Datenbank <-[hidden]d- authenticationAPI
() SQL as SQLSub
() SQL as SQLAuth
() SQL as SQLEpisode
Datenbank -- SQLSub
Datenbank -- SQLAuth
Datenbank -- SQLEpisode
Subscription --o SubscriptionTitles
EpisodeActionPost -o SubscriptionTitles
UserDetailsManager <.. SecurityConfigurationBasicAuth: <<use>>
SubscriptionController ..o PSEApplication
AuthenticationController ..o PSEApplication
EpisodeActionController ..o PSEApplication
SecurityConfigurationBasicAuth ..o PSEApplication
PSEApplication --() HTTP
SQLSub )-- SubscriptionDataAccessService: JPA
' SQLAuth )-- AuthenticationDataAccessService: JPA
SQLAuth )-- JdbcUserDetailsManager: JDBC
SQLEpisode )-- EpisodeActionDataAccessService: JPA
RSSParser <. SubscriptionDataAccessService: <<use>>
RSSParser <. EpisodeActionDataAccessService: <<use>>
' JdbcUserDetailsManager <-- CleanCronJob
model .o Datenbank: ORM (User, SubscriptionAction, Subscription, EpisodeAction, Episode)
' Datenbank o.. Subscription: ORM
' Datenbank o.. SubscriptionAction: ORM
' Datenbank o.. Episode: ORM
' Datenbank o.. EpisodeAction: ORM
' Datenbank o.. User: ORM
@enduml
|