PublishLicense クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
署名付き権限で管理される発行ライセンスを表します。
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
- 属性
例
次の例は、メソッドを使用して a を 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を作成しますUnsignedPublishLicense。Sign その後、署名済PublishLicenseみのシリアル化された形式をエンド ユーザーに提供できます。このフォームを使用して、そのメソッドPublishLicenseをAcquireUseLicense呼び出すことによって取得UseLicenseできます。 返された UseLicense クライアント アプリケーションは、ユーザーに付与された権限を実行できます。
他の System.Security.RightsManagement 種類と同様に、 PublishLicense 完全信頼アプリケーションでのみ使用できます。
コンストラクター
PublishLicense(String) |
署名付きのシリアル化された 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 文字列を返します。 |