Tôi đang làm việc trên một dịch vụ REST mà có một vài yêu cầu:ủy quyền REST của yêu cầu
- Nó phải được an toàn.
- Người dùng không được giả mạo yêu cầu.
giải pháp đề xuất hiện tại của tôi là phải có một tiêu đề tùy chỉnh Authorization mà trông như thế này (đây là cùng một cách mà các dịch vụ web amazon làm việc):
Authorization: MYAPI username:signature
Câu hỏi của tôi là làm thế nào để tạo chữ ký . Khi người dùng đăng nhập vào dịch vụ, họ được cung cấp một khóa bí mật mà họ có thể sử dụng để ký yêu cầu. Điều này sẽ ngăn người dùng khác gửi yêu cầu thay mặt họ, nhưng sẽ không ngăn họ yêu cầu giả mạo.
Ứng dụng sẽ sử dụng dịch vụ này là ứng dụng iPhone, vì vậy tôi nghĩ chúng tôi có thể có khóa công khai được nhúng trong ứng dụng mà chúng tôi có thể làm chữ ký bổ sung, nhưng điều này có nghĩa là chúng tôi sẽ phải có hai chữ ký, một cho khóa người dùng và một cho khóa ứng dụng?
Bất kỳ lời khuyên nào sẽ được đánh giá rất nhiều, tôi rất muốn nhận được quyền này lần đầu tiên.
Xác định "yêu cầu giả mạo". Thực thể nào tạo yêu cầu không giả mạo? Đó có phải là phần mềm phía máy khách không? – Alexander