Freigeben über


FileRevocationManager.GetStatusAsync(IStorageItem) Methode

Definition

Hinweis

Ab Juli 2022 stellt Microsoft Windows Information Protection (WIP) und die APIs, die WIP unterstützen, als veraltet fest. Microsoft wird WIP weiterhin auf unterstützten Versionen von Windows unterstützen. Neue Versionen von Windows enthalten keine neuen Funktionen für WIP und werden in zukünftigen Versionen von Windows nicht unterstützt. Weitere Informationen finden Sie unter Ankündigung des Sonnenuntergangs von Windows Information Protection.

Für Ihre Datenschutzanforderungen empfiehlt Microsoft, dass Sie Microsoft Purview Information Protection und Microsoft Purview Data Loss Prevention verwenden. Purview vereinfacht die Konfiguration und bietet einen erweiterten Satz von Funktionen.

Hinweis

FileRevocationManager ist für Releases nach Windows 10 möglicherweise nicht verfügbar. Verwenden Sie stattdessen FileProtectionManager.

Ruft den selektiven Zurücksetzungsschutz status für eine Datei oder einen Ordner ab.

public:
 static IAsyncOperation<FileProtectionStatus> ^ GetStatusAsync(IStorageItem ^ storageItem);
/// [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> GetStatusAsync(IStorageItem const& storageItem);
/// [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> GetStatusAsync(IStorageItem const& storageItem);
[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> GetStatusAsync(IStorageItem storageItem);
[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> GetStatusAsync(IStorageItem storageItem);
function getStatusAsync(storageItem)
Public Shared Function GetStatusAsync (storageItem As IStorageItem) As IAsyncOperation(Of FileProtectionStatus)

Parameter

storageItem
IStorageItem

Die Datei oder der Ordner, für die der selektive Zurücksetzungsschutz status.

Gibt zurück

Ein aysnchroner Vorgang, der den selektiven Zurücksetzungsschutz status für das storageItem-Objekt abruft.

Attribute

Hinweise

Sie können die GetStatusAsync-Methode verwenden, um den schutz vor selektivem Zurücksetzen status einer Datei oder eines Ordners zu bestimmen. Dadurch erfahren Sie, ob eine Datei geschützt ist oder nicht, ob eine Datei von einem anderen Benutzer auf dem Computer geschützt wird usw. Die GetStatusAsync-Methode wird häufig verwendet, um zu bestimmen, wann eine geschützte Datei gelöscht werden soll. Wenn beispielsweise eine geschützte Datei widerrufen wird, führt der Versuch, auf den Dateiinhalt zuzugreifen, zu einer Ausnahme "Zugriff verweigert". Wenn diese Ausnahme auftritt, können Sie die GetStatusAsync-Methode verwenden, um zu bestimmen, ob die Datei durch selektives Zurücksetzen widerrufen wurde, und dann die Datei löschen, sofern vorhanden, wie im folgenden Beispiel gezeigt.

ApplicationData appRootFolder = ApplicationData.Current;
string enterpriseIdentity = "example.com";
int AccessDeniedHResult = -2147024891;  // Access Denied (0x80070005)
private async Task<IRandomAccessStream> GetFileContents(string filePath)
{
    IRandomAccessStream stream = null;
    StorageFile file = null;

    try
    {
        file = await StorageFile.GetFileFromPathAsync(filePath);
        stream = await file.OpenReadAsync();
    }
    catch (UnauthorizedAccessException e)
    {
        if (e.HResult == AccessDeniedHResult)
        {
            // Delete file if it has been revoked.
            SelectiveWipeCleanup(file);
        }

        return null;
    }

    return stream;
}

// Delete items revoked by Selective Wipe.
private async void SelectiveWipeCleanup(StorageFile file)
{
    var status = await Windows.Security.EnterpriseData.FileRevocationManager.GetStatusAsync(file);
    if (status == Windows.Security.EnterpriseData.FileProtectionStatus.Revoked)
    {
        await file.DeleteAsync();
    }
}

Gilt für:

Weitere Informationen