Edit

Share via


CryptoProvider.BoundGrants Property

Definition

Gets a collection listing the rights that passed verification and that are granted to the user.

public:
 property System::Collections::ObjectModel::ReadOnlyCollection<System::Security::RightsManagement::ContentGrant ^> ^ BoundGrants { System::Collections::ObjectModel::ReadOnlyCollection<System::Security::RightsManagement::ContentGrant ^> ^ get(); };
public System.Collections.ObjectModel.ReadOnlyCollection<System.Security.RightsManagement.ContentGrant> BoundGrants { get; }
member this.BoundGrants : System.Collections.ObjectModel.ReadOnlyCollection<System.Security.RightsManagement.ContentGrant>
Public ReadOnly Property BoundGrants As ReadOnlyCollection(Of ContentGrant)

Property Value

A collection enumerating the rights that passed verification and that are granted to the user.

Examples

The following example shows how to use the BoundGrants property to obtain a list rights granted through a UseLicense.

ShowStatus("   Binding UseLicense with the SecureEnvironment" +
         "\n       to obtain the CryptoProvider.");
CryptoProvider cryptoProvider = useLicense.Bind(_secureEnv);

ShowStatus("   Obtaining BoundGrants.");
ReadOnlyCollection<ContentGrant> grants =
    cryptoProvider.BoundGrants;

rightsBlockTitle.Text = "Rights - " + Filename(useLicenseFile);
rightsBlock.Text = "GRANTS LIST\n-----------------\n";
foreach (ContentGrant grant in grants)
{
    rightsBlock.Text += "USER:  " + grant.User.Name + " [" +
        grant.User.AuthenticationType + "]\n";
    rightsBlock.Text += "RIGHT: " + grant.Right.ToString() + "\n";
    rightsBlock.Text += "    From:  " + grant.ValidFrom + "\n";
    rightsBlock.Text += "    Until: " + grant.ValidUntil + "\n";
}

if (cryptoProvider.CanDecrypt)
    ShowStatus("   Decryption granted.");
else
    ShowStatus("   CANNOT DECRYPT!");
ShowStatus("   Binding UseLicense with the SecureEnvironment" & vbLf & "       to obtain the CryptoProvider.")
Dim cryptoProvider As CryptoProvider = useLicense.Bind(_secureEnv)

ShowStatus("   Obtaining BoundGrants.")
Dim grants As ReadOnlyCollection(Of ContentGrant) = cryptoProvider.BoundGrants

rightsBlockTitle.Text = "Rights - " & Filename(useLicenseFile)
rightsBlock.Text = "GRANTS LIST" & vbLf & "-----------------" & vbLf
For Each grant As ContentGrant In grants
    rightsBlock.Text &= "USER:  " & grant.User.Name & " [" & grant.User.AuthenticationType & "]" & vbLf
    rightsBlock.Text &= "RIGHT: " & grant.Right.ToString() & vbLf
    rightsBlock.Text &= "    From:  " & grant.ValidFrom & vbLf
    rightsBlock.Text &= "    Until: " & grant.ValidUntil & vbLf
Next grant

If cryptoProvider.CanDecrypt = True Then
    ShowStatus("   Decryption granted.")
Else
    ShowStatus("   CANNOT DECRYPT!")
End If

Applies to