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

Bạn xây dựng GraphQL DataLoader như thế nào để giảm số lần truy cập DB?

senior

Bạn dùng công cụ nào để monitor GraphQL query performance? (ví dụ: Apollo Studio, GraphQL Hive...)

middle

Khi hệ thống cần scale schema trên nhiều team, bạn tổ chức schema registry và ownership thế nào?

Bình luận

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

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