OAuth Security: Common Vulnerabilities and Fixes