[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fDwCv4jLowNGeQ_TYsJT02hbVRrThrCdGA9MMb6M2DdE":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":11,"num_ratings":11,"last_updated":13,"tested_up_to":14,"requires_at_least":15,"requires_php":16,"tags":17,"homepage":13,"download_link":22,"security_score":23,"vuln_count":11,"unpatched_count":11,"last_vuln_date":24,"fetched_at":25,"vulnerabilities":26,"developer":27,"crawl_stats":24,"alternatives":33,"analysis":130,"fingerprints":272},"password-protect-pdf","Password Protect PDF with Cross Service Solutions integration","1.0.1","XSS Cross Service Solutions","https:\u002F\u002Fprofiles.wordpress.org\u002Fxssdevelopment\u002F","\u003Cp>The \u003Cstrong>Protect PDF\u003C\u002Fstrong> plugin allows users to protect PDF files with a password directly from their WordPress site. It provides an easy-to-use interface for securing PDF files.\u003C\u002Fp>\n\u003Ch3>Features:\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Easily add password protection to PDF files.\u003C\u002Fli>\n\u003Cli>Widget-based interface for file uploading and securing PDFs.\u003C\u002Fli>\n\u003Cli>Simple settings to add and validate an API key for accessing the service.\u003C\u002Fli>\n\u003Cli>Compatible with Gutenberg: Embed the widget using a custom block in the editor.\u003C\u002Fli>\n\u003Cli>Shortcode support for embedding the PDF protection form anywhere on your site.\u003C\u002Fli>\n\u003Cli>Customize the block color through \u003Cstrong>WordPress Appearance -> Customize\u003C\u002Fstrong> in the Color tab.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Optional attribution\u003C\u002Fstrong>: Display a “Provided by” message to credit the service provider (disabled by default).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Supported Languages:\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Deutsch\u003C\u002Fli>\n\u003Cli>English\u003C\u002Fli>\n\u003Cli>Français\u003C\u002Fli>\n\u003Cli>Italiano\u003C\u002Fli>\n\u003Cli>Español\u003C\u002Fli>\n\u003Cli>Português\u003C\u002Fli>\n\u003Cli>ไทย\u003C\u002Fli>\n\u003Cli>Bahasa Indonesia\u003C\u002Fli>\n\u003Cli>Tiếng Việt\u003C\u002Fli>\n\u003Cli>中文\u003C\u002Fli>\n\u003Cli>Türkçe\u003C\u002Fli>\n\u003Cli>日本語\u003C\u002Fli>\n\u003Cli>한국어\u003C\u002Fli>\n\u003Cli>Русский Язык\u003C\u002Fli>\n\u003Cli>العربية\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>External Services\u003C\u002Fh3>\n\u003Cp>This plugin connects to the external service \u003Cstrong>Cross Service Solutions API\u003C\u002Fstrong>. This service processes PDF files and provides solutions such as compressing, merging, flattening PDFs, generating QR codes, and more.\u003C\u002Fp>\n\u003Ch3>What data is sent and when:\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>The PDF file or other input data (e.g., user-uploaded content) is sent to the external service whenever the user submits a request for processing.\u003C\u002Fli>\n\u003Cli>Metadata, such as API key and basic request details, may also be sent to verify access and ensure proper functionality.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Why this data is sent:\u003C\u002Fh3>\n\u003Cp>The data is required to perform the requested operations (e.g., compress a PDF, merge files) and return the processed result to the user.\u003C\u002Fp>\n\u003Ch3>Where this data is sent:\u003C\u002Fh3>\n\u003Cp>The data is sent securely to the \u003Cstrong>Cross Service Solutions API\u003C\u002Fstrong> hosted by XSS (Cross Service Solutions) Pte Ltd.\u003C\u002Fp>\n\u003Ch3>Links to terms and privacy policy:\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Terms and Conditions: \u003Ca href=\"https:\u002F\u002Flogin.cross-service-solutions.com\u002Fen\u002Fterms-and-conditions\" rel=\"nofollow ugc\">https:\u002F\u002Flogin.cross-service-solutions.com\u002Fen\u002Fterms-and-conditions\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>By using this plugin, users agree to the terms and privacy policy of the external service.\u003C\u002Fp>\n\u003Ch3>License\u003C\u002Fh3>\n\u003Cp>This plugin is licensed under the GPLv2 or later. See \u003Ca href=\"https:\u002F\u002Fwww.gnu.org\u002Flicenses\u002Fgpl-2.0.html\" rel=\"nofollow ugc\">https:\u002F\u002Fwww.gnu.org\u002Flicenses\u002Fgpl-2.0.html\u003C\u002Fa> for more details.\u003C\u002Fp>\n","A WordPress plugin to protect PDF files by applying passwords using the service of XSS (Cross Service Solutions) Pte Ltd",0,982,"","6.8.5","6.6","7.2",[18,19,20,21],"password","pdf","pdf-protection","protect-pdf","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpassword-protect-pdf.1.0.2.zip",100,null,"2026-03-15T10:48:56.248Z",[],{"slug":28,"display_name":7,"profile_url":8,"plugin_count":29,"total_installs":11,"avg_security_score":23,"avg_patch_time_days":30,"trust_score":31,"computed_at":32},"xssdevelopment",4,30,94,"2026-04-05T09:12:09.598Z",[34,57,79,98,116],{"slug":35,"name":36,"version":37,"author":38,"author_profile":39,"description":40,"short_description":41,"active_installs":42,"downloaded":43,"rating":44,"num_ratings":45,"last_updated":46,"tested_up_to":47,"requires_at_least":48,"requires_php":13,"tags":49,"homepage":54,"download_link":55,"security_score":23,"vuln_count":11,"unpatched_count":11,"last_vuln_date":24,"fetched_at":56},"wp-copysafe-pdf","CopySafe PDF Protection – Copy Protect PDF","1.6","ArtistScope","https:\u002F\u002Fprofiles.wordpress.org\u002Fartistscope\u002F","\u003Cp>Copy protect PDF. No other WordPress plugin can securely protect PDF from all copy because they only use JavaScript and HTML. The difference with CopySafe plugins is that they provide an “interface” to use a more robust solution that can interact at system level which is where copy needs to be actioned.\u003C\u002Fp>\n\u003Cp>This plugin enables the use of copy protected PDF documents in WordPress posts and pages. The resulting embedded PDF object is supported in the ArtisBrowser on all OS including Windows, Mac, iOS and Android mobile.\u003C\u002Fp>\n\u003Cp>CopySafe PDF provides the most secure copy protection for PDF both online and offline. This plugin displays PDF created for use online and when domain lock is applied, the PDF file cannot be displayed from anywhere else. With PDF now bound to your web site, you are free to apply DRM rules to control access to the page via your CMS member controls. The ArtisBrowser reports the user’s unique computer signature so that you can convert WordPress into a fully fledged DRM Portal by adding a new field to your member’s table and some script to compare current ID with the one already assigned.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Best copy protection – safe from all save and copy exploits.\u003C\u002Fli>\n\u003Cli>Prevents PrintScreen and all screen capture\u002Frecording software.\u003C\u002Fli>\n\u003Cli>Works best with the WP Classic Editor.\u003C\u002Fli>\n\u003Cli>Also supported in Gutenberg and Elementor editors.\u003C\u002Fli>\n\u003Cli>Insert copy protected PDF into posts and pages using the [PDF] button.\u003C\u002Fli>\n\u003Cli>Upload and embed encrypted PDF with Domain Lock.\u003C\u002Fli>\n\u003Cli>Set allowed operating system (OS) and minimum version.\u003C\u002Fli>\n\u003Cli>Redirects non-conforming users to download the ArtisBrowser.\u003C\u002Fli>\n\u003Cli>Settings to control width and height of the browser reader area.\u003C\u002Fli>\n\u003Cli>Auto rescales to fit available space – when browser resized.\u003C\u002Fli>\n\u003Cli>Domain locked PDF cannot be saved and displayed away from your website.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002F7cLup37p6wg?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Cp>For more information visit the \u003Ca href=\"https:\u002F\u002Fartistscope.com\u002Fcopysafe_pdf_protection_wordpress_plugin.asp\" rel=\"nofollow ugc\">CopySafe PDF\u003C\u002Fa> website.\u003C\u002Fp>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FbbteZpktty0?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Ch3>Implementation\u003C\u002Fh3>\n\u003Cp>Using the Classic Editor, click on the [PDF] button above a post to upload and embed a CopySafe PDF document at the current cursor possition. When inserting protected PDF object, the necessary shortcode is inserted.\u003C\u002Fp>\n\u003Cp>You can upload new PDF class documents or select from a list of already uploaded documents. The shortcode can be copied and used on other pages by editing the file name.\u003C\u002Fp>\n\u003Ch3>More Info\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>About \u003Ca href=\"https:\u002F\u002Fartistscope.com\u002Fcopy-protection.asp\" rel=\"nofollow ugc\">Copy Protection\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>About\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Protected PDF distributed for desktop reading can be viewed using the CopySafe PDF Reader.\u003C\u002Fli>\n\u003Cli>The CopySafe PDF Reader is Windows software – ideal for corporate networks.\u003C\u002Fli>\n\u003Cli>Protected PDF displayed on web pages can be viewed using the ArtisBrowser.\u003C\u002Fli>\n\u003Cli>The Artisbrowser is available for all OD including Windows, Mac, iOS and Android phones.\u003C\u002Fli>\n\u003Cli>The CopySafe PDF Protector software is required to encrypt PDF.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Licensing\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>CopySafe PDF is the most secure document protection solution.\u003C\u002Fli>\n\u003Cli>Licensing enabales use of Domain Lock and DRM for access rights control.\u003C\u002Fli>\n\u003Cli>Licensing also enables use of DRM to protect unauthorized distribution and sharing.\u003C\u002Fli>\n\u003Cli>Licensing is a one-time fee that includes unlimited use of the DRM portal for life.\u003C\u002Fli>\n\u003Cli>Licensing also includes up to 5 Domain Lock licenses.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Evaluation\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Create a demo account at the \u003Ca href=\"https:\u002F\u002Fartistscope.net\u002Fdrm\u002F\" rel=\"nofollow ugc\">CopySafe Demo\u003C\u002Fa> website.\u003C\u002Fli>\n\u003Cli>Download the \u003Ca href=\"https:\u002F\u002Fartistscope.com\u002Fdownload\u002FCopysafePDFconverter.zip\" rel=\"nofollow ugc\">CopySafe PDF Protector\u003C\u002Fa> software.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Limitations\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>To view CopySafe PDF on the desktop a Windows computer is required. But CopySafe PDF can be viewed online (from web pages) on all computers and devices including mobile phones.\u003C\u002Fli>\n\u003C\u002Ful>\n","Display copy protected PDF documents on WordPress pages and posts.",400,36622,78,14,"2025-11-28T06:48:00.000Z","6.9.4","5.0",[50,20,51,52,53],"copy-protect-pdf","pdf-security","prevent-copy","secure-pdf","https:\u002F\u002Fartistscope.com\u002Fcopysafe_pdf_protection_wordpress_plugin.asp","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-copysafe-pdf.zip","2026-03-15T15:16:48.613Z",{"slug":58,"name":59,"version":60,"author":61,"author_profile":62,"description":63,"short_description":64,"active_installs":65,"downloaded":66,"rating":67,"num_ratings":68,"last_updated":69,"tested_up_to":47,"requires_at_least":70,"requires_php":71,"tags":72,"homepage":77,"download_link":78,"security_score":23,"vuln_count":11,"unpatched_count":11,"last_vuln_date":24,"fetched_at":56},"download-pdf-after-submit-form","Download PDF After Submit Form","2.2.6","Md. Shahinur Islam","https:\u002F\u002Fprofiles.wordpress.org\u002Fshahinurislam\u002F","\u003Cp>\u003Cstrong>Download PDF After Submit Form\u003C\u002Fstrong> (DPASF) is a powerful WordPress plugin that allows you to protect and provide PDF files for download after users submit a form. Perfect for lead generation, gated content, and restricted file access.\u003C\u002Fp>\n\u003Cp>With DPASF, you can:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Restrict PDF downloads until a form is submitted.\u003C\u002Fli>\n\u003Cli>Collect user information for each download.\u003C\u002Fli>\n\u003Cli>Customize popup designs with editable fields.\u003C\u002Fli>\n\u003Cli>Use shortcodes anywhere on your site with ease.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>This plugin offers the premium feature of ready popup design & provides quick access to beautiful all fields that can be edit in your popup easily.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Official Resources:\u003C\u002Fstrong>\u003Cbr \u002F>\n* 👉 \u003Ca href=\"https:\u002F\u002Fplugins.larapress.org\u002Fsample-page\u002F\" rel=\"nofollow ugc\">Live Demo\u003C\u002Fa>\u003Cbr \u002F>\n* 👉 \u003Ca href=\"http:\u002F\u002Fplugins.larapress.org\u002Fproduct\u002Fdownload-pdf-after-submit-form-pro\u002F\" rel=\"nofollow ugc\">Pro Version\u003C\u002Fa>\u003Cbr \u002F>\n* 👉 \u003Ca href=\"https:\u002F\u002Fyoutu.be\u002FG-FYx8vDnDY\" rel=\"nofollow ugc\">Video Tutorial\u003C\u002Fa>\u003Cbr \u002F>\n* 👉 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fdownload-pdf-after-submit-form\u002F#installation\" rel=\"ugc\">Installation Guide\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Free Version Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Protect and restrict PDF downloads.\u003C\u002Fli>\n\u003Cli>Allow PDF download after form submission.\u003C\u002Fli>\n\u003Cli>Two general popup form templates.\u003C\u002Fli>\n\u003Cli>Collect and store user information when a PDF is downloaded.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Pro Version Features\u003C\u002Fh3>\n\u003Cp>Includes all free features plus:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Fully customizable popup designs.\u003C\u002Fli>\n\u003Cli>Add, remove, or edit input fields.\u003C\u002Fli>\n\u003Cli>Real-time updates to the form layout.\u003C\u002Fli>\n\u003Cli>Premium support and faster assistance.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong> Uninstall the free version before installing the Pro version.\u003C\u002Fp>\n\u003Ch3>Shortcodes\u003C\u002Fh3>\n\u003Cpre>[formtodownload urlname=\"url\" title=\"pdfname\"]\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>Attributes:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>urlname\u003C\u002Fstrong> – The direct URL to your PDF (e.g., \u003Ccode>https:\u002F\u002Fyoursite.com\u002Ffile.pdf\u003C\u002Fcode>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>title\u003C\u002Fstrong> – A unique name for the PDF (no spaces).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Support & Documentation\u003C\u002Fh3>\n\u003Cp>You can find and more detailed information about Download PDF after Submit Form on gitlab. If you were unable to find the answer to your question on the FAQ or in any of the documentation, you should check the support forum on WordPress.org. If you can’t locate any topics that pertain to your particular issue, post a new topic for it.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fdownload-pdf-after-submit-form\u002F#installation\" rel=\"ugc\">Documentation\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fplugins.larapress.org\" rel=\"nofollow ugc\">FAQ & Tutorials\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgitlab.com\u002Fshahinurislam\u002Fdownload-pdf-after-submit-form\" rel=\"nofollow ugc\">GitLab Repository\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fdownload-pdf-after-submit-form\" rel=\"ugc\">Support Forum\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Why Use Download PDF After Submit Form?\u003C\u002Fh3>\n\u003Cp>Download PDF After Submit Form gives you all the features needed to create a files restricted permission without any hassle.\u003C\u002Fp>\n\u003Cp>\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FQ6J6LMn5D18?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch3>Why Use Download PDF After Submit Form Pro Version with tutorial?\u003C\u002Fh3>\n\u003Cp>\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FG-FYx8vDnDY?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch3>Contributing \u002F Donations\u003C\u002Fh3>\n\u003Cp>Your support keeps this plugin free! If you enjoy using DPASF, please consider \u003Ca href=\"https:\u002F\u002Fmdshahinurislamm.github.io\u002Fdpasf\u002Fcontact.html\" rel=\"nofollow ugc\">making a donation\u003C\u002Fa>. Donations help maintain development and provide better support.\u003C\u002Fp>\n\u003Ch3>Other Plugins\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcareer-section\u002F\" rel=\"ugc\">Career Section\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Ffeedback-form-users\u002F\" rel=\"ugc\">Feedback Form Users\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fmeta-box-gallerymeta\u002F\" rel=\"ugc\">Meta-box GalleryMeta\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fpost-auto-vertical-scrolling\u002F\" rel=\"ugc\">Post Auto Vertical Scrolling\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fsimple-font-resizer\u002F\" rel=\"ugc\">Simple Font Resizer\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fpost-date-range-filter\u002F\" rel=\"ugc\">Post Date Range Filter\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fscoreboard-ui\u002F\" rel=\"ugc\">Scoreboard UI\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n","Easily allow users to download PDFs after submitting a form with customizable shortcodes. No coding required – just install and configure!",500,11089,64,6,"2026-03-15T05:39:00.000Z","5.8","7.4",[58,73,74,75,76],"lock-pdf-after-signing","password-protect-a-pdf","restricted-content-download","restricted-pdf","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fdownload-pdf-after-submit-form\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fdownload-pdf-after-submit-form.2.2.6.zip",{"slug":80,"name":81,"version":82,"author":83,"author_profile":84,"description":85,"short_description":86,"active_installs":87,"downloaded":88,"rating":23,"num_ratings":89,"last_updated":90,"tested_up_to":47,"requires_at_least":91,"requires_php":92,"tags":93,"homepage":13,"download_link":97,"security_score":23,"vuln_count":11,"unpatched_count":11,"last_vuln_date":24,"fetched_at":56},"pdf-password-protect","PDF Password Protect","1.0.5","GrandPlugins","https:\u002F\u002Fprofiles.wordpress.org\u002Fgrandplugins\u002F","\u003Cp>Protect PDF files by passwords on your WordPress Website.\u003Cbr \u002F>\nPDF Password Protect plugin offers an easy way to set passwords and control edit permissions to your PDF files.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Add user password to prevent opening the PDF file.\u003C\u002Fli>\n\u003Cli>Add owner password to disabled PDF file edit permissions:\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Permissions to disable\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>copy: copy text from PDF file.\u003C\u002Fli>\n\u003Cli>print: print the PDF file.\u003C\u002Fli>\n\u003Cli>comment: add comments to PDF file.\u003C\u002Fli>\n\u003Cli>comment – fill form: Add comments and fill forms to PDF file.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>For more features\u003C\u002Fh3>\n\u003Cp>👉 \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fgrandplugins.com\u002Fproduct\u002Fpdf-password-protect?utm_source=free\" rel=\"nofollow ugc\">Pro\u003C\u002Fa>\u003C\u002Fstrong> | \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fgrandplugins.com\u002Fdocumentation\u002Fwp-pdf-password-protect\u002F\" rel=\"nofollow ugc\">Docs\u003C\u002Fa>\u003C\u002Fstrong> 👈\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>Set passwords automatically to uploaded PDF files.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Set passwords to bulk PDF files.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Remove passwords from PDF files.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Overwrite PDF file owner password.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Restrict PDF files from view or download\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Sell WooCommerce Downloadable PDFs protected with a password for each customer.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Requirements\u003C\u002Fh3>\n\u003Cp>The plugin needs two packages to be installed on your server in order to handle complex PDF files that have forms – annotations – bookmarks and to handle some PDF files which use Compressed Cross-reference and Object Streams for data structure.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>QPDF min V 9.1.1\u003C\u002Fli>\n\u003Cli>GhostScript\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>How to use\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Activate the plugin\u003C\u002Fli>\n\u003Cli>Upload PDF file\u003C\u002Fli>\n\u003Cli>Access the PDF attachment edit page from media page\u003C\u002Fli>\n\u003Cli>You can add password to the PDF file from the Sidebar metabox “PDF password options”.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Check Our other plugins\u003C\u002Fh3>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgrandplugins.com\u002Fproduct\u002Fwoo-order-splitter\u002F?utm_source=free&utm_medium==pdf-password-protect\" rel=\"nofollow ugc\">Woo Order Splitter\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgrandplugins.com\u002Fproduct\u002Fwoo-user-orders-limit\u002F?utm_source=free&utm_medium==pdf-password-protect\" rel=\"nofollow ugc\">Woo User Orders Limit\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgrandplugins.com\u002Fproduct\u002Fwoo-conditional-gateways\u002F?utm_source=free&utm_medium==pdf-password-protect\" rel=\"nofollow ugc\">Woo Conditional Gateway\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgrandplugins.com\u002Fproduct\u002Fwp-db-controller\u002F?utm_source=free&utm_medium==pdf-password-protect\" rel=\"nofollow ugc\">WP DB Controller\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgrandplugins.com\u002Fproduct\u002Fwoo-lemonsqueezy-gateway\u002F?utm_source=free&utm_medium==pdf-password-protect\" rel=\"nofollow ugc\">Woo Lemonsqueezy Gateway\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgrandplugins.com\u002Fproduct\u002Fwoo-instock-notifier\u002F?utm_source=free&utm_medium==pdf-password-protect\" rel=\"nofollow ugc\">Woo instock Notifier\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgrandplugins.com\u002Fproduct\u002Fwoo-gift-cards\u002F?utm_source=free&utm_medium==pdf-password-protect\" rel=\"nofollow ugc\">Woo Gift Cards\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgrandplugins.com\u002Fproduct\u002Fwoo-restrict-orders\u002F?utm_source=free&utm_medium==pdf-password-protect\" rel=\"nofollow ugc\">Woo Restrict Orders\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgrandplugins.com\u002Fproduct\u002Fwoo-bulk-price-change\u002F?utm_source=free&utm_medium==pdf-password-protect\" rel=\"nofollow ugc\">Woo Bulk Price & Stock Manager\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgrandplugins.com\u002Fproduct\u002Fwoo-variation-sold-individually\u002F?utm_source=free&utm_medium==pdf-password-protect\" rel=\"nofollow ugc\">Woo Variation Sold individually\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgrandplugins.com\u002Fproduct\u002Fwoo-paddle-checkout\u002F?utm_source=free&utm_medium==pdf-password-protect\" rel=\"nofollow ugc\">Woo Paddle Checkout\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgrandplugins.com\u002Fproduct\u002Fwoo-sales-notification\u002F?utm_source=free&utm_medium==pdf-password-protect\" rel=\"nofollow ugc\">Woo Sales notifications\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgrandplugins.com\u002Fproduct\u002Fwoo-cart-tracker\u002F?utm_medium=wp&utm_source=pdf-password-protect\" rel=\"nofollow ugc\">Woo Cart Tracker\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgrandplugins.com\u002Fproduct\u002Fwoo-best-seller\u002F?utm_medium=wp&utm_source=pdf-password-protect\" rel=\"nofollow ugc\">Woo Best Sellers\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgrandplugins.com\u002Fproduct\u002Fwoo-sales-notification\u002F?utm_medium=wp&utm_source=pdf-password-protect\" rel=\"nofollow ugc\">Woo Sales notifications\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgrandplugins.com\u002Fproduct\u002Fwoo-advanced-captcha\u002F?utm_medium=wp&utm_source=pdf-password-protect\" rel=\"nofollow ugc\">WP Advanced Captcha\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgrandplugins.com\u002Fproduct\u002Fwoo-advanced-pricing\u002F?utm_medium=wp&utm_source=pdf-password-protect\" rel=\"nofollow ugc\">Woo Advanced Pricing – Discount & Quantity Swatches\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgrandplugins.com\u002Fproduct\u002Fwoo-advanced-add-to-cart\u002F?utm_medium=wp&utm_source=pdf-password-protect\" rel=\"nofollow ugc\">Woo Best Sellers\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwatermark-images-for-wp-and-woo-grandpluginswp\u002F\" rel=\"ugc\">WP Watermark Images\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcoming-soon-products-for-woocommerce\" rel=\"ugc\">Coming Soon Products for WooCommerce\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fquick-view-and-buy-now-for-woocommerce\u002F\" rel=\"ugc\">Quick View and Buy Now for WooCommerce\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fsidebars-blocks\u002F\" rel=\"ugc\">Sidebars Gutenberg Blocks\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fimage-block-zoom-on-hover\u002F\" rel=\"ugc\">Image Zoom on Hover\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Flarge-images-uploader\u002F\" rel=\"ugc\">Large Images Uploader\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fultimate-maintenance-mode-for-woocommerce\u002F\" rel=\"ugc\">Maintenance Mode for WooCommerce\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fajax-single-add-to-cart-for-woocommerce\u002F\" rel=\"ugc\">Single Ajax Add to Cart For WooCommerce\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fgif-uploader-wp-grandplugins\" rel=\"ugc\">GIF Uploader\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fimage-sizes-controller\u002F\" rel=\"ugc\">Image Sizes Controller\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fgpls-paypal-subscriptions\u002F\" rel=\"ugc\">Paypal Subscriptions\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwatermark-pdf\u002F\" rel=\"ugc\">Watermark PDF\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcart-limiter\u002F\" rel=\"ugc\">Woo Cart Controller – Qty Limiter\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fsimple-countdown\u002F\" rel=\"ugc\">Simple Countdown Timer\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Favif-support\u002F\" rel=\"ugc\">AVIF Support\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwpplugincreator.com\" rel=\"nofollow ugc\">WP Plugin Creator\u003C\u002Fa>\u003C\u002Fp>\n","Protect PDF files by passwords on your WordPress Website.",300,4342,1,"2026-02-03T16:34:00.000Z","5.8.0","7.2.5",[94,95,18,19,96],"encrypt","lock-pdf","protect","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpdf-password-protect.zip",{"slug":99,"name":100,"version":101,"author":38,"author_profile":39,"description":102,"short_description":103,"active_installs":23,"downloaded":104,"rating":23,"num_ratings":105,"last_updated":106,"tested_up_to":14,"requires_at_least":107,"requires_php":108,"tags":109,"homepage":114,"download_link":115,"security_score":23,"vuln_count":11,"unpatched_count":11,"last_vuln_date":24,"fetched_at":56},"safeguard-media","SafeGuard Media Protection – Copy Protect Web Pages","3.6.0","\u003Cp>This plugin adds an iFrame to copy protect and watermark Images, MP4 video, PDF and Word documents on WordPress pages.\u003C\u002Fp>\n\u003Cp>Unlike other plugins that can do no more than hamper the use of right-click, this solution is the real deal… it uses the ArtistScope Site Protection System (ASPS) to prevent screenshots, screen capture and screen recording. ASPS normally requires a dedicated server, but by using this plugin, any WordPress site can utilise real content protection, even from a shared hosting server.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Easy install (use the Classic Editor or Elementor or Gutenberg editor).\u003C\u002Fli>\n\u003Cli>Copy protect images, video and PDF displayed on your web pages.\u003C\u002Fli>\n\u003Cli>Copy protect GIF, JPG, PNG, MP4, PDF and Word documents.\u003C\u002Fli>\n\u003Cli>Prevent sreenshots, screen capture and screen recording.\u003C\u002Fli>\n\u003Cli>HTML is encrypted from server to secure browser.\u003C\u002Fli>\n\u003Cli>View source for media locations is not possible.\u003C\u002Fli>\n\u003Cli>Locating media via packet sniffers is not possible.\u003C\u002Fli>\n\u003Cli>Word documents are converted to PDF on the server.\u003C\u002Fli>\n\u003Cli>Embeds objects dynamically using JavaScript.\u003C\u002Fli>\n\u003Cli>Settings can control user access per platform.\u003C\u002Fli>\n\u003Cli>Most secure protection from ALL avenues of copy and save.\u003C\u002Fli>\n\u003Cli>Watermark options for position, size, colour and transparency.\u003C\u002Fli>\n\u003Cli>Media can be hosted on your site or a third party file service.\u003C\u002Fli>\n\u003Cli>Can be viewed on Windows, Mac, iOS and Android phones.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FnFKZ42oBUDY?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Cp>Note: This plugin connects to a third party service for copy protection provided by \u003Ca href=\"https:\u002F\u002Fsafeguard.media\u002Fterms.asp\" rel=\"nofollow ugc\">SafeGuard Media\u003C\u002Fa>. To view copy protected pages, users will be required to use a secure web browser known as \u003Ca href=\"https:\u002F\u002Fartisbrowser.com\" rel=\"nofollow ugc\">ArtisBrowser\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>For more information visit the \u003Ca href=\"https:\u002F\u002Fsafeguard.media\u002Fwordpress-protection.asp\" rel=\"nofollow ugc\">SafeGuard Media\u003C\u002Fa> website.\u003C\u002Fp>\n\u003Ch4>More Info\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>About \u003Ca href=\"https:\u002F\u002Fartistscope.com\u002Fcopy-protection.asp\" rel=\"nofollow ugc\">Copy Protection\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Online Demos\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.artistscope.com\u002Fsafeguard-media-plugin\u002F#demos\" rel=\"nofollow ugc\">Online Demos\u003C\u002Fa> copy protecting images, PDF and video.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Licensing\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>This plugin is free to use for 14-days after which a SafeGuard Media account is required.\u003C\u002Fli>\n\u003Cli>The author can be contacted from their \u003Ca href=\"https:\u002F\u002Fartistscope.com\u002Fsafeguard_wordpress_protection.asp\" rel=\"nofollow ugc\">Safeguard Media\u003C\u002Fa> page.\u003C\u002Fli>\n\u003C\u002Ful>\n","Secure copy protection for images, video and PDF. Prevent screenshots, screen capture and screen recording.",3470,5,"2025-10-05T00:15:00.000Z","5.7","7.0",[110,111,21,112,113],"copy-protect","protect-image","protect-video","watermark","https:\u002F\u002Fsafeguard.media\u002Fwordpress-protection.asp","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsafeguard-media.zip",{"slug":117,"name":118,"version":119,"author":38,"author_profile":39,"description":120,"short_description":121,"active_installs":11,"downloaded":122,"rating":23,"num_ratings":89,"last_updated":13,"tested_up_to":14,"requires_at_least":107,"requires_php":108,"tags":123,"homepage":128,"download_link":129,"security_score":23,"vuln_count":11,"unpatched_count":11,"last_vuln_date":24,"fetched_at":25},"guest-video-protection","Guest Video Protection – Copy Protect PDF & Video","1.5.0","\u003Cp>The Guest Video Protection plugin enables the embedding of copy protected media. That media can include a comprehensive Guest Video page or media only, such as images, PDF and video. The Guest Video service also provides secure file hosting. In fact it is the only service of its kind… web hosting for copy protected web pages and media with secure file hosting included for images, PDF and video.\u003C\u002Fp>\n\u003Cp>Pages and media are most securely protected from all exploits including save, copy, screenshot and screen recording… and they can be viewd on all computers and devices including mobile phones.\u003C\u002Fp>\n\u003Cp>NOTE: This plugin displays your media from a third party service provided by \u003Ca href=\"https:\u002F\u002Fguest.video\u002Fterms-conditions\u002F\" rel=\"nofollow ugc\">Guest Video\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Guest Video provides a most unique “copy protected web hosting” service, unique in that it is the only web hosting service to provide real copy protection. The copy protection begins at the Guest Video server hosting your media, creating a secure tunnel between that backend and your user’s device which can be a computer or mobile phone.\u003C\u002Fp>\n\u003Cp>However a point to note is that the ArtisBrowser is required to decrypt and view the content. While that may seem to be a disadvantage to those concerned about being popular, it is the reason that Guest Video copy protection is incomaparable to any other copy protection solution. ArtisBrowser makes real copy protection possible (preventing all copy and exploits) where all other browsers fail. Anyone looking for copy protection that works in popular browsers like Firefox or Chrome is wasting their time.\u003C\u002Fp>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FkFKwQlPhbK4?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Ch4>More Info\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>About \u003Ca href=\"https:\u002F\u002Fartistscope.com\u002Fcopy-protection.asp\" rel=\"nofollow ugc\">Copy Protection\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Licensing\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>This plugin is free to use. However it will require at least a Guest Video “DEMO” account to benefit from the special features.\u003C\u002Fli>\n\u003Cli>For a DEMO account visit \u003Ca href=\"https:\u002F\u002Fguest.video\u002Fjoin.asp\" rel=\"nofollow ugc\">Guest Video\u003C\u002Fa> for a 14-day free trial.\u003C\u002Fli>\n\u003Cli>The author can be contacted from their \u003Ca href=\"https:\u002F\u002Fartistscope.com\u002Fcopy-protected-file-hosting.asp\" rel=\"nofollow ugc\">Guest Video\u003C\u002Fa> page.\u003C\u002Fli>\n\u003C\u002Ful>\n","The most secure copy protection for images, video and PDF. Prevent save, screenshots, screen capture and screen recording.",909,[50,124,125,126,127],"copy-protect-video","copy-protect-web-page","copy-protection","watermark-media","https:\u002F\u002Fguest.video\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fguest-video-protection.zip",{"attackSurface":131,"codeSignals":235,"taintFlows":262,"riskAssessment":263,"analyzedAt":271},{"hooks":132,"ajaxHandlers":199,"restRoutes":200,"shortcodes":226,"cronEvents":232,"entryPointCount":233,"unprotectedCount":234},[133,139,142,145,150,155,158,162,166,169,173,177,183,185,186,187,189,191,192,193,195,196,197,198],{"type":134,"name":135,"callback":136,"file":137,"line":138},"action","customize_register","cross_service_solutions_password_protect_pdf_customize_register","includes\\customize.php",57,{"type":134,"name":140,"callback":141,"file":137,"line":44},"wp_enqueue_scripts","cross_service_solutions_password_protect_pdf_customizer_css",{"type":134,"name":143,"callback":141,"file":137,"line":144},"admin_init",79,{"type":134,"name":146,"callback":147,"file":148,"line":149},"rest_api_init","cross_service_solutions_password_protect_pdf_register_rest_api","includes\\process-machine.php",23,{"type":134,"name":151,"callback":152,"file":153,"line":154},"admin_menu","cross_service_solutions_settings_page_template","includes\\setting.php",16,{"type":134,"name":143,"callback":156,"file":153,"line":157},"cross_service_solutions_register_settings",80,{"type":134,"name":159,"callback":160,"file":153,"line":161},"admin_enqueue_scripts","cross_service_solutions_enqueue_password_toggle_script",95,{"type":134,"name":163,"callback":164,"file":165,"line":149},"plugins_loaded","closure","password-protect-pdf.php",{"type":134,"name":159,"callback":167,"file":165,"line":168},"cross_service_solutions_enqueue_admin_styles",41,{"type":134,"name":170,"callback":171,"file":165,"line":172},"init","cross_service_solutions_password_protect_pdf_block_init",101,{"type":134,"name":174,"callback":175,"file":165,"line":176},"enqueue_block_assets","cross_service_solutions_password_protect_pdf_localize_script",110,{"type":178,"name":179,"callback":180,"priority":181,"file":165,"line":182},"filter","load_textdomain_mofile","cross_service_solutions_password_protect_pdf_load_custom_textdomain",10,119,{"type":134,"name":135,"callback":136,"file":184,"line":138},"trunk\\includes\\customize.php",{"type":134,"name":140,"callback":141,"file":184,"line":44},{"type":134,"name":143,"callback":141,"file":184,"line":144},{"type":134,"name":146,"callback":147,"file":188,"line":149},"trunk\\includes\\process-machine.php",{"type":134,"name":151,"callback":152,"file":190,"line":154},"trunk\\includes\\setting.php",{"type":134,"name":143,"callback":156,"file":190,"line":157},{"type":134,"name":159,"callback":160,"file":190,"line":161},{"type":134,"name":163,"callback":164,"file":194,"line":149},"trunk\\password-protect-pdf.php",{"type":134,"name":159,"callback":167,"file":194,"line":168},{"type":134,"name":170,"callback":171,"file":194,"line":172},{"type":134,"name":174,"callback":175,"file":194,"line":176},{"type":178,"name":179,"callback":180,"priority":181,"file":194,"line":182},[],[201,208,215,220,222,224],{"namespace":202,"route":203,"methods":204,"callback":206,"permissionCallback":207,"file":148,"line":68},"password-protect-pdf\u002Fv1","\u002Ftest",[205],"GET","cross_service_solutions_test_password_protect_pdf_api_callback","__return_true",{"namespace":202,"route":209,"methods":210,"callback":212,"permissionCallback":213,"file":148,"line":214},"\u002Fsend-data",[211],"POST","cross_service_solutions_password_protect_pdf_on_submit","cross_service_solutions_password_protect_pdf_verify_nonce",12,{"namespace":202,"route":216,"methods":217,"callback":218,"permissionCallback":213,"file":148,"line":219},"\u002Fstatus\u002F(?P\u003Cid>\\d+)",[205],"cross_service_solutions_password_protect_pdf_check_status",17,{"namespace":202,"route":203,"methods":221,"callback":206,"permissionCallback":207,"file":188,"line":68},[205],{"namespace":202,"route":209,"methods":223,"callback":212,"permissionCallback":213,"file":188,"line":214},[211],{"namespace":202,"route":216,"methods":225,"callback":218,"permissionCallback":213,"file":188,"line":219},[205],[227,231],{"tag":228,"callback":229,"file":165,"line":230},"cross_service_solutions_password_protect_pdf_widget","cross_service_solutions_register_password_protect_pdf_shortcode",49,{"tag":228,"callback":229,"file":194,"line":230},[],8,2,{"dangerousFunctions":236,"sqlUsage":237,"outputEscaping":239,"fileOperations":11,"externalRequests":68,"nonceChecks":234,"capabilityChecks":11,"bundledLibraries":261},[],{"prepared":11,"raw":11,"locations":238},[],{"escaped":240,"rawEcho":214,"locations":241},236,[242,246,248,249,250,252,254,256,257,258,259,260],{"file":243,"line":244,"context":245},"src\\render.php",82,"raw output",{"file":243,"line":247,"context":245},96,{"file":243,"line":172,"context":245},{"file":243,"line":176,"context":245},{"file":243,"line":251,"context":245},121,{"file":243,"line":253,"context":245},135,{"file":255,"line":244,"context":245},"trunk\\src\\render.php",{"file":255,"line":247,"context":245},{"file":255,"line":172,"context":245},{"file":255,"line":176,"context":245},{"file":255,"line":251,"context":245},{"file":255,"line":253,"context":245},[],[],{"summary":264,"deductions":265},"The password-protect-pdf plugin v1.0.1 exhibits a generally good security posture, with several positive indicators. The absence of dangerous functions, SQL injection vulnerabilities (all queries are prepared), and file operations significantly reduces common attack vectors. The high percentage of properly escaped output and the presence of nonces on some entry points also suggest an effort towards secure coding practices.  However, there are notable concerns regarding the attack surface. Specifically, the plugin exposes 2 REST API routes without permission callbacks, which represent unprotected entry points that could potentially be exploited if they handle user-supplied data insecurely. The lack of capability checks on any entry points is also a significant weakness, as it means that functionalities might be accessible to users without the necessary privileges. The plugin's clean vulnerability history is a strong positive, indicating a history of stable and secure development, but this does not negate the risks identified in the current static analysis.",[266,268],{"reason":267,"points":181},"REST API routes without permission callbacks",{"reason":269,"points":270},"No capability checks on any entry points",15,"2026-03-17T05:51:46.022Z",{"wat":273,"direct":284},{"assetPaths":274,"generatorPatterns":276,"scriptPaths":277,"versionParams":280},[275],"\u002Fwp-content\u002Fplugins\u002Fpassword-protect-pdf\u002Fincludes\u002Fstyles\u002Fsetting.css",[],[278,279],"\u002Fwp-content\u002Fplugins\u002Fpassword-protect-pdf\u002Fbuild\u002Findex.js","\u002Fwp-content\u002Fplugins\u002Fpassword-protect-pdf\u002Fbuild\u002Fview.js",[281,282,283],"password-protect-pdf\u002Fincludes\u002Fstyles\u002Fsetting.css?ver=","password-protect-pdf\u002Fbuild\u002Findex.js?ver=","password-protect-pdf\u002Fbuild\u002Fview.js?ver=",{"cssClasses":285,"htmlComments":286,"htmlAttributes":287,"restEndpoints":289,"jsGlobals":290,"shortcodeOutput":292},[],[],[288],"data-block=\\\"create-block\u002Fpassword-protect-pdf\\\" ",[],[291],"wpApiSettingsPasswordProtectPDF",[293],"[cross_service_solutions_password_protect_pdf_widget]"]