Nhảy tới nội dung

Webhook authentication

Hasura sẽ không handle phần authentication (authn) cho chúng ta mà chỉ cấp phần integration thông qua JWT mode hoặc Webhook mode.

Hasura Extra cung cấp phần authn thông qua webhook mode để integrate với Hasura, nếu so với JWT mode, webhook sẽ không tối ưu performance nhưng bù lại bạn có thể cung cấp được bất kỳ hình thức authn tùy theo yêu cầu của project thay vì chỉ mỗi JWT token và session variables được linh động hơn.

Cấu hình webhook mode

tip

Nếu như bạn sử dụng Laravel hoặc Symfony application template thì hãy bỏ qua tài liệu này vì template đã cấu hình giúp bạn.

Để cấu hình webhook mode bạn cần set HASURA_GRAPHQL_AUTH_HOOK env của Hasura container trỏ về url path /hasura-auth-hook và cập nhật guard trong file config config/hasura.php nếu như bạn sử dụng multi auth guards.

X-Hasura-Role header

Khi client send request đến Hasura có thể gửi kèm X-Hasura-Role header để chỉ định role cho request, nếu như user identifier của request KHÔNG sở hữu role được chỉ định thì request sẽ bị chặn lại.