หลักสูตรนี้จะเน้นการสร้างความปลอดภัยให้กับ Web API โดยจะเริ่มตั้งแต่ การทำความเข้าใจการทำงานของ API ในรูปแบบต่างๆ ทั้ง REST, GraphQL และ gRPC ซึ่ง ในหลักสูตรนี้เราจะเน้นที่ความปลอดภัยของ REST API เป็นหลักเนื่องจากเป็น Common practices ของการทำ Web API และปัญหาใหญ่ที่สุดของ API คือเรื่องของ Authorization เราจึงต้องทำความเข้าใจการทำงาน ของ OAuth2 (Authorization Framework ที่ถูก Implement มากที่สุด) เพื่อที่จะได้เลือก Flow การทำงานได้อย่างถูกต้อง
• เข้าใจการทำงานพื้นฐานของ REST API
• รู้จัก Technology ที่ใช้ในการทำ Web API
• เข้าใจธรรมชาติและปัญหาของ Web API
• เข้าใจการทำงานของ JWT และ OAuth2
• รู้ว่าต้องทำอย่างไรเพื่อให้ Web API ของเราปลอดภัย
• Software Engineer
• Software Developer
• Software Tester
Day 1
1. Overview of the API security
a. OWASP REST Security
b. OWASP REST Cheatsheet
c. Generic Web Service Security
d. RESTful web service
e. GraphQL
2. OWASP API Top 10
a. Broken Object Level Authorization
b. Broken Authentication
c. Broken Object Property Level Authorization
d. Unrestricted Resource Consumption
e. Broken Function Level Authorization
Day 2
3. OWASP API Top 10 (Cont.)
a. Unrestricted Access to Sensitive Business Flows
b. Server-Side Request Forgery
c. Security Misconfiguration
d. Improper Inventory Management
e. Unsafe Consumption of APIs
4. Secure RESTful API
a. Require https
b. Middleware concepts
c. Add CORS middleware
d. Secure API endpoints
e. API rate limiting
f. Self-documentation and HATEOAS
g. Logging and monitoring services
h. HTTP exception handling
i. Defence in depth with Microservices
Day 3
5. API Testing
a. Open API specification (OAS)
b. Automated testing with Postman
c. Scanning API with OWASP ZAP
6. Securing API with OAuth 2.0
a. Authentication and authorization
b. What is OAuth
c. What is Open ID Connect (OIDC)
d. How access token work
e. Add a token endpoints
f. OAuth grant types
g. Refresh token flow
h. Authorization server
i. Leveraging scopes
Our website uses both essential and non-essential cookies to analyze use of our products and services. This agreement applies to non-essential cookies only. By accepting, you are agreeing to third parties receiving information about your usage and activities. If you choose to decline this agreement, we will continue to use essential cookies for the operation of the website. View Policy