Skip to content

Conversation

@strantalis
Copy link
Member

@strantalis strantalis commented Nov 4, 2024

Depends On: #1709

To transition to ConnectRPC and register service handlers effectively, we need to utilize generics. The reason for this is that the generated ConnectRPC code for creating handlers enforces strong typing:

NewXServiceHandler(svc XServiceHandler, opts ...connect.HandlerOption)

For reference, see an example here:

https://github.com/opentdf/platform/blob/0ef65d410a8e1bc8b82f52b6a4f0f469a2f7f4fe/protocol/go/policy/kasregistry/kasregistryconnect/key_access_server_registry.connect.go#L190C51-L190C88

By leveraging generics, we can maintain type safety while also keeping interceptors centrally managed. This approach ensures that no individual service can inadvertently modify the interceptor list, helping maintain consistent security and functionality across all services.

@strantalis strantalis requested review from a team as code owners November 4, 2024 23:17
pflynn-virtru
pflynn-virtru previously approved these changes Nov 5, 2024
jakedoublev
jakedoublev previously approved these changes Nov 5, 2024
@strantalis strantalis added this pull request to the merge queue Nov 6, 2024
Merged via the queue into opentdf:main with commit ce289a4 Nov 6, 2024
21 checks passed
@strantalis strantalis deleted the dsp-201/service-registry-modifications branch November 6, 2024 22:39
github-merge-queue bot pushed a commit that referenced this pull request Nov 7, 2024
Depends On: #1715 

This is needed because we can't use the
[realip](https://github.com/grpc-ecosystem/go-grpc-middleware/tree/main/interceptors/realip)
interceptor with connectrpc.

---------

Co-authored-by: Jake Van Vorhis <[email protected]>
github-merge-queue bot pushed a commit that referenced this pull request Nov 14, 2024
🤖 I have created a release *beep* *boop*
---


##
[0.4.27](service/v0.4.26...service/v0.4.27)
(2024-11-14)


### Features

* **authz:** JWT ERS that just returns claims
([#1630](#1630))
([316b5be](316b5be))
* **authz:** Remove org-admin role, move privileges to admin role
([#1740](#1740))
([ae931d0](ae931d0))
* backend migration to connect-rpc
([#1733](#1733))
([d10ba3c](d10ba3c))
* connectrpc realip interceptor
([#1728](#1728))
([292fca0](292fca0))
* **docs:** add policy ADR for LIST limit and pagination
([#1557](#1557))
([069f939](069f939))
* move from fasthttp in-memory listener to memhttp implementation
([#1709](#1709))
([70518ff](70518ff))
* **policy:** 1603 policy improve upsertattrfqn
([#1679](#1679))
([cd17a44](cd17a44))
* **policy:** 1651 move GetAttributesByValueFqns RPC request validation
to protovalidate
([#1657](#1657))
([c7d6b15](c7d6b15))
* **policy:** 1659 spike on transactions support
([#1678](#1678))
([a6fea11](a6fea11))
* **policy:** add optional name field to registered KASes in policy
([#1636](#1636))
([f1382c1](f1382c1))
* **policy:** add optional name field to registered KASes in policy
([#1641](#1641))
([b277ab4](b277ab4))
* **policy:** limit/offset throughout LIST protos/gencode
([#1668](#1668))
([7de6cce](7de6cce))
* **policy:** SPIKE transactions support
([#1663](#1663))
([866f4f3](866f4f3))
* **policy:** subject condition sets prune protos/gencode
([#1687](#1687))
([a627e02](a627e02))
* **policy:** subject condition sets prune service/db
([#1688](#1688))
([3cdd1b2](3cdd1b2)),
closes [#1178](#1178)
* update service registry in preperation for connectrpc migration
([#1715](#1715))
([ce289a4](ce289a4))


### Bug Fixes

* cleanup left over status.Error in favor of connect.NewError
([#1751](#1751))
([acea8d1](acea8d1))
* **core:** Autobump service
([#1726](#1726))
([39a898d](39a898d))
* **core:** Autobump service
([#1739](#1739))
([46662a7](46662a7))
* **core:** Autobump service
([#1750](#1750))
([4b239b1](4b239b1))
* Fixtures CodeQL alert for potentially unsafe quoting
([#1703](#1703))
([6f2fa9b](6f2fa9b))
* **kas:** Only hit authorization if data attributes not empty
([#1741](#1741))
([471f5f1](471f5f1))
* **policy:** enhance proto validation across policy requests
([#1656](#1656))
([df534c4](df534c4))
* **policy:** make MatchSubjectMappings operator agnostic
([#1658](#1658))
([cb63819](cb63819))
* **policy:** REVERT PR
[#1663](#1663) - SPIKE
transactions support
([#1719](#1719))
([184a733](184a733))
* **policy:** schema markdown links should work
([#1672](#1672))
([4122262](4122262))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: opentdf-automation[bot] <149537512+opentdf-automation[bot]@users.noreply.github.com>
github-merge-queue bot pushed a commit that referenced this pull request May 5, 2025
### Proposed Changes

* Fix interface changes, relating to
#1715

### Checklist

- [ ] I have added or updated unit tests
- [ ] I have added or updated integration tests (if appropriate)
- [x] I have added or updated documentation

### Testing Instructions
jakedoublev pushed a commit that referenced this pull request May 6, 2025
### Proposed Changes

* Fix interface changes, relating to
#1715

### Checklist

- [ ] I have added or updated unit tests
- [ ] I have added or updated integration tests (if appropriate)
- [x] I have added or updated documentation

### Testing Instructions
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.

4 participants