xuanduy1508
Junior Member
Chào mọi người, em đây mới học về Jwt và em có một thắc mắc refresh token có thực sự giải quyết vấn đề không ạ.
Nếu như em hiểu thì:
user login => nhận access token (at) có thời hạn ngắn và refresh token (rt) có thời hạn dài => gửi request thì kèm cả hai at và rt vào header => nếu at còn thời hạn thì cho đụng vào resource, nếu không còn thời hạn thì cung cấp at và rt mới và lưu rt cũ vào blacklist.
Nếu em hiểu sai flow trên thì mong mọi người thông cảm, và đây là câu hỏi của em:
Refresh token được cho rằng có tác dụng như sau:
+ "Tại vì access token thời hạn ngắn, với refresh token thì người dùng không cần đăng nhập lại khi hết hạn access token. Thay vào đó, refresh token tự động lấy access token mới, duy trì trạng thái đăng nhập và cho phép sử dụng ứng dụng liên tục."=> Vậy thì sao không tăng thời gian hết hạn của access token luôn cho khoẻ ạ?
+"Access token có thời gian hiệu lực ngắn, do đó, việc lộ lọt cũng chỉ ảnh hưởng trong thời gian ngắn. Sau khi hết hạn, refresh token sẽ được sử dụng để lấy access token mới, giúp giảm thiểu thiệt hại do rò rỉ thông tin." => Rõ ràng là at và rt đều lưu chung trong cookie, đều được gửi lên cùng với request. Vậy thì nếu ăn cắp dc at thì cũng ăn cắp dc rt. Có rt thì xin at cái rụp thì em cũng không rõ là nó tăng bảo mật chỗ này như nào ạ.
+"Nếu hoạt động đáng ngờ được phát hiện trên tài khoản của người dùng, refresh token của họ có thể bị revoke để ngăn chặn kẻ tấn công sử dụng nó để truy cập tài khoản." => ủa thì at một mình nó cũng có thể revoke được mà, mắc gì cần refresh token chi ạ @@
Và một câu hỏi bonus về việc "nhận biết hành động đáng ngờ" em coi được ở vid này
:
(tóm tắt em lấy ở dưới cmt như sau:
1 Cả RT và AT đều cùng được cấp mới mỗi lần tạo mới AT, và lưu lại RT cũ. 2 Một khi RT cũ bị sử dụng lại (không cần phân biệt user hay hacker) thì hủy toàn bộ RT đang hoạt động. 3 User đăng nhập lại và lấy RT mới.
). Em chả thấy lý do gì mà thằng hacker phải xài rt cũ cả, lúc mà nó dùng rt để xin cặp at và rt mới thì nó cũng nhận được rt mới mà. Vậy thì mắc mớ gì nó xài rt cũ chi ạ @@.
Em mới học nên ngu mụi, mong được mọi người giải đáp
Nếu như em hiểu thì:
user login => nhận access token (at) có thời hạn ngắn và refresh token (rt) có thời hạn dài => gửi request thì kèm cả hai at và rt vào header => nếu at còn thời hạn thì cho đụng vào resource, nếu không còn thời hạn thì cung cấp at và rt mới và lưu rt cũ vào blacklist.
Nếu em hiểu sai flow trên thì mong mọi người thông cảm, và đây là câu hỏi của em:
Refresh token được cho rằng có tác dụng như sau:
+ "Tại vì access token thời hạn ngắn, với refresh token thì người dùng không cần đăng nhập lại khi hết hạn access token. Thay vào đó, refresh token tự động lấy access token mới, duy trì trạng thái đăng nhập và cho phép sử dụng ứng dụng liên tục."=> Vậy thì sao không tăng thời gian hết hạn của access token luôn cho khoẻ ạ?
+"Access token có thời gian hiệu lực ngắn, do đó, việc lộ lọt cũng chỉ ảnh hưởng trong thời gian ngắn. Sau khi hết hạn, refresh token sẽ được sử dụng để lấy access token mới, giúp giảm thiểu thiệt hại do rò rỉ thông tin." => Rõ ràng là at và rt đều lưu chung trong cookie, đều được gửi lên cùng với request. Vậy thì nếu ăn cắp dc at thì cũng ăn cắp dc rt. Có rt thì xin at cái rụp thì em cũng không rõ là nó tăng bảo mật chỗ này như nào ạ.
+"Nếu hoạt động đáng ngờ được phát hiện trên tài khoản của người dùng, refresh token của họ có thể bị revoke để ngăn chặn kẻ tấn công sử dụng nó để truy cập tài khoản." => ủa thì at một mình nó cũng có thể revoke được mà, mắc gì cần refresh token chi ạ @@
Và một câu hỏi bonus về việc "nhận biết hành động đáng ngờ" em coi được ở vid này
(tóm tắt em lấy ở dưới cmt như sau:
1 Cả RT và AT đều cùng được cấp mới mỗi lần tạo mới AT, và lưu lại RT cũ. 2 Một khi RT cũ bị sử dụng lại (không cần phân biệt user hay hacker) thì hủy toàn bộ RT đang hoạt động. 3 User đăng nhập lại và lấy RT mới.
). Em chả thấy lý do gì mà thằng hacker phải xài rt cũ cả, lúc mà nó dùng rt để xin cặp at và rt mới thì nó cũng nhận được rt mới mà. Vậy thì mắc mớ gì nó xài rt cũ chi ạ @@.
Em mới học nên ngu mụi, mong được mọi người giải đáp


