Skip to content

Publish OrgService access-management subset (grants, groups, directory reads)#14

Open
Konyaka1 wants to merge 1 commit into
mainfrom
aliaksei/orgsvc-public-protos
Open

Publish OrgService access-management subset (grants, groups, directory reads)#14
Konyaka1 wants to merge 1 commit into
mainfrom
aliaksei/orgsvc-public-protos

Conversation

@Konyaka1

@Konyaka1 Konyaka1 commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Summary

Publishes the OrgService access-management surface so external clients — first among them the Terraform provider — can manage per-resource permission grants and principal groups. This is the first of three coordinated changes (apis → priv → terraform); priv re-adds the private RPCs/fields via its override layer, and the Terraform provider builds against this surface.

The surface was deliberately trimmed rather than graduated wholesale: only the RPCs a client needs are exposed, and messages that embed internal concepts are published as minimal copies.

Protos

  • New package splitsecure/authz/v1 with the Tier enum (view < use < edit), shared by grants.
  • New splitsecure/orgsvc/v1/OrgService with a focused RPC set:
    • Grants: PutGrant, GetGrant, DeleteGrant, ListGrantsByResource.
    • Groups: CreateGroup, GetGroup, ListGroups, UpdateGroup, DeleteGroup, AddGroupMembers, RemoveGroupMember, ListGroupMembers.
    • Directory reads: GetOrganization, ListMembers, GetServiceAccounts.
  • Member, Organization, and GroupMember are published as minimal copies (e.g. Member carries only user_id/email/display_name); role/source/state enums, org lifecycle/lock details, and the request signing envelope stay private. priv overrides these files to restore its richer internal versions in the staged tree.

Generated code

  • Regenerated gen/go and gen/es via bufgen.sh; committed so consumers can go get without codegen.

Compatibility

  • Purely additive — two new packages, no changes to existing protos — so buf breaking is clean.

Graduate per-resource grants (PutGrant/GetGrant/DeleteGrant/
ListGrantsByResource), group CRUD + membership, and directory reads
(GetOrganization, ListMembers, GetServiceAccounts) from the priv
overlay, plus the new splitsecure.authz.v1.Tier package. Member,
Organization, and GroupMember are published as minimal copies; the
signed request envelope is omitted from public reads. The priv staging
tree re-adds the rich versions via overrides.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown

The latest Buf updates on your PR. Results from workflow Buf CI / buf (pull_request).

BuildFormatLintBreakingUpdated (UTC)
✅ passed✅ passed✅ passed✅ passedJul 9, 2026, 6:11 PM

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