-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsession-uc.wsd
executable file
·51 lines (44 loc) · 1.44 KB
/
session-uc.wsd
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
@startuml
actor User
rectangle Services {
actor Verifier
actor AIVerifier
(SAAS Key Service)
(REST API)
(u2f Auth)
}
rectangle Client {
(Login API)
rectangle GunDB {
(Data Signing API)
(Group Filter)
frame "User Store" {
(Profile Key Storage)
(Group Key Storage)
(Session)
(User Immutable Data)
(Profile Templates)
}
(Group Membership)
(Active Profiles)
(Group Profile)
}
}
(Login API) --> (Session) : decrypts
(Login API) --> (Group Key Storage) : new auth
(Group Key Storage) <-> (u2f Auth) : optional
(Login API) --> (Profile Key Storage) : possible auth?
(Session) ...> (Group Key Storage) : cached key
(Session) ...> (Profile Key Storage) : cached key
(Profile Key Storage) .> (Profile Templates) : unlock profiles/personas
(Profile Templates) ..> (Active Profiles) : user select
(REST API) ..> (SAAS Key Service) : key escrow
Verifier --> (REST API) : legacy db
User --> (Login API) : login
Verifier --> (Data Signing API) : sign direct on gundb
AIVerifier --> (Data Signing API) : sign for groups based on verified attributes
(SAAS Key Service) --> (Data Signing API) : sign
(Data Signing API) --> (User Immutable Data) : sign/verifies data
(Data Signing API) --> (Profile Templates) : sign/verifies data
(Active Profiles) ..> (Group Profile) : get group profile
@enduml