2012-03-14 31 views
7

Cách tốt nhất để bảo đảm các đốm màu trong bộ nhớ Windows Azure cho một nhóm người dùng cụ thể là gì. ví dụ: tôi có một trang web ASP.NET (mạng nội bộ) tại chỗ với bộ lưu trữ Windows Azure backb end back-end cho các tệp lớn. Tôi thích ý tưởng về một URL đã ký để bảo mật cho từng đốm màu cá nhân nhưng điều này thực sự có hiệu quả đối với một đốm màu sẽ tồn tại trong một thời gian dài hay không. (vô hạn?)Các đốm màu an toàn trong Azure

Tôi cần mức độ bảo mật chi tiết trên đốm màu cho những người dùng cụ thể (làm cách nào để tôi dễ dàng thực hiện điều này với Bộ nhớ Blob). * Lưu ý tôi tin rằng tôi không cần ACS. Tôi muốn đạt được nó bằng cách sử dụng Chính sách và URL đã ký nếu có thể.

Câu hỏi thứ hai, tôi cho rằng tôi cũng có thể bảo mật dữ liệu này trong CDN theo cách tương tự, ai đó có thể xác nhận?

Cảm ơn

Chính sách truy cập được chia sẻ với công việc vô hạn và đặc quyền trên blob ví dụ: đọc công việc?

Trả lời

18

Nếu bạn cần blob có sẵn cho người dùng cá nhân dài hơn một giờ, bạn phải sử dụng chính sách SAS được đính kèm vào vùng chứa. Tuy nhiên, vì bạn có thể có tối đa 5 mỗi vùng chứa, nó sẽ không mở rộng tốt cho nhiều người dùng. Một chính sách SAS có thể được đo lường hết hạn trong nhiều năm.

Giải pháp điển hình hơn ở đây là để người dùng truy cập vào trang web hoặc dịch vụ của bạn và bạn xác thực chúng theo bất kỳ cách nào bạn chọn. Khi họ thực sự muốn tải xuống tệp, bạn nên tạo một chữ ký SAS 1 lần với thời gian hết hạn ngắn hơn (không phải là chính sách). Quy mô này tốt và ngăn người dùng trái phép sử dụng lại sau này. Bạn cũng được hưởng lợi từ việc lưu trữ chứ không phải vai trò web của bạn.

Mọi thứ trở nên phức tạp hơn khi bạn sử dụng CDN. Vì vậy, trong khi bạn có thể sử dụng chữ ký SAS trên tài nguyên CDN, chúng không thực sự được vinh danh. Tức là, URL duy nhất là chìa khóa cho tài nguyên cơ bản. Vì vậy, khi bạn yêu cầu một khối màu bảo đảm SAS, nó sẽ chỉ kéo nó vào CDN và phục vụ nó bằng cách sử dụng URI đó làm khóa. Sau đó, nó sẽ sử dụng chính sách lưu bộ nhớ cache CDN (không phải là hết hạn SAS) để phục vụ sau này. Điều này có thể dẫn đến kịch bản mà URI blob được đặt hết hạn sau 10 phút, nhưng CDN sẽ lưu bộ nhớ cache đó bằng cách sử dụng cùng một chữ ký SAS cho ngày tùy thuộc vào chính sách hết hạn. CDN sẽ không bao giờ liên hệ lại với bộ nhớ để xác thực. Do đó, có lẽ không phải là một ý tưởng tốt để sử dụng điều này. Hơn nữa, vì mỗi tài nguyên CDN được khóa cho URI, nó cũng có nghĩa là bạn sẽ lưu trữ nhiều bản sao của cùng một tệp (chạy các giao dịch và phí băng thông) mỗi khi chữ ký SAS thay đổi. Truyện ngắn, CDN và SAS không hòa hợp tốt.

+0

Cảm ơn Ryan, chỉ là những gì tôi đang tìm kiếm! – user728584

+0

Và chắc chắn điều này không khắc phục được sự cố. –

3

Tôi không thể giúp bạn với CDN vì tôi không có kinh nghiệm trong việc sử dụng CDN, mặc dù tôi hy vọng nó hoạt động theo cách tương tự.

Điều tôi sẽ làm trong trường hợp này là tạo chữ ký truy cập dùng chung bất cứ lúc nào người dùng truy cập tệp. Bạn có thể duy trì bên trong ứng dụng của mình các quy tắc truy cập để xác định liệu người dùng có thể truy cập bất kỳ tệp cụ thể nào hay không.

Khi tệp đó được yêu cầu, bạn tạo Chữ ký truy cập được chia sẻ khi đang di chuyển (xem here để biết chi tiết) và trao cho người dùng.

Điều này có lợi thế là việc tải xuống tệp không được bơm qua vai trò web của bạn nhưng được tải xuống trực tiếp từ người dùng từ bộ nhớ blob.

+0

Cảm ơn David ... – user728584

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