RightsManagementInformation.CryptoProvider Özellik
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.
Paketin şifrelenmiş hak yönetimi veri akışına erişim için öğesini CryptoProvider alır veya ayarlar.
public:
property System::Security::RightsManagement::CryptoProvider ^ CryptoProvider { System::Security::RightsManagement::CryptoProvider ^ get(); void set(System::Security::RightsManagement::CryptoProvider ^ value); };
public System.Security.RightsManagement.CryptoProvider CryptoProvider { get; set; }
member this.CryptoProvider : System.Security.RightsManagement.CryptoProvider with get, set
Public Property CryptoProvider As CryptoProvider
Özellik Değeri
CryptoProvider Hak yönetimi bilgilerine erişmek için.
Örnekler
Aşağıdaki örnekte özelliğin nasıl ayarlanacağı gösterilmektedir CryptoProvider .
ShowStatus(" Binding UseLicense with the SecureEnvironment" +
"\n to obtain the CryptoProvider.");
rmi.CryptoProvider = useLicense.Bind(_secureEnv);
ShowStatus(" Obtaining BoundGrants.");
grants = rmi.CryptoProvider.BoundGrants;
// You can access the Package via GetPackage() at this point.
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";
}
ShowStatus(" Binding UseLicense with the SecureEnvironment" & vbLf & " to obtain the CryptoProvider.")
rmi.CryptoProvider = useLicense.Bind(_secureEnv)
ShowStatus(" Obtaining BoundGrants.")
grants = rmi.CryptoProvider.BoundGrants
' You can access the Package via GetPackage() at this point.
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
Aşağıdaki örnekte özelliğine nasıl erişecekleri gösterilmektedir CryptoProvider .
if (rmi.CryptoProvider.CanDecrypt == true)
ShowStatus(" Decryption granted.");
else
ShowStatus(" CANNOT DECRYPT!");
ShowStatus(" Getting the Package from\n" +
" the EncryptedPackage.");
_xpsPackage = ePackage.GetPackage();
if (_xpsPackage == null)
{
MessageBox.Show("Unable to get Package.");
return false;
}
// Set a PackageStore Uri reference for the encrypted stream.
// ("sdk://packLocation" is a pseudo URI used by
// PackUriHelper.Create to define the parserContext.BaseURI
// that XamlReader uses to access the encrypted data stream.)
Uri packageUri = new Uri(@"sdk://packLocation", UriKind.Absolute);
// Add the URI package
PackageStore.AddPackage(packageUri, _xpsPackage);
// Determine the starting part for the package.
PackagePart startingPart = GetPackageStartingPart(_xpsPackage);
// Set the DocViewer.Document property.
ShowStatus(" Opening in DocumentViewer.");
ParserContext parserContext = new ParserContext();
parserContext.BaseUri = PackUriHelper.Create(
packageUri, startingPart.Uri);
parserContext.XamlTypeMapper = XamlTypeMapper.DefaultMapper;
DocViewer.Document = XamlReader.Load(
startingPart.GetStream(), parserContext)
as IDocumentPaginatorSource;
// Enable document menu controls.
menuFileClose.IsEnabled = true;
menuFilePrint.IsEnabled = true;
menuViewIncreaseZoom.IsEnabled = true;
menuViewDecreaseZoom.IsEnabled = true;
// Give the DocumentViewer focus.
DocViewer.Focus();
If rmi.CryptoProvider.CanDecrypt = True Then
ShowStatus(" Decryption granted.")
Else
ShowStatus(" CANNOT DECRYPT!")
End If
ShowStatus(" Getting the Package from" & vbLf & " the EncryptedPackage.")
_xpsPackage = ePackage.GetPackage()
If _xpsPackage Is Nothing Then
MessageBox.Show("Unable to get Package.")
Return False
End If
' Set a PackageStore Uri reference for the encrypted stream.
' ("sdk://packLocation" is a pseudo URI used by
' PackUriHelper.Create to define the parserContext.BaseURI
' that XamlReader uses to access the encrypted data stream.)
Dim packageUri As New Uri("sdk://packLocation", UriKind.Absolute)
' Add the URI package
PackageStore.AddPackage(packageUri, _xpsPackage)
' Determine the starting part for the package.
Dim startingPart As PackagePart = GetPackageStartingPart(_xpsPackage)
' Set the DocViewer.Document property.
ShowStatus(" Opening in DocumentViewer.")
Dim parserContext As New ParserContext()
parserContext.BaseUri = PackUriHelper.Create(packageUri, startingPart.Uri)
parserContext.XamlTypeMapper = XamlTypeMapper.DefaultMapper
DocViewerProperty.Document = TryCast(XamlReader.Load(startingPart.GetStream(), parserContext), IDocumentPaginatorSource)
' Enable document menu controls.
menuFileClose.IsEnabled = True
menuFilePrint.IsEnabled = True
menuViewIncreaseZoom.IsEnabled = True
menuViewDecreaseZoom.IsEnabled = True
' Give the DocumentViewer focus.
DocViewerProperty.Focus()
Şunlara uygulanır
GitHub'da bizimle işbirliği yapın
Bu içeriğin kaynağı GitHub'da bulunabilir; burada ayrıca sorunları ve çekme isteklerini oluşturup gözden geçirebilirsiniz. Daha fazla bilgi için katkıda bulunan kılavuzumuzu inceleyin.