Skip to content

Commit 01cfe9a

Browse files
authored
Merge pull request #45 from linuxfoundation/andrest50/past-meetings
[LFXV2-375] Add a past_meeting type to the openfga authorization model
2 parents 8f28ab5 + acf71c9 commit 01cfe9a

File tree

2 files changed

+29
-3
lines changed

2 files changed

+29
-3
lines changed

charts/lfx-platform/Chart.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ apiVersion: v2
55
name: lfx-platform
66
description: LFX Platform v2 Helm chart
77
type: application
8-
version: 0.2.3
8+
version: 0.2.4
99
icon: https://github.com/linuxfoundation/lfx-v2-helm/raw/main/img/lfx-logo-color.svg
1010
dependencies:
1111
- name: traefik

charts/lfx-platform/templates/openfga/model.yaml

Lines changed: 28 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ metadata:
1212
spec:
1313
instances:
1414
- version:
15-
major: 2
15+
major: 3
1616
minor: 0
1717
patch: 0
1818
authorizationModel: |
@@ -56,6 +56,8 @@ spec:
5656
relations
5757
define project: [project]
5858
define committee: [committee]
59+
# The auditor relation identifies a user who can audit this meeting.
60+
define auditor: auditor from project
5961
# The organizer relation identifies a user who can manage this one meeting.
6062
# That means they can update the meeting details, invite/uninvite participants, etc.
6163
define organizer: [user] or meeting_coordinator from project or writer from project
@@ -76,5 +78,29 @@ spec:
7678
# The viewer relation identifies a user who can view this meeting.
7779
# If the meeting is public, then any user can view it; but if it is private, then
7880
# only certain privileged users can view it.
79-
define viewer: [user:*] or participant or organizer or auditor from project
81+
define viewer: [user:*] or participant or organizer or auditor
82+
83+
type past_meeting
84+
relations
85+
define project: [project]
86+
define committee: [committee]
87+
# The meeting relation identifies the meeting that this past meeting was created from.
88+
# Note: it is possible that the meeting no longer exists, so having permissions on the
89+
# meeting become obsolete if the meeting is deleted.
90+
define meeting: [meeting]
91+
# The auditor relation identifies a user who can audit this meeting.
92+
define auditor: auditor from project or auditor from meeting
93+
# The organizer relation identifies a user who can manage this one past meeting.
94+
# That means they can update the past meeting details, update the participants, etc.
95+
define organizer: [user] or meeting_coordinator from project or writer from project or organizer from meeting
96+
# The host relation identifies a user who was a host of this past meeting.
97+
define host: [user] or organizer
98+
# The invitee relation identifies a participant who was invited to this past meeting.
99+
define invitee: [user]
100+
# The attendee relation identifies a participant who attended this past meeting.
101+
define attendee: [user]
102+
# The viewer relation identifies a user who can view this past meeting.
103+
# If the past meeting is public, then any user can view it; but if it is private, then
104+
# only certain privileged users can view it.
105+
define viewer: [user:*] or attendee or invitee or organizer or auditor
80106
{{- end }}

0 commit comments

Comments
 (0)