Agent SDK Bí mật & HMAC Ký kết
Bảo vệ thông tin xác thực của Tác nhân API và hiểu cách SDK tạo ra chữ ký yêu cầu HMAC-SHA256 được đánh dấu thời gian, chống phát lại.
Yêu cầu Agent SDK được xác thực bằng bí mật API của đối tác. Hãy giữ bí mật đó bên trong một dịch vụ phụ trợ đáng tin cậy và để SDK tạo các trường ký bất cứ khi nào có thể.
Hai giao thức ký kết
Việc ký Agent SDK sử dụng các trường yêu cầu được sắp xếp, dấu thời gian dựa trên giây và số không. Yêu cầu Developer API trực tiếp sử dụng quy trình riêng biệt được mô tả trong Yêu cầu ký. Không sử dụng lại định dạng tải trọng này cho định dạng tải trọng khác.
Quy tắc ký
Đối với yêu cầu Agent SDK:
- Loại trừ trường
sign. - Bỏ qua các trường có giá trị trống.
- Sắp xếp các tên trường còn lại theo thứ tự ASCII.
- Tham gia các trường dưới dạng
k=v&k2=v2. - Tính chữ ký thập lục phân HMAC-SHA256 với
apiSecret.
Các giá trị mảng được tuần tự hóa dưới dạng JSON nhỏ gọn trước khi tham gia tải trọng ký. Ví dụ: platformUserIds ký hiệu là ["1188041528"], cung cấp platformUserIds=["1188041528"] trong tải trọng k=v. Giữ nguyên thứ tự phần tử mảng, dấu ngoặc kép và ID chuỗi; không chèn khoảng trắng định dạng hoặc sử dụng Java List.toString() (chẳng hạn như [1188041528]). SDK tự động xử lý việc tuần tự hóa này.
SDK sẽ xây dựng giá trị này từ cùng một dữ liệu mà nó gửi. Thay đổi trường đã ký sau khi tạo chữ ký khiến việc xác minh không thành công.
Các trường được quản lý SDK
Kho lưu trữ bí mật
- Tải
apiSecrettừ trình quản lý bí mật phụ trợ hoặc cấu hình thời gian chạy được bảo vệ. - Không bao giờ đặt bí mật trong các gói giao diện người dùng, ứng dụng dành cho thiết bị di động, ứng dụng khách trên máy tính để bàn, ảnh chụp màn hình hoặc phiếu hỗ trợ.
- Giữ thông tin đăng nhập để phát triển, dàn dựng và sản xuất riêng biệt.
- Giới hạn quyền truy cập vào các dịch vụ và nhà khai thác yêu cầu nó.
- Biên tập lại chữ ký yêu cầu, giá trị ủy quyền và bí mật từ nhật ký.
- Thu hồi và thay thế thông tin xác thực khi nghi ngờ có phơi nhiễm.
Bảo vệ đồng hồ và phát lại
SDK bao gồm timestamp và nonce để giảm rủi ro phát lại. Giữ đồng hồ phụ trợ được đồng bộ hóa và không sử dụng lại nonce được tạo thủ công. Nếu xác thực chữ ký không thành công, hãy xác nhận bí mật đã định cấu hình, thời gian máy chủ, trường được tuần tự hóa và môi trường trước khi thử lại.