Skip to content

[WPB-28050] New oauth scopes for meetings for calendar integration. (part 1) - #5462

Merged
fisx merged 5 commits into
developfrom
WPB-28050-new-oauth-scopes-for-meetings-for-google-calendar-integration
Aug 21, 2026
Merged

[WPB-28050] New oauth scopes for meetings for calendar integration. (part 1)#5462
fisx merged 5 commits into
developfrom
WPB-28050-new-oauth-scopes-for-meetings-for-google-calendar-integration

Conversation

@fisx

@fisx fisx commented Aug 19, 2026

Copy link
Copy Markdown
Contributor

https://wearezeta.atlassian.net/browse/WPB-28050

Checklist

  • Add a new entry in an appropriate subdirectory of changelog.d
  • Read and follow the PR guidelines

@zebot zebot added the ok-to-test Approved for running tests in CI, overrides not-ok-to-test if both labels exist label Aug 19, 2026
@MarianKijewski

Copy link
Copy Markdown

@fisx To be exact, you can remove "google" from the title and changelog, as it's for both gmail and outlook.

@fisx fisx changed the title [WPB-28050] New oauth scopes for meetings for google calendar integration. [WPB-28050] New oauth scopes for meetings for calendar integration. Aug 20, 2026
@fisx
fisx force-pushed the WPB-28050-new-oauth-scopes-for-meetings-for-google-calendar-integration branch from f7bafda to 75b59f6 Compare August 20, 2026 10:40
@fisx
fisx marked this pull request as ready for review August 20, 2026 10:40
@fisx
fisx requested review from a team as code owners August 20, 2026 10:40
@fisx

fisx commented Aug 20, 2026

Copy link
Copy Markdown
Contributor Author

There is a complication: we have a "write implies read" rule in libzauth, so we can't grant oauth access to PUT, but deny it on GET for the same path.

Solutions:

  1. make libzauth scope rules more flexible (expensive)
  2. grant read access to writers under GET /meetings/:dom/:id.

I have implemented 2 in 75b59f6.

@MarianKijewski

Copy link
Copy Markdown

There is a complication: we have a "write implies read" rule in libzauth, so we can't grant oauth access to PUT, but deny it on GET for the same path.

Solutions:

  1. make libzauth scope rules more flexible (expensive)
  2. grant read access to writers under GET /meetings/:dom/:id.

I have implemented 2 in 75b59f6.

Or 3rd option. Change backend API so GET /meetings/:dom/:id and POST /meetings don't exist on same OAuth scope plane, by for example:
a) changing the creation path to /meetings/create. Not really RESTful naming, but some way out.
b) changing scope naming convention to include path parameters.

@fisx

fisx commented Aug 20, 2026

Copy link
Copy Markdown
Contributor Author

We decided to do it right.

  1. only add the write:meetings scope on /meetings and leave out the ones that are impacted by the limitation of libzauth
  2. make libzauth scope rules more flexible so that this fixed for future use cases and we can grant scopes/permissions more granularly aligned with the principle of least privilege

@fisx fisx changed the title [WPB-28050] New oauth scopes for meetings for calendar integration. [WPB-28050] New oauth scopes for meetings for calendar integration. (part 1) Aug 21, 2026
@fisx
fisx force-pushed the WPB-28050-new-oauth-scopes-for-meetings-for-google-calendar-integration branch from 75b59f6 to 6e0c3bc Compare August 21, 2026 09:23
@fisx
fisx force-pushed the WPB-28050-new-oauth-scopes-for-meetings-for-google-calendar-integration branch from 6e0c3bc to bf34335 Compare August 21, 2026 09:37
@fisx
fisx merged commit 853bb1f into develop Aug 21, 2026
5 of 7 checks passed
@fisx
fisx deleted the WPB-28050-new-oauth-scopes-for-meetings-for-google-calendar-integration branch August 21, 2026 13:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ok-to-test Approved for running tests in CI, overrides not-ok-to-test if both labels exist

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants