Share via


I_IrmProtector.HrUnprotectRMS Method

This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This page may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.

Generates an unprotected version of the specified rights-managed file.

HRESULT HrUnprotect(
    ILockBytes       *pilbInput,
    ILockBytes       *pilbOutput,
    I_IrmPolicyInfoRMS    *piid,
    DWORD            *pdwStatus
) PURE;

Parameters

pilbInput

[in] The rights-managed file.

pilbOutput

[out] The unprotected stream that the Information Rights Management (IRM) protector generates from the rights-managed file.

piid

[in] A link to functions and data that assist with the encryption/decryption process.

pdwStatus

[in] The status of the method call. Possible values are:

MSOIPI_STATUS_UNKNOWN

The result of the method cannot be determined.

MSOIPI_STATUS_UNPROTECT_SUCCESS

The protector has successfully generated the unprotected file stream.

MSOIPI_STATUS_ALREADY_UNPROTECTED

The specified file is not protected.

MSOIPI_STATUS_CANT_UNPROTECT

A general failure of the protector.

MSOIPI_STATUS_NOT_MY_FILE

The specified file is not of a file type associated with this IRM protector.

MSOIPI_STATUS_FILE_CORRUPT

The specified file is corrupt.

MSOIPI_STATUS_WSS_IRM_FAILED

The protector is unable to access Windows SharePoint Services functions, or those encryption functions have failed.

MSOIPI_STATUS_BAD_INSTALL

The protector is not installed properly.

Return Value

The protector methods return typical HRESULT values. In general, the protector should return a positive OK value for success or a negative FAIL value when unsuccessful.

Remarks

The I_IrmProtector Interface is implemented by both integrated and autonomous IRM protectors. For more information on integrated and autonomous protectors, see Custom IRM Protectors.

For integrated IRM protectors:

Windows SharePoint Services calls this method to unprotect rights-managed files of the file types associated with this protector.

This method must extract the document issuance license (IL) and server EUL from the protected file. (These certificates were included in the protected file when it was generated by the protector I_IrmProtector.HrProtect Method method.) The protector can then use these certificates to access I_IrmPolicyInfo Class methods to unprotect and decrypt the file.

For autonomous IRM protectors:

Autonomous protectors do not need to implement this method. An autonomous protector should return the HRESULT E_NOTIMPL if this method is called.

See Also

Reference

I_IrmProtector Interface

I_IrmPolicyInfoRMS Class

I_IrmPolicyInfo Class

Concepts

Information Rights Management in Windows SharePoint Services Overview

Custom IRM Protectors