ProtectedFileStream.AcquireAsync method
Creates a ProtectedFileStream object from a backing stream. This method is used to open a protected file. The protected file is loaded from the specified backing stream. After ProtectedFileStream object is created, apps can use ProtectedFileStream::Policy property to get the UserPolicy object that defines the policy used to protect the protected file. The resulting ProtectedFileStream can be used to read the contents of the protected file (as a regular IRandomAccessStream).
[!Warning]
To avoid data loss and/or corruption, FlushAsync must be called if you modify the created stream or before object disposal.
[!Warning]
This method must be called on a UI thread. Calling it on a worker thread may result in an unexpected behavior.
Syntax
public:
static
IAsyncOperation<GetProtectedFileStreamResult> AcquireAsync(
IRandomAccessStream^ stream,
String
userId,
IAuthenticationCallback^ authenticationCallback,
IConsentCallback^ consentCallback,
PolicyAcquisitionOptions options
)
Parameters
-
stream
-
Type: IRandomAccessStream
The backing stream where the protected file is loaded from.
-
userId
-
Type: String
The email address of the user that is trying to consume the protected content.
This email address will be used to determine which policy object to use from the offline cache.
If a policy object for this user is not found in the offline cache then this API will go online (if allowed) to get the policy object.
If null is passed, the first policy object found in the offline cache will be used. And again if there is no policy object found for this content in the offline cache, this API will go online to get the policy object.
This parameter is also used as a hint for userId for user authentication, i.e., it will be passed to the IAuthenticationCallback.GetTokenAsync in the AuthenticationParameters structure.
-
authenticationCallback
-
Type: IAuthenticationCallback
Authentication callback to be used for auth
-
consentCallback
-
Type: IConsentCallback
Consent callback user for user consent process
-
options
-
Type: PolicyAcquisitionOptions
Possible offline flag.
Return value
Type: IAsyncOperation(GetProtectedFileStreamResult)
The asynchronous operation. Upon completion, IAsyncOperation.GetResults returns a ProtectedFileStream object that can be used to write content to the protected file.
Remarks
[!Warning]
To avoid data loss and/or corruption, FlushAsync must be called if you modify the created stream or before object disposal.
[!Warning]
This method must be called on a UI thread. Calling it on a worker thread may result in an unexpected behavior.
Requirements
Minimum supported client |
None supported |
Minimum supported server |
None supported |
Minimum supported phone |
Windows Phone 8.1 |
Namespace |
Microsoft::Protection |
Metadata |
|