Поделиться через


Общее хранилище enterprise

Общее хранилище состоит из двух расположений, где приложения с ограниченными возможностями enterpriseDeviceLockdown и корпоративный сертификат имеют полный доступ на чтение и запись. Обратите внимание, что возможность enterpriseDeviceLockdown позволяет приложениям использовать API блокировки устройства и получать доступ к общим папкам хранилища предприятия. Дополнительные сведения об API см. в разделе "Пространство имен Windows.Embedded.DeviceLockdown".

Эти расположения задаются на локальном диске:

  • \Data\SharedData\Enterprise\Persistent
  • \Data\SharedData\Enterprise\Non-Persistent

Сценарии

Общее хранилище enterprise обеспечивает поддержку следующих сценариев.

  • Вы можете совместно использовать данные в экземпляре приложения, между экземплярами одного и того же приложения или даже между приложениями, предполагая, что у них есть соответствующая возможность и сертификат.
  • Данные можно хранить на локальном жестком диске в папке \Data\SharedData\Enterprise\Persistent, и она сохраняется даже после сброса устройства.
  • Управление файлами, включая чтение, запись и удаление файлов на устройстве с помощью службы мобильных Управление устройствами (MDM).

Доступ к общему хранилищу предприятия

В следующем примере показано, как объявить возможность доступа к общему хранилищу предприятия в манифесте пакета и как получить доступ к общим папкам хранилища с помощью класса Windows.Storage.StorageFolder.

В манифесте пакета приложения включите следующую возможность:

<Package
  xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
  xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest"
  xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
  xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
  IgnorableNamespaces="uap mp rescap">

…

<Capabilities>
    <rescap:Capability Name="enterpriseDeviceLockdown"/>
</Capabilities>

Чтобы получить доступ к общему расположению данных, приложение будет использовать следующий код.

using System;
using System.Collections.Generic;
using System.Diagnostics;
using Windows.Storage;

…

// Get the Enterprise Shared Storage folder.
var enterprisePersistentFolderRoot = @"C:\Data\SharedData\Enterprise\Persistent";

StorageFolder folder =
    await StorageFolder.GetFolderFromPathAsync(enterprisePersistentFolderRoot);

// Get the files in the folder.
IReadOnlyList<StorageFile> sortedItems =
    await folder.GetFilesAsync();

// Iterate over the results and print the list of files
// to the Visual Studio Output window.
foreach (StorageFile file in sortedItems)
    Debug.WriteLine(file.Name + ", " + file.DateCreated);