Thật không may, webservice của bạn sẽ không bao giờ hoàn toàn an toàn nhưng đây là một vài trong số những điều cơ bản bạn có thể làm:
- Sử dụng SSL
- Bọc tất cả của bạn (ứng dụng) trọng tải outbound trong
POST
yêu cầu. Điều này sẽ ngăn chặn việc tìm kiếm thông thường để tìm ra cách hoạt động của các dịch vụ web của bạn (để đảo ngược giao thức).
- Bằng cách nào đó xác thực người dùng ứng dụng của bạn. Lý tưởng nhất điều này sẽ liên quan đến OAUTH ví dụ bằng cách sử dụng thông tin đăng nhập của Google, nhưng bạn sẽ có được ý tưởng.
Bây giờ tôi sẽ chỉ ra lý do tại sao này sẽ không hoàn toàn an toàn:
- Nếu ai đó có được một tổ chức của ứng dụng của bạn và đảo ngược kỹ sư nó, tất cả mọi thứ bạn chỉ cần làm ra ngoài cửa sổ. Điều duy nhất sẽ giữ là xác thực người dùng của bạn.
- Nhúng chứng chỉ ứng dụng khách (như những người khác đã chỉ ra) không có gì để giúp bạn trong trường hợp này. Nếu tôi vừa đảo ngược ứng dụng của bạn, tôi cũng có chứng chỉ ứng dụng khách của bạn.
Điều gì có thể bạn làm gì?
- Xác thực tài khoản trên chương trình phụ trợ của bạn và theo dõi chúng để sử dụng bất thường.
Tất nhiên điều này tất cả đi ra ngoài cửa sổ khi ai đó đến, đảo ngược kỹ sư ứng dụng của bạn, xây dựng ứng dụng khác để bắt chước ứng dụng và bạn sẽ không (thường) biết rõ hơn. Đây là tất cả những điểm cần ghi nhớ.
Edit: Ngoài ra, nếu đó là chưa rõ ràng, sử dụng POST
(hoặc GET
) yêu cầu cho tất cả truy vấn ứng dụng (máy chủ của bạn). Điều này, kết hợp với SSL nên ngăn chặn những kẻ lừa đảo bình thường của bạn.
Edit2: Có vẻ như nếu tôi sai lại: POST
là hơn an toàn hơn GET
. This câu trả lời là khá hữu ích trong việc chỉ ra rằng. Vì vậy, tôi cho rằng bạn có thể sử dụng GET
hoặc POST
thay thế cho nhau ở đây.
Nguồn
2012-01-21 19:31:11
tại sao trên Trái đất bất cứ ai sẽ bỏ phiếu để đóng này? –
Chăm sóc để giải thích downvoter? – LuckyLuke