- Tổng đài 24/7: 1800 646 881
- Đăng nhập
- 3
Hiện tại rất nhiều nền tảng khác nhau như Google, Facebook,… sử dụng OAuth. Chính sự phát triển mạnh mẽ đã thúc đẩy phần mềm OAuth cải tiến và ra mắt phiên bản mới nhất là OAuth 2.0. Vậy OAuth 2.0 là gì? Nó có vai trò như thế nào? Cách thức hoạt động ra sao? Hãy cùng BKHOST tìm hiểu ngay trong bài viết dưới đây.
OAuth 2.0 là phiên bản mới nhất của giao thức OAuth (Open Authorization), nó đã thay thế cho OAuth 1.0 vào năm 2012. OAuth 2.0 là một tiêu chuẩn được thiết kế để một website hoặc ứng dụng được phép thay mặt người dùng truy cập vào tài nguyên được lưu trữ ở ứng dụng web khác.
OAuth 2.0 cung cấp quyền truy cập để các ứng dụng chia sẻ tài nguyên với nhau mà không cần xác thực thông tin đăng nhập. Điều này không chỉ giúp bạn tiết kiệm thời gian mà còn tránh phiền toái khi phải nhớ vô số tài khoản đăng nhập ở các ứng dụng khác nhau.
OAuth 2.0 là một giao thức ủy quyền chứ không phải là giao thức xác thực, vì vậy có thể xem nó như một phương tiện dùng để cấp quyền truy cập vào tài nguyên của ứng dụng.
OAuth 2.0 sử dụng mã thông báo truy cập (Access tokens) để cấp quyền truy cập vào tài nguyên cho website và ứng dụng. Mã thông báo truy cập sẽ không được OAuth 2.0 định dạng cụ thể. Tuy nhiên ở một số trường hợp định dạng JSON Web Token (JWT) thường được sử dụng. Bên cạnh đó vì lý do bảo mật nên mã thông báo truy cập có thể có ngày hết hạn.
Trong OAuth 2.0 định nghĩa 4 vai trò sau:
Trong OAuth 2.0 phạm vi là một khái niệm khá quan trọng. Chúng được sử dụng nhằm mục đích chỉ định chính xác lý do cấp quyền truy cập vào tài nguyên. Resource Server quyết định tới việc xác định giá trị phạm vi ở tài nguyên mà ứng dụng và web được phép truy cập.
Nếu để lộ Access token (mã truy cập) thì nguy cơ tài nguyên bị kẻ xấu lấy cắp rất cao. Vì thế Authorization Server có thể không trực tiếp trả lại Access token sau khi Resource Owner có quyền truy cập. Để bảo mật tốt hơn, Authorization Code (mã ủy quyền) được trả lại và đổi lấy Access token.
Bên cạnh đó Authorization Server cũng phát hành Refresh token (mã mới). Nếu Access token thời gian hiệu lực chỉ tầm 2 giờ thì Refresh token có thể lên tới 10 giờ. Khi Access token hết hạn client sẽ dùng Refresh token để đổi lấy Access token mới.
Ở cấp độ cơ bản nhất, trước khi dùng OAuth 2.0 Client phải được Authorization Server cấp đầy đủ thông tin đăng nhập riêng, client ID và client secret để nhận dạng và xác thực chính nó khi yêu cầu Access token.
Khi sử dụng OAuth 2.0, các yêu cầu truy cập do chính client tạo ra, chẳng hạn như ứng dụng dành cho website, điện thoại di động, tivi thông minh, desktop…Yêu cầu Access token, trao đổi và phản hồi thông tin tuân thủ theo các bước sau:
Để sử dụng OAuth2, client phải thực hiện các bước để được cấp ủy quyền truy cập tài nguyên. Tập hợp các bước đó gọi là Grant Type. Dưới đây Authorization framework cung cấp một số loại Grant Type để giải quyết các trường hợp khác nhau, cụ thể:
Bài viết trên chúng tôi đã tổng hợp những thông tin liên quan tới OAuth 2.0. Hy vọng với kiến thức có được bạn sẽ có đánh giá khách quan, chính xác để sử dụng phần mềm hữu ích này.
Nếu bạn bất cứ câu hỏi nào liên quan đến OAuth 2.0hoặc muốn tìm hiểu thêm những thông tin khác, hãy để lại ở bên bình luận bên dưới, BKHOST sẽ trả lời bạn trong thời gian sớm nhất.
P/s: Bạn cũng có thể truy cập vào Blog của BKHOST để đọc thêm các bài viết chia sẻ kiến thức về lập trình, quản trị mạng, website, domain, hosting, vps, server, email,… Chúc bạn thành công.
Thuê Cloud VPS Cao Cấp tại BKHOST
Giảm giá cực sâu, chất lượng hàng đầu. Đăng ký ngay hôm nay: