title: Protecting Web Services
body: <p>I've got a WebService project that we've created to expose some methods to our clients (specifically if they call one of the methods it will trigger an event on our servers) that they can call in their own C# projects (some clients will be doing web form apps and some will be doing it on their internal site).</p>
  
  <p>Due to the nature of the method, one of the parameters is a string which identifies who the client is (so we can trigger the appropriate event) and I'm not overly confident this is enough to prevent people from sending random data until they stumble upon one of the valid identifiers.</p>
  
  <p>What is the standard way of protecting something like this from abuse?  Most of the tutorials I find don't seem to mention anything about keeping them secure.  Thanks!</p>