Auf Englisch lesen

Teilen über


RightsManagementInformation Klasse

Definition

Stellt DRM-Informationen (Digital Rights Management) dar, die in einem EncryptedPackageEnvelope gespeichert sind.

C#
public class RightsManagementInformation
Vererbung
RightsManagementInformation

Beispiele

Das folgende Beispiel zeigt, wie ein RightsManagementInformation Objekt für die Verschlüsselung initialisiert wird.

C#
WriteStatus("   Signing the UnsignedPublishLicense\n" +
            "       to build the PublishLicense.");
UseLicense authorsUseLicense;
PublishLicense publishLicense =
    unsignedLicense.Sign(_secureEnv, out authorsUseLicense);

WriteStatus("   Binding the author's UseLicense and");
WriteStatus("       obtaining the CryptoProvider.");
CryptoProvider cryptoProvider = authorsUseLicense.Bind(_secureEnv);

WriteStatus("   Creating the EncryptedPackage.");
Stream packageStream = File.OpenRead(packageFile);
EncryptedPackageEnvelope ePackage =
    EncryptedPackageEnvelope.CreateFromPackage(encryptedFile,
        packageStream, publishLicense, cryptoProvider);

WriteStatus("   Adding an author's UseLicense.");
RightsManagementInformation rmi =
    ePackage.RightsManagementInformation;
rmi.SaveUseLicense(author, authorsUseLicense);

ePackage.Close();
WriteStatus("   Done - Package encryption complete.");

WriteStatus("Verifying package encryption.");
if (EncryptedPackageEnvelope.IsEncryptedPackageEnvelope(encryptedFile))
{
    WriteStatus("   Confirmed - '" + encryptedFilename +
                "' is encrypted.");
}
else
{
    MessageBox.Show("ERROR: '" + encryptedFilename +
        "' is NOT ENCRYPTED.", "Encryption Error",
        MessageBoxButton.OK, MessageBoxImage.Error);
    WriteStatus("ERROR: '" + encryptedFilename +
                "' is NOT ENCRYPTED.\n");
    return false;
}

Das folgende Beispiel zeigt, wie ein RightsManagementInformation Objekt für die Entschlüsselung initialisiert wird.

C#
ShowStatus("   Opening the encrypted Package.");
EncryptedPackageEnvelope ePackage =
    EncryptedPackageEnvelope.Open(xpsFile, FileAccess.ReadWrite);
RightsManagementInformation rmi =
    ePackage.RightsManagementInformation;

ShowStatus("   Looking for an embedded UseLicense for user:\n       " +
           currentUserId + " [" + _authentication + "]");
UseLicense useLicense =
    rmi.LoadUseLicense(
        new ContentUser(currentUserId, _authentication));

ReadOnlyCollection<ContentGrant> grants;
if (useLicense == null)
{
    ShowStatus("   No Embedded UseLicense found.\n       " +
               "Attempting to acqure UseLicnese\n       " +
               "from the PublishLicense.");
    PublishLicense pubLicense = rmi.LoadPublishLicense();

    ShowStatus("   Referral information:");

    if (pubLicense.ReferralInfoName == null)
        ShowStatus("       Name: (null)");
    else
        ShowStatus("       Name: " + pubLicense.ReferralInfoName);

    if (pubLicense.ReferralInfoUri == null)
        ShowStatus("    Uri: (null)");
    else
        ShowStatus("    Uri: " +
            pubLicense.ReferralInfoUri.ToString());

    useLicense = pubLicense.AcquireUseLicense(_secureEnv);
    if (useLicense == null)
    {
        ShowStatus("   User DOES NOT HAVE RIGHTS\n       " +
            "to access this document!");
        return false;
    }
}// end:if (useLicense == null)
ShowStatus("   UseLicense acquired.");

Hinweise

RightsManagementInformationermöglicht den Zugriff auf die PublishLicense in einer verwalteten geschützten PackageRechte gespeicherten Daten und UseLicense .

Eigenschaften

CryptoProvider

Ruft den CryptoProvider für den Zugriff auf den verschlüsselten Datenstream zur Rechteverwaltung des Pakets ab oder legt diesen fest.

Methoden

DeleteUseLicense(ContentUser)

Löscht die UseLicense für einen angegebenen Benutzer aus dem verschlüsselten Datenstream für die Rechteverwaltung.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetEmbeddedUseLicenses()

Gibt eine Wörterbuchauflistung von Benutzer- und UseLicense-Schlüssel-Wert-Paaren aus dem verschlüsselten Datenstream für die Rechteverwaltung zurück.

GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
LoadPublishLicense()

Gibt die eingebettete PublishLicense aus dem verschlüsselten Datenstream für die Rechteverwaltung zurück.

LoadUseLicense(ContentUser)

Gibt aus dem verschlüsselten Datenstream für die Rechteverwaltung eine eingebettete UseLicense eines angegebenen Benutzers zurück.

MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
SavePublishLicense(PublishLicense)

Speichert eine angegebene PublishLicense im verschlüsselten Datenstream für die Rechteverwaltung.

SaveUseLicense(ContentUser, UseLicense)

Speichert eine angegebene UseLicense für einen angegebenen Benutzer im verschlüsselten Datenstream für die Rechteverwaltung.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für:

Produkt Versionen
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

Weitere Informationen