PDFの印刷・コピー・編集・注釈権限を検証して設定
PDF権限チェッカーは、入力されたアクセス権限の一覧を一貫した権限セットへ整えます。PDFの参照先と、print、copy、edit、annotateの任意の組み合わせをご指定ください。結果は小文字の標準名になり、重複が除かれ、常に決まった順序で返されます。未対応の名前が含まれる場合は、曖昧な設定を次の処理へ渡さず、理由を明示してリクエストを終了します。そのため、自動処理の設定を統一し、後から確認しやすい状態に保てます。
無料で実行
処理はブラウザ内で完結します。ファイルは送信されません。無料でご利用いただけます。
文書を変更する前に権限方針を確定します
PDFのセキュリティ処理は、暗号化ライブラリや文書サービスがファイルを扱うより前に、小さな設定オブジェクトから始まることがよくあります。その設定も文書本体と同じように厳密な検証が必要です。たとえば「printing」のような誤った名前は、ライブラリによって無視されたり、異なる意味に解釈されたり、有効な値として保存されたりするおそれがあります。この機能は、その境界に明確な契約を設けます。PDFの参照先と許可したい権限名を送信すると、参照先が存在し、permissionsがprint、copy、edit、annotateだけを含む配列であることを確認します。その後、受理した名前を標準順で返します。PDFのダウンロード、内容確認、暗号化、書き換えは行いません。検証を分離することで、結果を後続の保護処理、権限データベース、承認画面、監査記録へ安全に渡せます。時間や費用のかかる文書処理を始める前に、誤った選択を即座に拒否することもできます。
正規化によって安定した結果を得る仕組み
権限一覧は、チェックボックス、コマンドライン引数、取り込んだ設定、複数ルールの統合結果などから作られます。そのため、大文字と小文字の混在、前後の空白、値の重複、順序の違いが生じます。正規化処理では、各文字列の前後の空白を除き、小文字に変換してから対応語彙と照合します。権限は命令の並びではなく集合なので、重複する値は1件にまとめます。入力順にかかわらず、出力順は常にprint、copy、edit、annotateです。空の配列も有効で、4種類の権限を一つも付与しない方針を表します。文字列以外の値や未知の名前が一つでもあれば、リクエスト全体を入力エラーにします。未対応の値を黙って捨てることはありません。部分的な受理で依頼者の意図が変わることを防げるため、セキュリティ設定では重要な動作です。決定的な出力なので、比較、保存、署名、審査、テストも容易です。
正規化したセットをPDF処理全体で利用します
返される配列は検証済みの権限方針であり、変更後の文書ではありません。実際に暗号化や所有者制限を適用するコンポーネントへ渡し、PDF閲覧ソフトやOSでの詳しい動作は、そのコンポーネントの資料をご確認ください。一般にPDF権限は、準拠ソフトウェアが尊重する制御情報です。アクセス管理、慎重な配布、適切なパスワードによる暗号化の代わりにはなりません。それでも検証と適用を分けると、実務上の利点があります。Webフォームは送信前に明確な要約を表示でき、APIは同じ意味の複数配列ではなく統一表現を保存でき、バッチ処理は最初の未知名で停止できます。この機能はネットワークサービスを使わず、指定されたPDFも復号しないため、ブラウザーとAPIで同じ決定的な結果を返します。ブラウザーでは無料で、APIによる自動処理の基本料金は$0.002です。文書内容を返したり保存したりすることもありません。
活用例
権限フォームを検証する
PDF保護を依頼する前にチェックボックスの値を正規化し、受理された方針を利用者へ正確に表示します。
保存する文書方針を統一する
権限セットをデータベースや監査記録へ保存する前に、重複と順序の違いを取り除きます。
危険な設定ミスを拒否する
連携システムが未知の権限名を送った場合、黙って無視せずバッチ処理を停止します。
よくある質問
この機能はPDFを変更または暗号化しますか?
いいえ。PDFの参照先と権限名を検証し、正規化したセットを返します。適用には別のPDF保護ツールをご利用ください。
どの権限名に対応していますか?
標準名のprint、copy、edit、annotateに対応しています。
未知の名前があるとどうなりますか?
未知の値と利用可能な選択肢を示す入力エラーになり、リクエストは失敗します。
重複や大文字の値も受け付けますか?
はい。前後の空白を除き、名前を小文字に変換し、重複する権限を一つにまとめます。
空の権限一覧を指定できますか?
はい。空の配列はそのまま返され、対応する4種類の権限を一つも付与しないことを表します。
料金はいくらですか?
このページのブラウザー実行は無料です。APIによる自動処理は1リクエストあたり$0.002です。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/pdf/permissions-set \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"pdf":"kit://upl_example_pdf","permissions":["print","copy"]}'const res = await fetch("https://api.kit.forhosting.com/pdf/permissions-set", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"pdf": "kit://upl_example_pdf",
"permissions": [
"print",
"copy"
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/pdf/permissions-set",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"pdf": "kit://upl_example_pdf",
"permissions": [
"print",
"copy"
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/pdf/permissions-set", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"pdf":"kit://upl_example_pdf","permissions":["print","copy"]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"pdf":"kit://upl_example_pdf","permissions":["print","copy"]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/pdf/permissions-set", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"pdf": "kit://upl_example_pdf",
"permissions": [
"print",
"copy"
]
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "pdf.permissions_set",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_mb | 25 |
max_pages | 200 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |