loopbackio / loopbackio/loopback-next
How to report HttpErrors.Forbidden from authenticate action
Chưa có ai nhận issue này.
- Ngôn ngữ chính
- TypeScript
- Star
- 5.1k
- Fork
- 1.1k
- Merge trung bình
- 2 ngày 21 giờ
- Pull request đã merge (30 ngày)
- 27
Mô tả
Suggestion
I have implement JWTStrategy
every thing working fine. now I am trying to further authenticate according to user roles
e.g if logged in user is not ADMIN raised HttpErrors.Forbidden error
current strategy-adapter.js code only raise InternalServerError if I pass error in cb() of JWTStrategy
I have changed strategy-adapter.js
reject(new rest_1.HttpErrors.InternalServerError(error)); to
reject(error); and pass
cb(new HttpErrors.Forbidden(), false); in auth-strategy.provides.ts
which working according to my requirement
my question is there best way to implement changes in my code instead of changing in @loopback/authentication module directly
Existing CODE
@loopback/authentication/strategy-adapter.js
strategy.error = function (error) {
reject(new rest_1.HttpErrors.InternalServerError(error));
};
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Bắt đầu bằng cách đọc @loopback/authentication/strategy-adapter.js và cách sử dụng callback của auth-strategy.provides.ts được thể hiện trong issue. Truy vết cách các lỗi của strategy trở thành lỗi HTTP và xác định extension point được hỗ trợ nào sẽ giữ nguyên HttpErrors.Forbidden mà không chỉnh sửa trực tiếp module; được xem là hoàn tất khi lỗi role-authentication được truyền qua đường dẫn code ứng dụng được ghi chép.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- typescript
- Lĩnh vực
- authentication
- Loại issue
- Tính năng
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 25/100