Skip to content

Commit e55e1c8

Browse files
fix: improve rpc.skip-auth (#3152)
1 parent 01585ba commit e55e1c8

File tree

3 files changed

+24
-25
lines changed

3 files changed

+24
-25
lines changed

api/rpc/server.go

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -61,15 +61,14 @@ func (s *Server) verifyAuth(_ context.Context, token string) ([]auth.Permission,
6161

6262
// RegisterService registers a service onto the RPC server. All methods on the service will then be
6363
// exposed over the RPC.
64-
func (s *Server) RegisterService(namespace string, service interface{}) {
65-
s.rpc.Register(namespace, service)
66-
}
64+
func (s *Server) RegisterService(namespace string, service interface{}, out interface{}) {
65+
if s.authDisabled {
66+
s.rpc.Register(namespace, service)
67+
return
68+
}
6769

68-
// RegisterAuthedService registers a service onto the RPC server. All methods on the service will
69-
// then be exposed over the RPC.
70-
func (s *Server) RegisterAuthedService(namespace string, service interface{}, out interface{}) {
7170
auth.PermissionedProxy(perms.AllPerms, perms.DefaultPerms, service, getInternalStruct(out))
72-
s.RegisterService(namespace, out)
71+
s.rpc.Register(namespace, out)
7372
}
7473

7574
func getInternalStruct(api interface{}) interface{} {

api/rpc_test.go

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -306,15 +306,15 @@ func setupNodeWithAuthedRPC(t *testing.T, auth jwt.Signer) (*nodebuilder.Node, *
306306
// given the behavior of fx.Invoke, this invoke will be called last as it is added at the root
307307
// level module. For further information, check the documentation on fx.Invoke.
308308
invokeRPC := fx.Invoke(func(srv *rpc.Server) {
309-
srv.RegisterAuthedService("state", mockAPI.State, &statemod.API{})
310-
srv.RegisterAuthedService("share", mockAPI.Share, &share.API{})
311-
srv.RegisterAuthedService("fraud", mockAPI.Fraud, &fraud.API{})
312-
srv.RegisterAuthedService("header", mockAPI.Header, &header.API{})
313-
srv.RegisterAuthedService("das", mockAPI.Das, &das.API{})
314-
srv.RegisterAuthedService("p2p", mockAPI.P2P, &p2p.API{})
315-
srv.RegisterAuthedService("node", mockAPI.Node, &node.API{})
316-
srv.RegisterAuthedService("blob", mockAPI.Blob, &blob.API{})
317-
srv.RegisterAuthedService("da", mockAPI.DA, &da.API{})
309+
srv.RegisterService("fraud", mockAPI.Fraud, &fraud.API{})
310+
srv.RegisterService("das", mockAPI.Das, &das.API{})
311+
srv.RegisterService("header", mockAPI.Header, &header.API{})
312+
srv.RegisterService("state", mockAPI.State, &statemod.API{})
313+
srv.RegisterService("share", mockAPI.Share, &share.API{})
314+
srv.RegisterService("p2p", mockAPI.P2P, &p2p.API{})
315+
srv.RegisterService("node", mockAPI.Node, &node.API{})
316+
srv.RegisterService("blob", mockAPI.Blob, &blob.API{})
317+
srv.RegisterService("da", mockAPI.DA, &da.API{})
318318
})
319319
// fx.Replace does not work here, but fx.Decorate does
320320
nd := nodebuilder.TestNode(t, node.Full, invokeRPC, fx.Decorate(func() (jwt.Signer, error) {

nodebuilder/rpc/constructors.go

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -28,15 +28,15 @@ func registerEndpoints(
2828
daMod da.Module,
2929
serv *rpc.Server,
3030
) {
31-
serv.RegisterAuthedService("fraud", fraudMod, &fraud.API{})
32-
serv.RegisterAuthedService("das", daserMod, &das.API{})
33-
serv.RegisterAuthedService("header", headerMod, &header.API{})
34-
serv.RegisterAuthedService("state", stateMod, &state.API{})
35-
serv.RegisterAuthedService("share", shareMod, &share.API{})
36-
serv.RegisterAuthedService("p2p", p2pMod, &p2p.API{})
37-
serv.RegisterAuthedService("node", nodeMod, &node.API{})
38-
serv.RegisterAuthedService("blob", blobMod, &blob.API{})
39-
serv.RegisterAuthedService("da", daMod, &da.API{})
31+
serv.RegisterService("fraud", fraudMod, &fraud.API{})
32+
serv.RegisterService("das", daserMod, &das.API{})
33+
serv.RegisterService("header", headerMod, &header.API{})
34+
serv.RegisterService("state", stateMod, &state.API{})
35+
serv.RegisterService("share", shareMod, &share.API{})
36+
serv.RegisterService("p2p", p2pMod, &p2p.API{})
37+
serv.RegisterService("node", nodeMod, &node.API{})
38+
serv.RegisterService("blob", blobMod, &blob.API{})
39+
serv.RegisterService("da", daMod, &da.API{})
4040
}
4141

4242
func server(cfg *Config, auth jwt.Signer) *rpc.Server {

0 commit comments

Comments
 (0)