2013-08-19 42 views
7

Tôi đang xây dựng tiện ích của bên thứ baLàm cách nào để chúng tôi có thể bảo mật tiện ích của bên thứ ba?

Chúng tôi thả tập lệnh trên trang khách hàng và tải một số nội dung.

Vấn đề tôi phải đối mặt là làm cách nào để đảm bảo tiện ích của mình. Là một phụ tùng bên thrid tôi biết không có cách nào 100% để bảo đảm nó. Nhưng cố gắng tìm ra cách tiếp cận 'đủ tốt'.

Tôi muốn gây khó khăn cho một khách hàng không chỉ trích xuất tập lệnh của chúng tôi ra khỏi trang web đối thủ cạnh tranh của họ và sử dụng nó trên của họ.

Các giải pháp tôi thấy là kéo xác nhận yêu cầu miền (mà tôi biết có thể bị giả mạo, không chắc chắn nếu tôi có thể bảo vệ chống lại điều này?)

tôi đã có một cái nhìn vào các vật dụng khác như olark và olapic sử dụng độc đáo của id cho mỗi khách hàng trong kịch bản của họ, nhưng không thể thấy nó hữu ích như thế nào.

Các phương pháp hay nhất để bảo mật tiện ích của bên thứ ba là gì?

+0

Bạn đã thực hiện được điều này bằng cách nào? Bất kỳ may mắn? Bạn đã đọc Javascript của bên thứ ba bởi Ben Vinegar chưa? – stephenmurdoch

+0

Bạn có muốn biết liệu bạn có tìm được giải pháp không? – Dofs

+0

đã kết thúc các ví dụ sau trong Javascript của bên thứ ba bởi Ben Vinegar. – dboyd68

Trả lời

2

Bảo vệ truy cập máy khách của người đi thuê

Securing 3rd truy cập bên khách hàng của người thuê nhà để Javascript của bạn đặt ra một bộ duy nhất của những thách thức. Hầu hết các khó khăn trong giải pháp này bắt nguồn từ thực tế là cơ chế xác thực phải có mặt trong nội dung web của người thuê và được gửi từ trình duyệt của khách hàng của họ. Khách hàng tiêu chuẩn <> cơ chế xác thực máy chủ như phiên, cookie, tiêu đề tùy chỉnh, giới thiệu và giới hạn địa chỉ IP không áp dụng tốt do tính chất mở rộng của giao dịch.

This article bởi Bill Patrianakos cung cấp giải pháp bằng cách sử dụng yêu cầu khóa động cung cấp mã thông báo truy cập cho ứng dụng của khách thuê.

Patrianakos cung cấp một số thông tin tốt về mối quan hệ người thuê bên thứ ba và thảo luận về một số hạn chế của mô hình này trong bài viết của mình.

Securing mã Javascript

Bảo vệ mã của bạn trong Javascript là khó khăn do yêu cầu rằng mã được giải thích trong thời gian chạy bởi trình duyệt của khách hàng. Tuy nhiên, có thể làm xáo trộn Javascript của bạn bằng cách sử dụng Google Closure Compiler. Các tính năng của advanced optimization của trình biên dịch cung cấp tính năng đổi tên tham chiếu cấp thấp và cũng cung cấp mã nhỏ gọn hơn để phân phối tiện ích con của bạn.

Để biên dịch Javascript của bạn sử dụng tối ưu hóa tiên tiến sử dụng dòng lệnh sau:

java -jar compiler.jar --compilation_level ADVANCED_OPTIMIZATIONS \ 
    --js myWidget.js --js_output_file myWidget.min.js 

Có một số cảnh báo quan trọng. This article bao gồm một số điều cần tránh trong mã của bạn để đảm bảo rằng mã sẽ hoạt động chính xác. Tôi cũng khuyên bạn nên sử dụng khung kiểm tra qunit tốt để đảm bảo rằng tiện ích con của bạn sẽ hoạt động bình thường.

+0

Câu hỏi có liên quan đến phía máy chủ và cách bạn có thể ngăn chặn hoặc cố gắng để mọi người lạm dụng từng tập lệnh khác. – Dofs

+0

Tôi đã thêm một phần vào quyền truy cập của khách thuê. –

1

Để đảm bảo tiện ích, nếu bạn muốn ngăn chặn yêu cầu giả mạo thì bạn cần mở cửa sổ bật lên và mở trang từ máy chủ hoàn toàn nằm dưới sự kiểm soát của bạn và xác nhận bất kỳ hành động nào như 'xuất bản tweet' ở đó.

Xem answer cho câu hỏi này để thảo luận mở rộng hơn.

Để ngăn không cho Javascript của bạn bị đánh cắp, việc rút gọn là không đủ - tốt hơn nên sử dụng bộ obfuscator. Có một cái nhìn ví dụ [JScramble], đây là một presentation về cách nó hoạt động.

Các vấn đề liên quan