Câu hỏi phỏng vấn GraphQL
Câu hỏi

Khi có user A query data của user B bằng ID, bạn hạn chế thông tin như thế nào trong resolver?

Câu trả lời

markdown
Khi user A query data của user B bằng ID trong resolver, việc hạn chế thông tin cần chú ý các điểm sau:

Kiểm tra quyền truy cập:

  • Xác thực token: Đảm bảo rằng user A có token xác thực hợp lệ và chưa hết hạn trước khi xử lý request.
  • Xác minh vai trò: Chỉ cho phép các vai trò nhất định (như admin) hoặc chính chủ sở hữu dữ liệu thực hiện các query này.
  • Thiết lập ACL (Access Control List): Áp dụng ACL để quản lý chi tiết từng trường dữ liệu có thể được truy cập bởi user A.

Filter và hạn chế giới hạn dữ liệu:

  • Giới hạn trường dữ liệu trả về: Chỉ cho trả về các trường dữ liệu cơ bản, không bao gồm các thông tin nhạy cảm như số điện thoại, email, hoặc địa chỉ.
  • Ẩn trường nhạy cảm: Với mỗi request, chỉ cung cấp dữ liệu cần thiết và đ...
middle

middle

Gợi ý câu hỏi phỏng vấn

middle

Làm sao để rate limit hoặc block query lặp lại với payload quá lớn

middle

Làm sao để chống spam query (DoS) qua introspection hoặc batching abuse?

middle

GraphQL không phân biệt public/private route – bạn xử lý security theo kiểu nào?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào