デフォルトでは、誰でも PDF ファイルを開いたり、コピーしたり、印刷したり、編集したりできます。ただし、PDF ドキュメントが機密情報を含む場合は、PDF ドキュメントを暗号化して権限を持ったユーザーのみがアクセスできるように設定できます。
ドキュメントの所有者とその他のすべてのユーザー用として別個のパスワードがあります。ユーザーのアクセスを選択的に制限し、ドキュメントの閲覧、印刷、編集などの特定の操作のみを許可できます。
PDF for .NET は、PdfSecurity オブジェクトを返す C1PdfDocumentBase.Security プロパティを提供します。このオブジェクトは、「所有者パスワード」(ドキュメントのパスワードと権限を変更するために必要)と「ユーザーパスワード」(ドキュメントを開くために必要)を指定できるプロパティを持っています。さらに、PdfSecurityオブジェクトでは、通常ユーザーが持つことができる権限を指定できます。たとえば、ユーザーにドキュメントの閲覧だけを許可して、印刷や編集は許可しないように指定できます。
PDF for .NET セキュリティ関数を使用するには、ドキュメントを保存する前にパスワードを設定するだけです。例えば:
Visual Basic コードの書き方
Visual Basic |
コードのコピー
|
---|---|
' ドキュメントを通常どおりに作成します。 CreateDoc() ' パスワードを設定します。 _c1pdf.Security.OwnerPassword = "2mds%dffgd" _c1pdf.Security.UserPassword = "anyone" _c1pdf.Security.AllowEditAnnotations = False _c1pdf.Security.AllowEditContent = False _c1pdf.Security.AllowPrint = False ' 暗号化したドキュメントを保存します。 _c1pdf.Save("") |
C# コードの書き方
C# |
コードのコピー
|
---|---|
// ドキュメントを通常どおりに作成します。 CreateDoc(); // パスワードを設定します。 _c1pdf.Security.OwnerPassword = "2mds%dffgd"; _c1pdf.Security.UserPassword = "anyone"; _c1pdf.Security.AllowEditAnnotations = false; _c1pdf.Security.AllowEditContent = false; _c1pdf.Security.AllowPrint = false; // 暗号化したドキュメントを保存します。 _c1pdf.Save(@"c:\reports\secure.pdf"); |
権限を指定し、所有者パスワードのみを設定してユーザーパスワードは空のままにしておけることに注意してください。この場合、誰でもドキュメントを開くことができますが、権限を変更できるのは所有者のみとなります。
PDF for .NET で使用している暗号化スキームは一般的なもので、100% 安全ではないことに注意してください。提供されたセキュリティは、大部分の通常の攻撃からドキュメントを保護するのに適していますが、データが本当に機密情報である場合、PDF 暗号化のみに頼るべきではありません。