Categories

Subscribe Now

* You will receive the latest news and updates on your favorite celebrities!

Automation Series

API Authentication Là Gì?
API

API Authentication Là Gì? 

Giả sử bạn đã đăng ký tài khoản ở một website, hai thông tin không thể thiếu là username và password. Những thông tin này được gọi là Credentials. Và những lần sau vào website, hệ thống chỉ cần kiểm tra thông tin Credentials của bạn.

Việc đăng nhập với username và password là 1 ví dụ của quá trình xác định danh tính – Authentication. Khi bạn chứng minh danh tính với server, bạn cung cấp thông tin mà chỉ có bạn và server biết. Một khi server biết bạn là ai, nó sẽ tin tưởng và cho phép bạn tiếp cận những thông tin bên trong.

Ví dụ ta yêu cầu Server lấy hoặc xóa User có ID là 01, và nếu chúng ta không sử dụng bất kì phương thức nào để bảo mật API thì tất cả các User khác điều có thể gọi tới các Request này để lấy thông tin hoặc xoá User 01 và Server sẽ thực hiện yêu cầu mà không cần biết yêu cầu này có phải là của User 01 hay không . Điều này rất nguy hiểm , các hacker có thể xóa hết dữ liệu hoặc đánh cắp thông tin người dùng bằng cách truy cập vào các URL này , cho nên ta cần một phương pháp nào đó để Server xác định được yêu cầu đó là của User01 thì Server mới thực hiện.

Trong API, có rất nhiều kỹ thuật để xử lý phần Authentication này. Chúng được gọi là Authentication schemes.

Basic Authentication

Ví dụ ở trên chính là Basic Authentication, hay được viết tắt là “Basic Auth”. Basic Auth thì chỉ yêu cầu username và password thôi. Client nhập hai thông tin trên rồi gửi chúng qua HTTP header cho Server, đây gọi là quá trình Authorization.

Khi Server nhận được request, nó sẽ phân tích Authorization header và so sánh thông tin đó với thông tin Credential được lưu ở Database. Nếu đúng, Server sẽ chấp thuận yêu cầu của Client và trả thêm các thông mà Client yêu cầu ở phần Body. Nếu không đúng, Server sẽ trả lại mã code 401, thông báo quá trình xác thực bị từ chối.

Mặc dù Basic Auth là kỹ thuật thường xuyên được sử dụng nhưng trên thực tế việc nó dùng cùng một usernamepassword để truy cập đến API và quản lý tài khoản là không lý tưởng. Hãy cùng tìm hiểu tiếp theo kỹ thuật tiếp theo

API Key Authentication

API Key Authentication là 1 kỹ thuật giúp xử lý điểm yếu của mô hình Basic Auth ở phía trên.  Key thông thường là 1 dãy dài số và chữ, là duy nhất và khác biệt với password.

Khi Client xác thực với API Key, Server sẽ biết để đồng ý cho Client truy cập tới data. Vậy thì API Key sẽ nằm ở vị trí nào trên request.

Related posts

Leave a Reply

Required fields are marked *

error: Content is protected !!