Клас fileiopermission (ssions)

Цей дозвіл розрізняє такі чотири типи доступу до файлів, що надаються FileIOPermissionAccess.

Read. На читання вмісту файлу або доступ до відомостей про фото, наприклад його довжині або час останньої зміни.

Write. Доступ для запису вмісту файлу або доступ до зміни відомостей про фото, наприклад його ім'я. Також дозволяє виконувати видалення і перезапис.

Append. Можливість запису тільки в кінець файлу. Відсутня можливість читання.

PathDiscovery. Доступ до відомостей про самому шляху. Це дозволяє захистити конфіденційні відомості шляху, такі як імена користувачів, а також відомості про структуру каталогу, виведеної в рядок шляху. Це значення не надає доступу до файлів і папок, що містяться в шляху.

Надання Write доступ до збірки еквівалентна надання його повної довіри. Якщо з додатком не потрібно писати в файлової системі, він не повинен мати Write доступ.

Ці дозволи незалежні, це означає, що права на одне не мають на увазі прав на інші. Наприклад Write не має на увазі дозвіл на Read або Append. Якщо потрібно кілька дозволів, вони можуть об'єднуватися за допомогою бітової операції або, як показано в наступному прикладі коду. Дозволи для файлів визначені в термінах канонічних абсолютних шляхів; виклики повинні бути виконані за допомогою канонічних шляхів до файлів.

FileIOPermission Описує захищені дії над файлами та папками. File Клас забезпечує безпечний доступ до файлів і папок. Перевірка безпеки виконується при створенні дескриптора файлу. Виконання перевірки під час створення, згорнуто вплив на продуктивність перевірки безпеки. Відкриття файлу відбувається один раз, а читання і запис можуть виконуватися кілька разів. Після відкриття файлу подальша перевірок проводиться. Якщо об'єкт передається в викликає об'єкт без довіри, може бути неправильно. Наприклад дескриптори файлів не повинні зберігатися у відкритих глобальних статичних об'єктах, де вони доступні коду з меншим числом дозволів.

FileIOPermissionAccess Вказує дії, які можуть бути виконані для файлу або папки. Крім того ці дії можуть об'єднуватися за допомогою бітової операції або для формування складних примірників.

Доступ до папки на увазі доступ до всіх файлів, що містяться в ній, а також доступ до файлів і папок в її вкладених папках. Наприклад Read доступ до C: \ folder1 \ увазі Read доступ до C: \ folder1 \ file1.txt, C: \ folder1 \ folder2 \, C: \ folder1 \ folder2 \ file2.txt і т. Д.

У версіях .NET Framework до .NET Framework 4, можна використовувати CodeAccessPermission. Deny метод, щоб запобігти випадковий доступ до системних ресурсів довіреною кодом. Deny Тепер є застарілим, і доступ до ресурсів, тепер визначається лише наданий набір дозволів для збірки. Щоб обмежити доступ до файлів, необхідно запустити частково довірений код в ізольованому середовищі і встановити дозволи тільки до яких код може отримати доступ до ресурсів. Відомості про виконання програми в "пісочниці" см. В розділі How to: Run Partially Trusted Code in a Sandbox.

Схожі статті