This course covers advanced concepts in securing and optimizing GraphQL APIs, including authentication, authorization, rate limiting, data validation, and best practices for error handling and testing. Build robust and secure GraphQL APIs with these advanced techniques.
Securing GraphQL APIs
via CodeSignal
Overview
Syllabus
Authentication in GraphQL
- Secure the addBook Mutation with Authentication in GraphQL-Ruby
- Fixing Authentication in a GraphQL Ruby Sinatra Server
- Implementing Authentication and Login Mutation in a GraphQL Ruby Server
- Add an Authenticated addEvent Mutation to Your GraphQL Ruby Server
- Implementing Authentication and Mutations in a GraphQL Ruby Server
Role Based Access Control
- Fixing Role-Based Access Control for addBook Mutation in GraphQL-Ruby Server
- Adding a MODERATOR Role with Intermediate Permissions in RBAC
- Implementing Admin-Only Mutations for Product Management and Password Changes in GraphQL Ruby
- Implementing an Admin-Only addProduct Mutation with RBAC in GraphQL Ruby
Rate Limiting in GraphQL
- Change Rate Limiting to 3 Requests per 15 Seconds in Sinatra GraphQL API
- Fixing Rate Limiting Bugs in a Sinatra GraphQL API
- Add Rate Limiting to a Sinatra GraphQL API with rack-attack
- Implementing Multiple Rate Limits with Rack::Attack in Sinatra
Error Handling in GraphQL
- Adding Error Handling to a GraphQL Ruby Server
- Implement Error Handling for Book Queries and Mutations in GraphQL Ruby Server
- Custom Error Handling in GraphQL Ruby Server
- Building a GraphQL Server with Advanced Error Handling in Ruby
Testing GraphQL APIs
- Add published_year Field to BookType and Update Queries and Mutations
- Debugging and Testing GraphQL Queries and Mutations in Ruby
- Testing GraphQL Queries and Mutations with Direct Schema Execution in Ruby
- Building and Testing a GraphQL API for Car Management in Ruby