Permission Object
The Permission property of the Microsoft Office Word 2003 Document object, the Microsoft Office Excel 2003 Workbook object, and the Microsoft Office PowerPoint 2003 Presentation object returns a Permission object.
Using the Permission Object
Use the Permission object to restrict permissions to the active document and to return or set specific permissions settings.
Use the Enabled property to determine whether permissions are restricted on the active document. Use the Count property to return the number of users with permissions, and the RemoveAll method to reset all existing permissions.
The DocumentAuthor, EnableTrustedBrowser, RequestPermissionURL, and StoreLicenses properties provide additional information about permissions settings.
The Permission object gives access to a collection of UserPermission objects. Use the UserPermission object to associate specific sets of rights with individual users. While some permissions granted through the user interface (such as msoPermissionPrint) apply to all users, you can use the UserPermission object to assign them on a per-user basis with per-user expiration dates.
Microsoft Office Information Rights Management supports the use of administrative permission policies which list users and groups and their document permissions. Use the ApplyPolicy method to apply a permission policy, and the PermissionFromPolicy, PolicyName, and PolicyDescription properties to return policy information.
The Permission object model is available whether permissions are restricted on the active document or not . The Permission property of the Document, Workbook and Presentation objects does not return
Nothing
when the active document does not have restricted permissions. Use the Enabled property to determine whether a document has restricted permissions.
Use of the Permission object raises an error when the Windows Rights Management client is not installed.
Example
The following example returns information about the permissions settings on the active document.
Dim irmPermission As Office.Permission
Dim strIRMInfo As String
Set irmPermission = ActiveWorkbook.Permission
If irmPermission.Enabled Then
strIRMInfo = "Permissions are restricted on this document." & vbCrLf
strIRMInfo = strIRMInfo & " View in trusted browser: " & _
irmPermission.EnableTrustedBrowser & vbCrLf & _
" Document author: " & irmPermission.DocumentAuthor & vbCrLf & _
" Users with permissions: " & irmPermission.Count & vbCrLf & _
" Cache licenses: " & irmPermission.StoreLicenses & vbCrLf & _
" Request permission URL: " & irmPermission.RequestPermissionURL & vbCrLf
If irmPermission.PermissionFromPolicy Then
strIRMInfo = strIRMInfo & " Permissions applied from policy:" & vbCrLf & _
" Policy name: " & irmPermission.PolicyName & vbCrLf & _
" Policy description: " & irmPermission.PolicyDescription
Else
strIRMInfo = strIRMInfo & " Default permissions applied." & vbCrLf & _
" Default policy name: " & irmPermission.PolicyName & vbCrLf & _
" Default policy description: " & irmPermission.PolicyDescription
End If
Else
strIRMInfo = "Permissions are NOT restricted on this document."
End If
MsgBox strIRMInfo, vbInformation + vbOKOnly, "IRM Information"
Set irmPermission = Nothing