이 문서는 기계 번역을 이용하여 번역되었습니다. 문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문

RightsManagementInformation 클래스

 

게시 날짜: 2016년 11월

EncryptedPackageEnvelope에 저장되어 있는 DRM(디지털 권한 관리) 정보를 나타냅니다.

네임스페이스:   System.IO.Packaging
어셈블리:  WindowsBase(WindowsBase.dll에 있음)

System.Object
  System.IO.Packaging.RightsManagementInformation

public class RightsManagementInformation

이름설명
System_CAPS_pubpropertyCryptoProvider

가져오거나는 CryptoProvider 패키지를 액세스 권한 관리 데이터 스트림에서 암호화 된의 있습니다.

이름설명
System_CAPS_pubmethodDeleteUseLicense(ContentUser)

삭제는 UseLicense 암호화 된 권한 관리 데이터 스트림에서 지정 된 사용자입니다.

System_CAPS_pubmethodEquals(Object)

지정한 개체와 현재 개체가 같은지 여부를 확인합니다.(Object에서 상속됨)

System_CAPS_protmethodFinalize()

가비지 컬렉션이 회수하기 전에 개체가 리소스를 해제하고 다른 정리 작업을 수행할 수 있게 합니다.(Object에서 상속됨)

System_CAPS_pubmethodGetEmbeddedUseLicenses()

사용자의 사전 컬렉션을 반환 하 고 UseLicense 키/값 쌍의 암호화 된 권한 관리 데이터 스트림에서 합니다.

System_CAPS_pubmethodGetHashCode()

기본 해시 함수로 작동합니다.(Object에서 상속됨)

System_CAPS_pubmethodGetType()

현재 인스턴스의 Type을 가져옵니다.(Object에서 상속됨)

System_CAPS_pubmethodLoadPublishLicense()

포함 된 반환 PublishLicense 암호화 된 권한 관리 데이터 스트림에서 합니다.

System_CAPS_pubmethodLoadUseLicense(ContentUser)

지정된 된 사용자의 포함 된 반환 UseLicense 암호화 된 권한 관리 데이터 스트림에서 합니다.

System_CAPS_protmethodMemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.(Object에서 상속됨)

System_CAPS_pubmethodSavePublishLicense(PublishLicense)

저장 된 지정 된 PublishLicense 암호화 된 권한 관리 데이터 스트림에 합니다.

System_CAPS_pubmethodSaveUseLicense(ContentUser, UseLicense)

저장 된 지정 된 UseLicense 암호화 된 권한 관리 데이터 스트림에 지정 된 사용자입니다.

System_CAPS_pubmethodToString()

현재 개체를 나타내는 문자열을 반환합니다.(Object에서 상속됨)

RightsManagementInformation 에 대 한 액세스를 제공 된 PublishLicenseUseLicense rights에 저장 된 데이터를 관리 되는 보호 된 Package합니다.

다음 예제에서는 초기화 하는 방법을 보여 줍니다.는 RightsManagementInformation 암호화에 대 한 개체입니다.

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;
}

다음 예제에서는 초기화 하는 방법을 보여 줍니다.는 RightsManagementInformation 암호 해독을 위한 개체입니다.

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.");

.NET Framework
3.0 이후 사용 가능

이 형식의 모든 public static(Visual Basic의 공유 Visual Basic의 경우) 멤버는 스레드로부터 안전합니다. 인스턴스 멤버는 스레드로부터의 안전이 보장되지 않습니다.

맨 위로 이동
표시: