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

DIG-1502: Opa implements user-specific authorizations #55

Merged
merged 9 commits into from
May 1, 2024

Conversation

daisieh
Copy link
Member

@daisieh daisieh commented Apr 26, 2024

Candigv2-authx will implement the lists for pending_users and user authorizations in vault. Assuming that those are already there, this PR does the following on the Opa side:

  • Gets the user's specific program authorization lists from Vault, calculates which programs the user is authorized to view, and allows the user to read programs they are either team members of or are specifically authorized to view.
  • Adds DELETE operations as separately-authorized paths. Users authorized to curate can also delete.
  • Adds tests for all of this.

Initialization will also create the empty pending_users list if it doesn't already exist.

Also instead of using the running instance's CLIENT_ID, we should be able to check the one in the aud that we've picked up when registering a federated server.

BONUS: There is now a github action that runs pytest automatically.

@kcranston
Copy link
Member

Couple of documentation notes:

  • Can you update the permissions_engine/readme.md with the changes?
  • Either add some text to the top-level readme that points to the other (or we could merge them and just have one in the root dir)
  • documentation somewhere about what endpoints are available, and that many (most?) operation goes through the authz library, not OPA directly

@daisieh
Copy link
Member Author

daisieh commented Apr 29, 2024

I updated and moved the readme. The endpoints are in ingest, as documented in the readme, not in authx.

@kcranston kcranston merged commit 0e9f58a into develop May 1, 2024
2 checks passed
Copy link
Member

@kcranston kcranston left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM now, merging

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants