다음을 통해 공유


PublishLicense 클래스

정의

서명된 권한 관리 게시 라이선스를 나타냅니다.

public ref class PublishLicense
[System.Security.SecurityCritical(System.Security.SecurityCriticalScope.Everything)]
public class PublishLicense
public class PublishLicense
[<System.Security.SecurityCritical(System.Security.SecurityCriticalScope.Everything)>]
type PublishLicense = class
type PublishLicense = class
Public Class PublishLicense
상속
PublishLicense
특성

예제

다음 예제에서는 초기화 하는 방법을 보여 줍니다는 PublishLicense 를 사용 하 여를 Sign 메서드.

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;
}
WriteStatus("   Signing the UnsignedPublishLicense" & vbLf & "       to build the PublishLicense.")
Dim authorsUseLicense As UseLicense = Nothing
Dim publishLicense As PublishLicense = unsignedLicense.Sign(_secureEnv, authorsUseLicense)

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

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

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

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

WriteStatus("Verifying package encryption.")
If EncryptedPackageEnvelope.IsEncryptedPackageEnvelope(encryptedFile) Then
    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." & vbLf)
    Return False
End If

설명

PublishLicense 권한, 사용자 및 기타 보안 관련 정보에 대 한 보안 데이터를 정의합니다. 라이선스는 특정 컴퓨터에서 특정 사용자 지정된 권한 관리 콘텐츠에 사용 하 여 방법을 정의 합니다.

게시 프로세스에서 권한 정보를 정의 하는 문서 작성자를 사용 하 여 시작을 UnsignedPublishLicense입니다. 작성자는 서명 된 만듭니다 어 PublishLicense 호출 하 여는 Sign 메서드는 UnsignedPublishLicense합니다. 서명 된 serialize 된 형태가 PublishLicense 획득 하는 데 사용할 수 있는 최종 사용자가 제공 될 수 있습니다를 UseLicense 호출 하 여를 AcquireUseLicense 메서드의 PublishLicense. 반환 된 UseLicense 다음 클라이언트 애플리케이션 사용자에 게 부여 된 권한을 행사할 수 있습니다.

다른와 마찬가지로 System.Security.RightsManagement 형식을 PublishLicense 완전 신뢰 애플리케이션에만 유용 합니다.

생성자

PublishLicense(String)

serialize 및 서명된 해당 PublishLicense에서 PublishLicense 클래스의 새 인스턴스를 초기화합니다.

속성

ContentId

게시자가 만든 콘텐츠 식별자를 가져옵니다.

ReferralInfoName

콘텐츠 작성자 또는 게시자의 연락처 이름을 가져옵니다.

ReferralInfoUri

콘텐츠 작성자 또는 게시자의 연락처 URI를 가져옵니다.

UseLicenseAcquisitionUrl

UseLicense를 얻는 데 사용할 URI를 가져옵니다.

메서드

AcquireUseLicense(SecureEnvironment)

지정된 UseLicense에 있는 사용자 또는 사용자 그룹에 대한 SecureEnvironment를 얻으려고 합니다.

AcquireUseLicenseNoUI(SecureEnvironment)

지정된 UseLicense에 있는 사용자 또는 사용자 그룹에 대한 SecureEnvironment를 얻으려고 합니다.

DecryptUnsignedPublishLicense(CryptoProvider)

서명된 이 UnsignedPublishLicense에 대한 해독된 PublishLicense 버전을 반환합니다.

Equals(Object)

지정된 개체가 현재 개체와 같은지 확인합니다.

(다음에서 상속됨 Object)
GetHashCode()

기본 해시 함수로 작동합니다.

(다음에서 상속됨 Object)
GetType()

현재 인스턴스의 Type을 가져옵니다.

(다음에서 상속됨 Object)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
ToString()

이 라이선스를 만드는 데 사용된 직렬화된 XrML 문자열을 반환합니다.

적용 대상

추가 정보