Tôi thấy từ này trong hầu hết các ứng dụng dịch vụ chéo ngày nay.
Chính xác thì khóa API là gì và công dụng của nó là gì?
Ngoài ra, sự khác biệt giữa khóa API công khai và riêng tư là gì.
Tôi thấy từ này trong hầu hết các ứng dụng dịch vụ chéo ngày nay.
Chính xác thì khóa API là gì và công dụng của nó là gì?
Ngoài ra, sự khác biệt giữa khóa API công khai và riêng tư là gì.
Câu trả lời:
Khóa API được sử dụng để làm gì "chính xác" phụ thuộc rất nhiều vào người phát hành nó và những dịch vụ mà nó được sử dụng. Tuy nhiên, nói chung, khóa API là tên được đặt cho một số dạng mã thông báo bí mật được gửi cùng với các yêu cầu dịch vụ web (hoặc tương tự) để xác định nguồn gốc của yêu cầu. Khóa có thể được bao gồm trong một số thông báo về nội dung yêu cầu để xác minh thêm nguồn gốc và ngăn chặn việc giả mạo các giá trị.
Thông thường, nếu bạn có thể xác định nguồn của một yêu cầu một cách tích cực, nó hoạt động như một hình thức xác thực, có thể dẫn đến kiểm soát truy cập. Ví dụ: bạn có thể hạn chế quyền truy cập vào các hành động API nhất định dựa trên ai đang thực hiện yêu cầu. Đối với các công ty kiếm tiền từ việc bán các dịch vụ như vậy, đó cũng là một cách để theo dõi ai đang sử dụng thiết bị cho mục đích thanh toán. Hơn nữa, bằng cách chặn khóa, bạn có thể ngăn chặn một phần lạm dụng trong trường hợp khối lượng yêu cầu quá cao.
Nói chung, nếu bạn có cả khóa API công khai và riêng tư, thì điều đó cho thấy rằng bản thân các khóa đó là một cặp khóa công khai / riêng tư truyền thống được sử dụng trong một số dạng mật mã không đối xứng hoặc có liên quan, ký kỹ thuật số. Đây là những kỹ thuật an toàn hơn để xác định tích cực nguồn của yêu cầu và ngoài ra, để bảo vệ nội dung của yêu cầu khỏi bị theo dõi (ngoài việc giả mạo).
Nói chung chung:
Một khóa API chỉ đơn giản là xác định bạn.
Nếu có sự phân biệt công khai / riêng tư, thì khóa công khai là khóa mà bạn có thể phân phối cho người khác, để cho phép họ lấy một số thông tin con về bạn từ api. Khóa riêng tư chỉ dành cho bạn sử dụng và cung cấp quyền truy cập vào tất cả dữ liệu của bạn.
Có vẻ như nhiều người sử dụng khóa API như một giải pháp bảo mật. Điểm mấu chốt là: Không bao giờ coi các khóa API là bí mật . Trên https hoặc không, bất kỳ ai có thể đọc yêu cầu đều có thể thấy khóa API và có thể thực hiện bất kỳ lệnh gọi nào họ muốn. Khóa API chỉ nên là mã định danh 'người dùng' vì nó không phải là giải pháp bảo mật hoàn chỉnh ngay cả khi được sử dụng với ssl.
Mô tả tốt hơn là trong liên kết Eugene Osovetsky: Khi làm việc với hầu hết các API, tại sao chúng yêu cầu hai loại xác thực, đó là khóa và bí mật? Hoặc kiểm tra http://nordicapis.com/why-api-keys-are-not-enough/
Khóa API là một giá trị duy nhất được chỉ định cho người dùng dịch vụ này khi anh ta được chấp nhận là người dùng dịch vụ.
Dịch vụ duy trì tất cả các khóa đã phát hành và kiểm tra chúng theo từng yêu cầu.
Bằng cách xem khóa được cung cấp theo yêu cầu, dịch vụ sẽ kiểm tra xem đó có phải là khóa hợp lệ hay không để quyết định cấp quyền truy cập cho người dùng hay không.
Hãy nghĩ theo cách này, "Khóa API công khai" tương tự như tên người dùng mà cơ sở dữ liệu của bạn đang sử dụng làm thông tin đăng nhập vào máy chủ xác minh. Khi đó "Khóa API riêng" sẽ tương tự như mật khẩu. Bởi trang web / databse sử dụng phương pháp này, bảo mật được duy trì trên bên thứ ba / máy chủ xác minh để xác thực yêu cầu đăng hoặc chỉnh sửa trang web / cơ sở dữ liệu của bạn.
Chuỗi API chỉ là URL của thông tin đăng nhập cho trang web / cơ sở dữ liệu của bạn để liên hệ với máy chủ xác minh.