Securing web services: Fundamentals, lessons learned, common vulnerabilities, and security strategies