PublishLicense Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
İmzalı hakları yönetilen yayımlama lisansını temsil eder.
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
- Devralma
-
PublishLicense
- Öznitelikler
Örnekler
Aşağıdaki örnek, yöntemini kullanarak bir PublishLicense başlatma işleminin Sign nasıl yapılacağını gösterir.
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
Açıklamalar
PublishLicense haklar, kullanıcılar ve güvenlikle ilgili diğer bilgiler hakkında güvenlik verilerini tanımlar. Lisans, belirli bir bilgisayardaki belirli bir kullanıcının belirtilen hakları yönetilen içeriği nasıl kullanabileceğini tanımlar.
Yayımlama işlemi, içinde UnsignedPublishLicensehak bilgilerini tanımlayan belge yazarıyla başlar. Ardından, yazar yöntemini UnsignedPublishLicenseçağırarak Sign imzalı PublishLicense bir oluşturur. İmzalının PublishLicense seri hale getirilmiş biçimi, yöntemini PublishLicenseçağırarak AcquireUseLicense almak UseLicense için bunu kullanabilen son kullanıcılara sağlanabilir. Döndürülen UseLicense daha sonra istemci uygulamasının kullanıcıya verilen hakları kullanmasına izin verir.
Diğer System.Security.RightsManagement türlerde olduğu gibi, PublishLicense yalnızca tam güven uygulamalarında kullanılabilir.
Oluşturucular
PublishLicense(String) |
Belirtilen serileştirilmiş ve imzalı PublishLicenseöğesinden sınıfının yeni bir örneğini PublishLicense başlatır. |
Özellikler
ContentId |
Yayımcı tarafından oluşturulan içerik tanımlayıcısını alır. |
ReferralInfoName |
İçeriğin yazarının veya yayımcısının kişi adını alır. |
ReferralInfoUri |
İçeriğin yazarı veya yayımcısı için kişi URI'sini alır. |
UseLicenseAcquisitionUrl |
bir elde etmek UseLicenseiçin kullanılacak URI'yi alır. |
Yöntemler
AcquireUseLicense(SecureEnvironment) |
UseLicense Belirtilen SecureEnvironmentiçindeki bir kullanıcı veya kullanıcı grubu için alma girişiminde bulunur. |
AcquireUseLicenseNoUI(SecureEnvironment) |
UseLicense Belirtilen SecureEnvironmentiçindeki bir kullanıcı veya kullanıcı grubu için alma girişiminde bulunur. |
DecryptUnsignedPublishLicense(CryptoProvider) |
Bu imzalı PublishLicenseöğesinin şifresi çözülmüş UnsignedPublishLicense bir sürümünü döndürür. |
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
ToString() |
Bu lisansı oluşturmak için kullanılan serileştirilmiş XrML dizesini döndürür. |