110 lines
5.1 KiB
Plaintext
110 lines
5.1 KiB
Plaintext
|
@startuml
|
||
|
|
||
|
!theme vibrant
|
||
|
skinparam linetype ortho
|
||
|
left to right direction
|
||
|
|
||
|
package "External Ports (0.0.0.0)" as ExternalPorts {
|
||
|
interface "tcp/80 (HTTP)" as PortServerHTTP
|
||
|
}
|
||
|
|
||
|
node "SSO Server" as SSOServer {
|
||
|
package "Internal Ports (127.0.0.1)" as InternalPorts {
|
||
|
interface "tcp/4444 (Hydra Public)" as PortHydraPublic
|
||
|
interface "tcp/4445 (Hydra Admin)" as PortHydraAdmin
|
||
|
interface "tcp/3000 (Hydra Dispatcher)" as PortHydraDispatcher
|
||
|
interface "tcp/3001 (Hydra Passwordless)" as PortHydraPasswordless
|
||
|
interface "tcp/3002 (Shibboleth SP)" as PortShibbolethSP
|
||
|
interface "tcp/3003 (Hydra Remote User)" as PortHydraRemoteUser
|
||
|
}
|
||
|
|
||
|
package "Containers" as Containers {
|
||
|
[cadoles-pod-hydra-v1] as ContainerHydra
|
||
|
[cadoles-pod-hydra-dispatcher-v1] as ContainerHydraDispatcher
|
||
|
[cadoles-pod-hydra-passwordless-v1] as ContainerHydraPasswordless
|
||
|
[cadoles-pod-hydra-remote-user-v1] as ContainerHydraRemoteUser
|
||
|
[cadoles-pod-shibboleth-sp-v3] as ContainerShibbolethSP
|
||
|
}
|
||
|
|
||
|
package "Files" as Filesystem {
|
||
|
frame "/etc/haproxy/haproxy.cfg" as HAProxyConfFile
|
||
|
frame "/etc/cadoles-pod-hydra-v1.conf" as HydraConfFile
|
||
|
frame "/etc/cadoles-pod-hydra-dispatcher-v1.conf" as HydraDispatcherConfFile
|
||
|
frame "/etc/hydra-dispatcher/conf.d/*.yml" as HydraDispatcherAppsConfFile
|
||
|
frame "/etc/hydra/clients.d/*.json" as HydraClientConfFile
|
||
|
frame "/etc/cadoles-pod-hydra-remote-user-v1.conf" as HydraRemoteUserConfFile
|
||
|
frame "/etc/hydra-remote-user/conf.d/*.yml" as HydraRemoteUserMappingsConfFile
|
||
|
frame "/etc/cadoles-pod-hydra-passwordless-v1.conf" as HydraPasswordlessConfFile
|
||
|
frame "/etc/cadoles-pod-shibboleth-sp-v3.conf" as ShibbolethSPConfFile
|
||
|
frame "/etc/shibboleth/credentials/*" as ShibbolethSPCredentialsFile
|
||
|
}
|
||
|
|
||
|
package "Packages" as Packages {
|
||
|
[cadoles-pod-hydra-v1] as PackageHydra
|
||
|
[cadoles-pod-hydra-dispatcher-v1] as PackageHydraDispatcher
|
||
|
[cadoles-pod-hydra-remote-user-v1] as PackageHydraRemoteUser
|
||
|
[cadoles-pod-hydra-shibboleth-sp-v3] as PackageShibbolethSP
|
||
|
[cadoles-pod-hydra-passwordless-v1] as PackageHydraPasswordless
|
||
|
[haproxy] as PackageHAProxy
|
||
|
}
|
||
|
|
||
|
package "Services" as Services {
|
||
|
[cadoles-pod-hydra-v1] as ServiceHydra
|
||
|
[cadoles-pod-hydra-dispatcher-v1] as ServiceHydraDispatcher
|
||
|
[cadoles-pod-shibboleth-sp-v3] as ServiceShibbolethSP
|
||
|
[cadoles-pod-hydra-remote-user-v1] as ServiceHydraRemoteUser
|
||
|
[cadoles-pod-hydra-passwordless-v1] as ServiceHydraPasswordless
|
||
|
[haproxy] as ServiceHAProxy
|
||
|
}
|
||
|
|
||
|
PackageHAProxy ..up.> PortServerHTTP: binds
|
||
|
|
||
|
ServiceHAProxy ...> PortHydraPublic : exposes (/)
|
||
|
ServiceHAProxy ...> PortHydraDispatcher : exposes (/auth/dispatcher)
|
||
|
ServiceHAProxy ...> PortHydraPasswordless : exposes (/auth/passwordless)
|
||
|
ServiceHAProxy ...> PortShibbolethSP : exposes (/auth/saml)
|
||
|
|
||
|
ContainerHydra ...> PortHydraPublic : binds
|
||
|
ContainerHydra ...> PortHydraAdmin : binds
|
||
|
ContainerHydraDispatcher ...> PortHydraDispatcher : binds
|
||
|
ContainerShibbolethSP ...> PortShibbolethSP : binds
|
||
|
ContainerHydraPasswordless ...> PortHydraPasswordless : binds
|
||
|
ContainerHydraRemoteUser ...> PortHydraRemoteUser : binds
|
||
|
ContainerShibbolethSP ..> PortHydraRemoteUser : proxies
|
||
|
|
||
|
ServiceHydra ...> ContainerHydra: manages
|
||
|
ServiceHydraDispatcher ...> ContainerHydraDispatcher: manages
|
||
|
ServiceShibbolethSP ...> ContainerShibbolethSP: manages
|
||
|
ServiceHydraPasswordless ...> ContainerHydraPasswordless: manages
|
||
|
ServiceHydraRemoteUser ...> ContainerHydraRemoteUser: manages
|
||
|
|
||
|
ContainerHydra ...> HydraConfFile : uses
|
||
|
ContainerHydra ...> HydraClientConfFile : uses
|
||
|
ContainerHydraDispatcher ...> HydraDispatcherConfFile : uses
|
||
|
ContainerHydraDispatcher ...> HydraDispatcherAppsConfFile : uses
|
||
|
ContainerHydraPasswordless ...> HydraPasswordlessConfFile : uses
|
||
|
ContainerHydraRemoteUser ...> HydraRemoteUserConfFile : uses
|
||
|
ContainerHydraRemoteUser ...> HydraRemoteUserMappingsConfFile : uses
|
||
|
ContainerShibbolethSP ...> ShibbolethSPConfFile : uses
|
||
|
ContainerShibbolethSP ...> ShibbolethSPCredentialsFile : creates
|
||
|
|
||
|
PackageHAProxy ...> HAProxyConfFile : deploys
|
||
|
PackageHydra ...> HydraConfFile : deploys
|
||
|
PackageHydraDispatcher ...> HydraDispatcherConfFile : deploys
|
||
|
PackageHydraRemoteUser ...> HydraRemoteUserConfFile : deploys
|
||
|
PackageShibbolethSP ...> ShibbolethSPConfFile : deploys
|
||
|
|
||
|
PackageHAProxy ...> ServiceHAProxy : deploys
|
||
|
PackageHydra ...> ServiceHydra : deploys
|
||
|
PackageHydraDispatcher ...> ServiceHydraDispatcher : deploys
|
||
|
PackageHydraRemoteUser ...> ServiceHydraRemoteUser : deploys
|
||
|
PackageHydraPasswordless ...> ServiceHydraPasswordless : deploys
|
||
|
|
||
|
PackageHydra ...> ContainerHydra : deploys
|
||
|
PackageHydraDispatcher ...> ContainerHydraDispatcher : deploys
|
||
|
PackageHydraRemoteUser ...> ContainerHydraRemoteUser : deploys
|
||
|
PackageShibbolethSP ...> ContainerShibbolethSP : deploys
|
||
|
PackageHydraPasswordless ...> ContainerHydraPasswordless : deploys
|
||
|
}
|
||
|
|
||
|
@enduml
|