Client Character Movement

I am a bit lost on how to handle character movement on a client machine, specifically sprinting.

At the moment I have assigned a button to adjust “CharacterMovement->MaxWalkSpeed” however this only works on the server and is ignored on the client.

I thought that this would be replicated as a part of the character but it may be needing some kind of RPC so that the server governs the speed.

What would be the best way to handle this?

I would say an RPC from the client to the server is the way to go, in addition to setting MaxWalkSpeed clientside to get the movement predicted correctly.