I.Authentication vs Authorization
Nói một cách đơn giản, Authentication (xác thực) là quá trình xác minh người dùng là ai, trong khi Authorization (ủy quyền) là quá trình xác minh những gì họ có quyền truy cập.Theo Wikipedia là một hành động nhằm thiết lập hoặc chứng thực một cái gì đó (hoặc một người nào đó) đáng tin cậy, có nghĩa là, những lời khai báo do người đó đưa ra hoặc về vật đó là sự thật

Một ví dụ trong thế giới thực mà các bạn hay gặp,khi bạn nhập “Username ” và “Password” của mình vào trang đăng nhập của trường để chứng minh bạn là ai thì đây gọi là Authentication. Sau đó,khi bạn đăng nhập xong ,hệ thống sẽ kiểm tra xem bạn có quyền truy cập những gì ,chẳng hạn như: tài liệu môn mà bạn đang học,điểm của bạn… nếu bạn là sinh viên, bạn có thể xem điểm của từng sinh viên trong lớp nếu bạn là giáo viên chủ nhiệm… Đó được gọi là Authorization.
II.Các nhân tố xác thực trong Authentication
- Mật khẩu (Password)
Là một cách thức xác thực đơn giản nhất và được nhiều nền tảng sử dụng. Khi người dùng truy cập vào một hệ thống nào đó thì hệ thống này đều sẽ lưu lại mật khẩu dưới dạng mã hoá một chiều (md5i, kk6e,… hoặc tùy ý).
Khi đặt mật khẩu, bạn nên chú ý đặt mật khẩu mạnh và khó nhớ, ví dụ như dãy kí tự dài và kèm theo các kí tự đặc biệt.
- Khóa (Public-key Cryptography)
Khá ít dùng với người dùng phổ thông,việc sử dụng khoá trong phương pháp này dựa trên việc mã hoá khoá công cộng(public key) và khoá cá nhân (private key).
Phương pháp này cho phép người dùng đăng nhập vào hệ thống chỉ bằng việc sử dụng khoá cá nhân đã tồn tại trên thiết bị, mà không cần ghi nhớ thông tin cơ bản như tên người dùng và mật khẩu.
- Sinh trắc học (Biometrics)
Phương pháp xác minh sinh trắc học dựa trên các đặc trưng cá nhân như vân tay và khuôn mặt…
Ví dụ:xác thực bằng cảm biến vân tay,khuôn mặt trên các dòng điện thoại di động,máy tính bảng .
III.Lổ hổng Authentication phát sinh như thế nào?
Nói chung, hầu hết các lỗ hổng trong cơ chế xác thực phát sinh theo một trong hai cách:
1.Các cơ chế xác thực yếu vì chúng không bảo vệ đầy đủ trước các cuộc tấn công “brute-force”
2.Lỗi logic hoặc mã hóa kém trong quá trình triển khai cho phép kẻ tấn công bỏ qua hoàn toàn các cơ chế xác thực. Điều này đôi khi được gọi là “broken authentication”(xác thực bị hỏng)
Ví dụ của Share4happy: Video dưới đây lợi dụng chức năng đặt lại mật khẩu Logic bị hỏng.
Bảng so sanh tổng quan nhanh về Authentication và Authorization
| Authentication | Authorization |
|---|---|
| Authentication xác nhận danh tính của bạn để cấp quyền truy cập vào hệ thống. | Authorization xác định xem bạn có được phép truy cập tài nguyên không. |
| Đây là quá trình xác nhận thông tin đăng nhập để có quyền truy cập của người dùng. | Đó là quá trình xác minh xem có cho phép truy cập hay không. |
| Nó quyết định liệu người dùng có phải là những gì anh ta tuyên bố hay không. | Nó xác định những gì người dùng có thể và không thể truy cập. |
| Authentication thường yêu cầu tên người dùng và mật khẩu. | Các yếu tố xác thực cần thiết để authorization có thể khác nhau, tùy thuộc vào mức độ bảo mật. |
| Authentication là bước đầu tiên của authorization vì vậy luôn luôn đến trước. | Authorization được thực hiện sau khi authentication thành công. |
