Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: #19020 Check permissions using native Postgres functions to support GROUPs and ROLEs based access control #19021

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

edeesis
Copy link

@edeesis edeesis commented Oct 18, 2024

I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.

What's changed and what's your intention?

Update the SQL queries being run in the PostgresValidator to properly take into account GROUP and ROLE permissions.

This PR updates both the RDS Role check (for servers running in AWS) and the SELECT privilege check, to confirm that the PG user being used has those roles

Before, you had to GRANT the role to the user itself and explicitly GRANT SELECTs if the user wasn't the owner of the table.

See details in #19020

Checklist

  • I have written necessary rustdoc comments
  • I have added necessary unit tests and integration tests
  • I have added test labels as necessary. See details.
  • I have added fuzzing tests or opened an issue to track them. (Optional, recommended for new SQL features Sqlsmith: Sql feature generation #7934).
  • My PR contains breaking changes. (If it deprecates some features, please create a tracking issue to remove them in the future).
  • All checks passed in ./risedev check (or alias, ./risedev c)
  • My PR changes performance-critical code. (Please run macro/micro-benchmarks and show the results.)
  • My PR contains critical fixes that are necessary to be merged into the latest release. (Please check out the details)

Documentation

  • My PR needs documentation updates. (Please use the Release note section below to summarize the impact on users)

Release note

If this PR includes changes that directly affect users or other significant modifications relevant to the community, kindly draft a release note to provide a concise summary of these changes. Please prioritize highlighting the impact these changes will have on users.

The Postgres CDC source now fully supports GROUPs and ROLEs instead of requiring explicit permissions on USERs.

…ctions to support GROUPs and ROLEs based access control
@edeesis
Copy link
Author

edeesis commented Oct 18, 2024

It's unclear why the Connector Node Integration Tests are failing. The one that's failing is

Error: Errors:
Error: PostgresSourceTest.testLines:145 » Execution io.grpc.StatusRuntimeException: UNKNOWN

I can look deeper, but if anyone has an idea, I'm happy for the help.

Copy link
Contributor

This PR has been open for 60 days with no activity.

If it's blocked by code review, feel free to ping a reviewer or ask someone else to review it.

If you think it is still relevant today, and have time to work on it in the near future, you can comment to update the status, or just manually remove the no-pr-activity label.

You can also confidently close this PR to keep our backlog clean. (If no further action taken, the PR will be automatically closed after 7 days. Sorry! 🙏)
Don't worry if you think the PR is still valuable to continue in the future.
It's searchable and can be reopened when it's time. 😄

@StrikeW StrikeW removed their request for review January 20, 2025 07:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant