Authentication là gì? Lý do nên sử dụng Authentication là gì?

5/5 - (1 bình chọn)

Authentication là gì?

Authentication (tạm dịch:xác thực) là quá trình kiểm tra danh tính một tài khoản đang vào hệ thống hiện tại thông qua một hệ thống xác thực. Đây là bước ban đầu của mọi hệ thống có yếu tố người dùng.

Hiểu đơn giản, quá trình Authentication là đi tìm câu trả lời cho câu hỏi “Bạn là ai?”

Tại sao cần có Authentication?

Nếu không có bước xác thực này, hệ thống sẽ không biết được người đang truy cập vào hệ thống là ai để có các phản hồi phù hợp.

Quá trình này rất thông dụng trong hầu hết các CMS liên quan đến quản lý, tương tác người dùng thông qua form đăng ký (login form) và nó được xác thực dựa trên tên người dùng và mật khẩu (password-based authentication).

Lý do nên sử dụng Authentication là gì?

Nếu như bạn không thực hiện bước xác nhận này thì hệ thống hoàn toàn không thể biết được người đang truy cập vào hệ thống là ai. Hệ thống dựa vào bước xác thực này để có các phản hồi phù hợp nhất cho người dùng. Quá trình này được xem là rất thông dụng trong hầu hết CMS có liên quan đến quản lý, các tương tác người dùng thông qua form đăng ký và nó còn được xác thực dựa trên tên của người dùng cũng như mật khẩu.

Authentication có những nhân tố xác thực nào?

Bước xác thực này rất quen thuộc và thông dụng, thường biểu hiện ở hình thức đơn giản nhất chính là form đăng nhập vào hệ thống.

Mật khẩu (Password & Pin)

Mật khẩu là một trong những phương pháp đơn giản và dễ triển khai nhất.

Khi người dùng truy cập, mỗi hệ thống sẽ lưu lại mật khẩu ở dạng đã được mã hóa một chiều (md5, sha1, tự chế…) . Tính năng này sẽ đảm bảo mật khẩu có bị hack cũng không thể khôi phục thành chuỗi gốc.

Phương pháp này còn có nhiều biến thể như thiết kế dạng Swipe Pattern PIN (trong các điện thoại android) hoặc mật khẩu dùng một lần (dùng cho các chức năng quan trọng).

Khóa (Public-key cryptography)

Phương pháp này dựa trên thuật toán mã hóa khóa công cộng (public key) và khóa cá nhân (private key).

Để đăng nhập vào hệ thống, bạn chỉ cần có khóa cá nhân (private key) trên máy và đăng nhập vào hệ thống (nếu đã khai báo với khóa công cộng của bạn) mà không cần phải nhớ thông tin gì về đăng nhập như phương pháp mật khẩu.

Các hệ thống quản trị server thường áp dụng cách này.

Authentication là gì? Phân loại tổng quát Authentication 5

Sinh học (Biometrics)

Dùng như dấu vân tay, tròng mắt hoặc khuôn mặt là phương pháp dựa trên các yếu tố đặc trưng của con người để xác thực.

Ưu điểm của phương pháp này là “ID” và “mật khẩu” luôn đi cùng nhau nên bạn không cần lo lắng bị quên hay lạc mất. Mỗi khi cần đăng nhập vào hệ thống, bạn đều chủ động sử dụng dễ dàng mà không gặp bất cứ khó khăn gì.

Dù có nhiều phương pháp để xác thực một tài khoản, tuy nhiên cũng không tránh khỏi rủi ro khi triển khai như mất mật khẩu, mất khóa cá nhân, bị đánh cắp vân tay…

Áp dụng trên website, phương thức mật khẩu có vẻ là dễ triển khai và có nhiều lợi thế hơn vì thường thao tác trên màn hình và độ chính xác cao.

Chúng ta có thể cải tiến hệ thống bảo mật hơn như theo dõi thói quen đăng nhập, địa điểm, IP, trình duyệt, mật khẩu một lần…

Phân loại tổng quát Authentication

HTTP Basic Authentication

HTTP Basic Authentication là một kỹ thuật xác thực nhằm bảo mật cho ứng dụng web trên giao thức http, yêu cầu người dùng cung cấptên truy cậpmật khẩukhi sử dụng ứng dụng.

