Chỉ cần đi qua Streams và Java 8 Lambda chức năng, và những nhận xét cuối cùng trên khác tự giải thích Oracle doc Lambda Expressions trạng thái:Rủi ro bảo mật trong tuần tự hóa biểu thức lambda là gì?
Bạn có thể serialize một biểu thức lambda nếu loại mục tiêu của mình và đối số của nó bị bắt là serializable . Tuy nhiên, giống như các lớp bên trong, việc tuần tự hóa các biểu thức lambda không được khuyến khích mạnh mẽ.
Kiểm tra lên trên này tôi thấy SO câu hỏi
nơi OP là đối phó với các biểu thức lambda serialized từ mã khách hàng.
Nếu tôi có webservice và một tham số là biểu thức lambda, có vẻ như mã có thể chứa mã độc hại có thể làm những việc như truy cập hệ thống tệp hoặc gây tràn ngăn xếp - vì vậy sẽ rất ngu ngốc để tin tưởng nó.
Tôi có phóng đại quá mức nguy cơ bảo mật hoặc có giới hạn đối với biểu thức được tuần tự hóa có thể chứa không?
Xem [câu hỏi này] (http://stackoverflow.com/questions/25443655/possibility-to-explicit-remove-serialization-support-for-a-lambda) để biết ví dụ. Như đã được chỉ ra trong trích dẫn của bạn, các lớp bên trong có thể mở ra một vấn đề tương tự. Tôi không hoàn toàn chắc chắn, làm thế nào bạn chuyển một biểu thức lambda trong bối cảnh của một webservice, mặc dù. – Holger
Chỉ cần làm rõ, tuần tự hóa một biểu thức lambda không tuần tự hóa mã bên trong biểu thức; chỉ những thứ như đối số bị bắt. –