Partager via


FileRevocationManager.ProtectAsync(IStorageItem, String) Méthode

Définition

Notes

À compter de juillet 2022, Microsoft déprécie Windows Information Protection (WIP) et les API qui prennent en charge WIP. Microsoft continuera à prendre en charge WIP sur les versions prises en charge de Windows. Les nouvelles versions de Windows n’incluront pas de nouvelles fonctionnalités pour WIP et ne seront pas prises en charge dans les futures versions de Windows. Pour plus d’informations, consultez Annonce de la coucher du soleil de Windows Information Protection.

Pour vos besoins en matière de protection des données, Microsoft vous recommande d’utiliser Protection des données Microsoft Purview et Protection contre la perte de données Microsoft Purview. Purview simplifie la configuration et fournit un ensemble avancé de fonctionnalités.

Notes

FileRevocationManager peut ne pas être disponible pour les versions après Windows 10. Utilisez plutôt FileProtectionManager.

Protège un fichier ou un dossier en cas de réinitialisation sélective.

public:
 static IAsyncOperation<FileProtectionStatus> ^ ProtectAsync(IStorageItem ^ storageItem, Platform::String ^ enterpriseIdentity);
/// [Windows.Foundation.Metadata.Deprecated("FileRevocationManager might be unavailable after Windows 10. Instead, use FileProtectionManager.", Windows.Foundation.Metadata.DeprecationType.Deprecate, 65536, Windows.Security.EnterpriseData.EnterpriseDataContract)]
/// [Windows.Foundation.Metadata.RemoteAsync]
 static IAsyncOperation<FileProtectionStatus> ProtectAsync(IStorageItem const& storageItem, winrt::hstring const& enterpriseIdentity);
/// [Windows.Foundation.Metadata.RemoteAsync]
/// [Windows.Foundation.Metadata.Deprecated("FileRevocationManager might be unavailable after Windows 10. Instead, use FileProtectionManager.", Windows.Foundation.Metadata.DeprecationType.Deprecate, 65536, "Windows.Security.EnterpriseData.EnterpriseDataContract")]
 static IAsyncOperation<FileProtectionStatus> ProtectAsync(IStorageItem const& storageItem, winrt::hstring const& enterpriseIdentity);
[Windows.Foundation.Metadata.Deprecated("FileRevocationManager might be unavailable after Windows 10. Instead, use FileProtectionManager.", Windows.Foundation.Metadata.DeprecationType.Deprecate, 65536, typeof(Windows.Security.EnterpriseData.EnterpriseDataContract))]
[Windows.Foundation.Metadata.RemoteAsync]
public static IAsyncOperation<FileProtectionStatus> ProtectAsync(IStorageItem storageItem, string enterpriseIdentity);
[Windows.Foundation.Metadata.RemoteAsync]
[Windows.Foundation.Metadata.Deprecated("FileRevocationManager might be unavailable after Windows 10. Instead, use FileProtectionManager.", Windows.Foundation.Metadata.DeprecationType.Deprecate, 65536, "Windows.Security.EnterpriseData.EnterpriseDataContract")]
public static IAsyncOperation<FileProtectionStatus> ProtectAsync(IStorageItem storageItem, string enterpriseIdentity);
function protectAsync(storageItem, enterpriseIdentity)
Public Shared Function ProtectAsync (storageItem As IStorageItem, enterpriseIdentity As String) As IAsyncOperation(Of FileProtectionStatus)

Paramètres

storageItem
IStorageItem

Fichier ou dossier à protéger pour une réinitialisation sélective.

enterpriseIdentity
String

Platform::String

winrt::hstring

ID d’entreprise pour lequel le fichier ou le dossier est protégé. La valeur enterpriseIdentity doit être mise en forme en tant que nom de domaine internationalisé (IDN) et ne peut pas contenir d’espaces. Par exemple : contoso.com.

Retours

Opération asynchrone qui récupère la protection de réinitialisation sélective status pour l’objet storageItem.

Attributs

Remarques

Vous pouvez utiliser la méthode ProtectAsync pour protéger un fichier ou un dossier à l’aide de la réinitialisation sélective. Cela identifie le fichier comme protégé pour votre identificateur d’entreprise, tel que « example.com », comme indiqué dans l’exemple de code précédent. Si vous protégez un dossier à l’aide de la méthode ProtectAsync, tous les fichiers de ce dossier héritent de la même protection.

ApplicationData appRootFolder = ApplicationData.Current;
string enterpriseIdentity = "example.com";
int AccessDeniedHResult = -2147024891;  // Access Denied (0x80070005)
// Add a folder and protect it using Selective Wipe.
private async Task<StorageFolder> AddFolder(string folderName)
{
    StorageFolder newFolder = await appRootFolder.LocalFolder.CreateFolderAsync(folderName);

    var status = await ProtectItem(newFolder, enterpriseIdentity);

    return newFolder;
}

// Add a file and protect it using Selective Wipe.
private async Task<StorageFile> AddFile(string fileName, StorageFolder folder)
{
    StorageFile newFile = await folder.CreateFileAsync(fileName);

    var status = 
        await Windows.Security.EnterpriseData.FileRevocationManager.
            GetStatusAsync(newFile);

    if (status != Windows.Security.EnterpriseData.FileProtectionStatus.Protected)
    {
        status = await ProtectItem(newFile, enterpriseIdentity);
    }

    return newFile;
}

private async Task<Windows.Security.EnterpriseData.FileProtectionStatus> 
    ProtectItem(IStorageItem item, string enterpriseIdentity)
{
    var status = 
        await Windows.Security.EnterpriseData.FileRevocationManager.
            ProtectAsync(item, enterpriseIdentity);

    return status;
}

La méthode ProtectAsync nécessite un accès exclusif au fichier ou au dossier chiffré et échoue si un autre processus utilise un handle ouvert au fichier ou au dossier.

S’applique à

Voir aussi