Web server thu thập thông tin và danh tính người dùng (username & password) qua một hộp thoại trên Browser.

Khi muốn bảo mật một tài nguyên, bạn có thể sử dụng nhiều cách nhưng có một cách khác đơn giản để bảo vệ là dùng HTTP Authentication.

Multi-factor Authentication (MFA)

Xác thực đa nhân tố (viết tắt: MFA) là một hệ thống bảo mật yêu cầu nhiều phương thức xác thực từ các danh mục thông tin đăng nhập độc lập để xác minh danh tính của người dùng cho thông tin đăng nhập hoặc giao dịch khác.

Xác thực Multi-factor kết hợp hai hoặc nhiều thông tin độc lập:

– password: mật khẩu.

– security token: mã thông báo bảo mật.

– biometric verification: xác minh sinh trắc học.

Tạo một lớp bảo vệ – tường thành vững chắc gây khó khăn cho một người không được phép truy cập vào một mục tiêu cụ thể, như: vị trí thực tế, thiết bị máy tính, mạng hoặc cơ sở dữ liệu là mục tiêu của MFA.

Nếu một yếu tố xác thực bị xâm phạm, kẻ tấn công vẫn phải vượt qua ít nhất một rào cản nữa để vi có thể xâm nhập trái phép thành công vào mục tiêu.

Tuỳ vào tính chất, nhu cầu sử dụng mà bạn cần tìm hiểu kĩ hơn để chọn một phương thức thích hợp với mình. Mọi thắc mắc và góp ý liên quan đến việc bảo mật cho website, xin vui lòng liên hệ ngay Tinohost để được tư vấn chi tiết nhé!

Với đội ngũ nhân viên chuyên môn cao, hệ thống máy mạnh mẽ cùng tinh thần tận tâm, tư vấn “đúng doanh nghiệp – đúng dịch vụ – đúng khả năng”, Tinohost tự tin cung cấp dịch vụ tên miền , hosting tối ưu và hệ thống máy chủ mạnh mẽ với chi phí tốt nhất cho doanh nghiệp của bạn.

Chỉ cần để lại thông tin cá nhân của bạn, chuyên viên tư vấn của Tinohost sẽ giúp bạn chọn được giải pháp tốt nhất cho tên miền và hosting, để công nghệ không phải là rào cản quá trình phát triển công ty bạn.

Sự khác biệt giữa Authentication và Authorization
– Authentication

Authentication là xác thực, chỉ quá trình định danh (hay xác định) một tài khoản đang vào hệ thống chính là người đó chứ không phải ai khác. Đây là bước ban đầu của mọi hệ thống có yếu tố người dùng. Nếu không có bước xác thực này, hệ thống của bạn sẽ không biết được người đang truy cập vào hệ thống là ai để có các phản hồi phù hợp

Bước xác thực này rất quen thuộc và thông dụng, thường biểu hiện ở hình thức đơn giản nhất chính là form đăng nhập vào hệ thống. Đây là mô hình xác thực dựa trên yếu tố “mật khẩu”. Mật khẩu là một trong những phương pháp được triển khai cho hệ thống xác thực (authentication). Một số phương thức xác thực thông dụng khác là khóa (public & private), sinh học (vân tay, tròng mắt, khuôn mặt)…

Sự khác biệt giữa Authentication và Authorization

– Authorization

Sau khi xác định được “danh tính” của tài khoản thì hệ thống mới chỉ trả lời được câu hỏi “Đó là ai?”, chúng ta sẽ tiến hành một bước quan trọng không kém đó là trả lời câu hỏi “Người đó có thể làm được gì?”, hay xác định quyền (phân quyền) của tài khoản hiện tại vừa mới được xác thực

Hệ thống của bạn có thể sẽ rất phức tạp bởi nhiều tính năng quan trọng và mạng lưới phòng ban dày đặc và cần phân chia quyền sử dụng rõ ràng nên việc thiết kế một hệ thống phân quyền cho từng thành viên là một việc làm cực kỳ quan trọng và cần thiết.

Để hệ thống “phân quyền” vận hành hoàn chỉnh, theo kinh nghiệm của mình thì bạn cần thiết kế hai thành phần riêng là phân quyền theo nhóm (Role-based) và phân quyền theo đối tượng (tài khoản…) cụ thể (Object-based)

Nguồn: Tổng hợp và tham khảo

Exit mobile version