5.6.1機能説明
Adobe Acrobat5相当のセキュリティ設定を定義します。
5.6.2属性説明
1bs:document-security128属性説明
属性名 |
指定 |
説明 |
型 |
指定内容 |
初期値 |
user-password |
任意 |
ユーザパスワード
元のテキストに対してbase64エンコーディングを行ったもの |
CDATA |
半角英数(32文字以内) |
- |
master-password |
任意 |
マスタパスワード
元のテキストに対してbase64エンコーディングを行ったもの |
CDATA |
半角英数(32文字以内) |
- |
encryption-level |
任意 |
暗号化レベル |
(Choice) |
128 |
128 |
accessibility |
任意 |
アクセシビリティを有効にする |
(Choice) |
allowed:有効 /
not-allowed:無効 |
allowed |
content-copying |
任意 |
内容のコピーや抽出の許可 |
(Choice) |
allowed:許可 /
not-allowed:許可しない |
not-allowed |
printing |
任意 |
印刷 |
(Choice) |
allowed:許可 /
not-allowed:許可しない/
low-resolution:低解像度 |
allowed |
changing |
任意 |
変更の許可 |
(Choice) |
not-allowed:なし /
only-assembly:文書アセンブリのみ /
only-fillin-signing:フォームフィールドの入力または署名のみ /
comment-fillin-signing:注釈作成、フォームフィールドの入力または署名 /
editing-comment-field-authoring:編集、注釈及びフォームフィールドの作成 |
comment-fillin-signing |
2 bs:security-recipients属性説明
属性はありません。
X509の署名を使用してセキュリティを設定するための機能です。
公開キーで暗号化することで秘密キーを持つユーザ以外には開くことの出来ないPDFを生成することが可能となります。
3bs:full-recipients属性説明
アクセシビリティを有効にする等のセキュリティ設定に依存する事無く全権限を使用できるユーザを指定します。
一つ以上で複数の指定が可能です。
属性名 |
指定 |
説明 |
型 |
指定内容 |
初期値 |
href |
必須 |
フルアクセス可能なユーザの証明書ファイル |
CDATA |
|
- |
4bs:user-recipients属性説明
アクセシビリティを有効にする等のセキュリティ設定に従った権限を使用できるユーザを指定します。
省略可能で複数の指定が可能です。
属性名 |
指定 |
説明 |
型 |
指定内容 |
初期値 |
href |
必須 |
権限設定するユーザの証明書ファイル |
CDATA |
|
- |
5.6.3記述例
bs:document-security128サンプル1
パスワードを指定してセキュリティを設定するサンプルです。
<?xml version="1.0" encoding="UTF-8"?>
<!-- XML file created by biz-Stream Designer -->
<!-- biz-Stream Copyright BrainSellers.com Corp. -->
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:pdf="http://www.brainsellers.com/schema" xmlns:svg="http://www.brainsellers.com/schema" xmlns:bs="http://www.brainsellers.com/schema" xmlns:form="http://www.brainsellers.com/schema" version="5.0.0">
<bs:document-properties-set>
<bs:document-view initial-page="1" page-size="fit-in-window" disposition="two-column-left" menubar="true" toolbar="true" window-ui="true" thumbnail="false" full-screen="false" fit-window="false" center-window="false"/>
<bs:document-security128 master-password="YnNhZG1pbg== " accessibility="not-allowed" content-copying="not-allowed" printing="not-allowed" changing="not-allowed">
</bs:document-security128>
</bs:document-properties-set>
<bs:datasource-master-set>
</bs:datasource-master-set>
<fo:layout-master-set>
<fo:simple-page-master master-name="A4V" page-height="297mm" page-width="210mm">
<fo:region-body/>
<fo:region-before extent="50mm"/>
<fo:region-after extent="50mm"/>
<fo:region-start extent="40mm"/>
<fo:region-end extent="40mm"/>
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="A4V" bs:local-page-control="none">
<bs:page-javascript-set>
<bs:page-javascript name="open" action="page-open">app.alert("page-open");</bs:page-javascript>
<bs:page-javascript name="clone" action="page-close">app.alert("page-close");</bs:page-javascript>
</bs:page-javascript-set>
<fo:static-content flow-name="xsl-region-end">
<bs:block-container>
<bs:include href="${base-dir}/sample/xml/layout-master-set/layout-master-setSample-end.xml"/>
</bs:block-container>
</fo:static-content>
<fo:static-content flow-name="xsl-region-start">
<bs:block-container>
<bs:include href="${base-dir}/sample/xml/layout-master-set/layout-master-setSample-start.xml"/>
</bs:block-container>
</fo:static-content>
<fo:static-content flow-name="xsl-region-after">
<bs:block-container>
<bs:include href="${base-dir}/sample/xml/layout-master-set/layout-master-setSample-after.xml"/>
</bs:block-container>
</fo:static-content>
<fo:static-content flow-name="xsl-region-before">
<bs:block-container>
<bs:include href="${base-dir}/sample/xml/layout-master-set/layout-master-setSample-before.xml"/>
</bs:block-container>
</fo:static-content>
<fo:flow flow-name="xsl-region-body">
<bs:block-container>
<bs:include href="${base-dir}/sample/xml/layout-master-set/layout-master-setSample-body.xml"/>
</bs:block-container>
</fo:flow>
</fo:page-sequence>
</fo:root>
bs:document-security128サンプル2
公開キーでセキュリティを設定するサンプルです。
この機能を使用して生成したPDFは、PDFバージョン1.4以降に対応するアプリケーション(Adobe Acrobat5以降など)でのみ利用可能です。
<?xml version="1.0" encoding="UTF-8"?>
<!-- XML file created by biz-Stream Designer -->
<!-- biz-Stream Copyright BrainSellers.com Corp. -->
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:pdf="http://www.brainsellers.com/schema" xmlns:svg="http://www.brainsellers.com/schema" xmlns:bs="http://www.brainsellers.com/schema" xmlns:form="http://www.brainsellers.com/schema" version="5.0.0">
<bs:document-properties-set>
<bs:document-javascript-set>
<bs:document-javascript name="open" action="open">app.alert("document-open");</bs:document-javascript>
<bs:document-javascript name="closure" action="closure">app.alert("document-closure");</bs:document-javascript>
<bs:document-javascript name="saving" action="saving">app.alert("document-saving");</bs:document-javascript>
<bs:document-javascript name="saved" action="saved">app.alert("document-saved");</bs:document-javascript>
<bs:document-javascript name="printing" action="printing">app.alert("document-printing");</bs:document-javascript>
<bs:document-javascript name="printed" action="printed">app.alert("document-printed");</bs:document-javascript>
</bs:document-javascript-set>
<bs:document-summary title="タイトル" subject="サブタイトル" author="作成者" keywords="キーワード"/>
<bs:document-view initial-page="1" page-size="fit-in-window" disposition="two-column-left" menubar="true" toolbar="true" window-ui="true" thumbnail="false" full-screen="false" fit-window="false" center-window="false"/>
<bs:document-security128 accessibility="allowed" content-copying="not-allowed" printing="not-allowed" changing="not-allowed">
<bs:security-recipients>
<bs:user-recipient href="${base-dir}\sample\xml\layout-master-set\otherone.cer"/>
<bs:full-recipient href="${base-dir}\sample\xml\layout-master-set\someone.cer"/>
</bs:security-recipients>
</bs:document-security128>
</bs:document-properties-set>
<bs:datasource-master-set>
</bs:datasource-master-set>
<fo:layout-master-set>
<fo:simple-page-master master-name="A4V" page-height="297mm" page-width="210mm">
<fo:region-body/>
<fo:region-before extent="50mm"/>
<fo:region-after extent="50mm"/>
<fo:region-start extent="40mm"/>
<fo:region-end extent="40mm"/>
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="A4V" bs:local-page-control="none">
<bs:page-javascript-set>
<bs:page-javascript name="open" action="page-open">app.alert("page-open");</bs:page-javascript>
<bs:page-javascript name="clone" action="page-close">app.alert("page-close");</bs:page-javascript>
</bs:page-javascript-set>
<fo:static-content flow-name="xsl-region-end">
<bs:block-container>
<bs:include href="${base-dir}/sample/xml/layout-master-setlayout-master-setSample-/end.xml"/>
</bs:block-container>
</fo:static-content>
<fo:static-content flow-name="xsl-region-start">
<bs:block-container>
<bs:include href="${base-dir}/sample/xml/layout-master-set/layout-master-setSample-start.xml"/>
</bs:block-container>
</fo:static-content>
<fo:static-content flow-name="xsl-region-after">
<bs:block-container>
<bs:include href="${base-dir}/sample/xml/layout-master-set/layout-master-setSample-after.xml"/>
</bs:block-container>
</fo:static-content>
<fo:static-content flow-name="xsl-region-before">
<bs:block-container>
<bs:include href="${base-dir}/sample/xml/layout-master-set/layout-master-setSample-before.xml"/>
</bs:block-container>
</fo:static-content>
<fo:flow flow-name="xsl-region-body">
<bs:block-container>
<bs:include href="${base-dir}/sample/xml/layout-master-set/layout-master-setSample-body.xml"/>
</bs:block-container>
</fo:flow>
</fo:page-sequence>
</fo:root>
ユーザ(otherone.cer)がPDFを開いた場合、文書に関する権限は以下のとおりです。
フルユーザ(someone.cer)がPDFを開いた場合、文書に関する権限は以下のとおりです。