diff --git a/changelog/unreleased/fix-ocm-invite.md b/changelog/unreleased/fix-ocm-invite.md new file mode 100644 index 0000000000..95391bad5b --- /dev/null +++ b/changelog/unreleased/fix-ocm-invite.md @@ -0,0 +1,5 @@ +Bugfix: Deny Users invite themselves to their own federated connection + +Deny Users invite themselves to their own federated connection + +https://github.com/cs3org/reva/pull/5077 \ No newline at end of file diff --git a/internal/grpc/services/ocminvitemanager/ocminvitemanager.go b/internal/grpc/services/ocminvitemanager/ocminvitemanager.go index ec36801334..05f92c91ae 100644 --- a/internal/grpc/services/ocminvitemanager/ocminvitemanager.go +++ b/internal/grpc/services/ocminvitemanager/ocminvitemanager.go @@ -170,6 +170,12 @@ func (s *service) ForwardInvite(ctx context.Context, req *invitepb.ForwardInvite return nil, err } + if req.GetOriginSystemProvider().Domain == s.conf.ProviderDomain { + return &invitepb.ForwardInviteResponse{ + Status: status.NewInvalid(ctx, "can not accept an invite from the same instance"), + }, nil + } + // Accept the invitation on the remote OCM provider remoteUser, err := s.ocmClient.InviteAccepted(ctx, ocmEndpoint, &client.InviteAcceptedRequest{ Token: req.InviteToken.GetToken(),