Đây là cuộc thảo luận giữa tôi và tôi để hiểu vấn đề Isolated Storage. Bạn có thể giúp tôi thuyết phục tôi về Dung lượng lưu trữ được không?Sự hiểu lầm về bộ nhớ bị cô lập
Đây là mã được viết cho ứng dụng Windows Forms (trình đọc) đọc lưu trữ riêng biệt của ứng dụng Windows Forms khác (người viết) được ký. An ninh ở đâu nếu người đọc có thể đọc tệp của nhà văn? Tôi nghĩ chỉ có mã đã ký mới có thể truy cập tệp!
Nếu tất cả các ứng dụng .NET được sinh ra bình đẳng và có tất cả các quyền truy cập Bộ nhớ cách ly, khi đó bảo mật sẽ ở đâu? Nếu tôi có thể cài đặt và chạy một tệp EXE từ Bộ nhớ bị cô lập, tại sao tôi không cài đặt vi-rút và chạy nó, tôi tin cậy để truy cập khu vực này. Nhưng virus hoặc bất cứ điều gì sẽ không được tin cậy để truy cập vào phần còn lại của hệ thống tập tin, nó chỉ có thể truy cập vào bộ nhớ, và điều này là đủ nguy hiểm.
Tôi không thể thấy bất kỳ sự khác biệt nào giữa việc sử dụng thư mục dữ liệu ứng dụng để lưu trạng thái và sử dụng Bộ nhớ bị cô lập ngoại trừ một con đường dài khó chịu !!
Tôi muốn thử độ tin cậy thấp cho mã người đọc và thử lại, nhưng họ nói "Bộ nhớ riêng biệt thực sự được tạo để cung cấp cho ứng dụng đáng tin cậy thấp quyền lưu trạng thái của nó".
đang Reader:
private void button1_Click(object sender, EventArgs e)
{
String path = @"C:\Documents and Settings\All Users\Application Data\IsolatedStorage\efv5cmbz.ewt\2ehuny0c.qvv\StrongName.5v3airc2lkv0onfrhsm2h3uiio35oarw\AssemFiles\toto12\ABC.txt";
StreamReader reader = new StreamReader(path);
var test = reader.ReadLine();
reader.Close();
}
Writer:
private void button1_Click(object sender, EventArgs e)
{
IsolatedStorageFile isolatedFile = IsolatedStorageFile.GetMachineStoreForAssembly();
isolatedFile.CreateDirectory("toto12");
IsolatedStorageFileStream isolatedStorage = new IsolatedStorageFileStream(@"toto12\ABC.txt", System.IO.FileMode.Create, isolatedFile);
StreamWriter writer = new StreamWriter(isolatedStorage);
writer.WriteLine("Ana 2akol we ashrab kai a3eesh wa akbora");
writer.Close();
writer.Dispose();
}
Tuy nhiên, không có sự khác biệt giữa lưu tệp vào dữ liệu ứng dụng và bộ nhớ riêng biệt, vì theo mặc định, bạn có thể lưu tệp vào thư mục dữ liệu ứng dụng mà không có sự cho phép. – Costa
Hmmm ... bạn dường như vẫn thiếu điểm một chút? IsolatedStorage được thiết kế để sử dụng với các ứng dụng Silverlight tin cậy thấp mà không có quyền truy cập mở vào hệ thống tập tin như được minh họa trong mã đọc tệp của bạn. Kiểm tra chỉnh sửa của tôi cho một vài liên kết hữu ích. – slugster