yep - security is a good reason to *break* all the implementations out there.
- announce the security flaw
- publish a new component/interface w/ assistance on migrating (or a running proxy until consumers can write their new consumer code)
- kill the old components (ASAP)
it's basically a case where you (the API provider) confess a terrible mistake and inconvenience your API consumers in order to maintain the security of your data/users.
do that enough times, and ppl will figure out you stink at security and find another provider<g>.