Split BlockStreamService in Publisher and Subscriber #380
AlfredoG87
started this conversation in
General
Replies: 1 comment 1 reply
-
A few thoughts:
Basically, we must, in my opinion, implement authentication and authorization (probably |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
this suggestion came from @nathanklick via a side note while discussing some other subjects with @mattp-swirldslabs
Currently we are exposing the GRPC webserver with the protobuf API definition on port 8080 (configurable)
However the service BlockStreamService contains 2 methods: (see here)
Both methods are intended to be consumed by completely different actors:
The argument is that MN, other BNs and in general subscribers should NOT be able to see the publish method.
Question: Should we separate the BlockStreamService in 2?
So we can have 2 separate web servers on the block-node.
Publish Methods: 8080 (current default port, but we can change it in the future)
Consumer Methods: 9090 (port is used only as an example)
Notes:
I don't want to advocate for this other alternative, but in the sake of completeness I believe that we can also expose the same service on both ports, and return a not allowed exception when trying to publish (assuming that is the port for consumers)
The publishers should be able to see both methods of the service, or all the services in case we split them, the limitation should only apply to consumers, so they are not capable of publishing.
For the whole API Spec, see here the protobuf definition
Beta Was this translation helpful? Give feedback.
All reactions