Hợp đồng thông báo có thể cho biết liệu đầu trang và/hoặc nội dung thư có được ký và mã hóa kỹ thuật số hay không.
Điều này được thực hiện bằng cách đặt thuộc tính System.ServiceModel.MessageContractMemberAttribute.ProtectionLevel trên thuộc tính MessageHeaderAttribute và MessageBodyMemberAttribute. Thuộc tính này là một kiểu liệt kê của kiểu System.Net.Security.ProtectionLevel và có thể được đặt thành None (không mã hóa hoặc chữ ký), Sign (chỉ chữ ký số), hoặc EncryptAndSign (cả mã hóa và chữ ký số). Mặc định là EncryptAndSign.
Để các tính năng bảo mật này hoạt động, bạn phải định cấu hình đúng ràng buộc và hành vi. Nếu bạn sử dụng các tính năng bảo mật này mà không có cấu hình thích hợp (ví dụ, cố gắng ký một tin nhắn mà không cung cấp thông tin đăng nhập của bạn), một ngoại lệ sẽ được ném vào thời gian xác nhận.
Đối với tiêu đề thư, cấp độ bảo vệ được xác định riêng cho từng tiêu đề.
Đối với phần thân máy nhắn tin, mức độ bảo vệ có thể được coi là "mức bảo vệ tối thiểu". Cơ thể chỉ có một mức độ bảo vệ, bất kể số lượng bộ phận cơ thể. Mức độ bảo vệ của cơ thể được xác định bởi cài đặt thuộc tính ProtectionLevel cao nhất của tất cả các bộ phận cơ thể. Tuy nhiên, bạn nên đặt mức bảo vệ của từng bộ phận cơ thể với mức bảo vệ tối thiểu thực tế được yêu cầu. Vui lòng xem bài viết this để biết thêm các ví dụ chi tiết.
Nguồn
2012-02-12 07:47:47