Sha256: 16b4e66e3987c7e2bdf76b9b683c2185542ed398ac774e0a47691c476a0d1ba3
Contents?: true
Size: 1.53 KB
Versions: 1
Compression:
Stored size: 1.53 KB
Contents
# frozen_string_literal: true # Some permissions may be set for the regular user with the following options: # <code>:print_document</code>, <code>:modify_contents</code>, # <code>:copy_contents</code>, <code>:modify_annotations</code>. All this # options default to true, so if you'd like to revoke just set them to false. # # A user may bypass all permissions if he provides the owner password which # may be set with the <code>:owner_password</code> option. This option may be # set to <code>:random</code> so that users will never be able to bypass # permissions. # # There are some caveats when encrypting your PDFs. Be sure to read the source # documentation (you can find it here: # https://github.com/prawnpdf/prawn/blob/master/lib/prawn/security.rb ) before # using this for anything super serious. require_relative '../example_helper' # User cannot print the document. Prawn::ManualBuilder::Example.generate('cannot_print.pdf') do text "If you used the user password you won't be able to print the doc." encrypt_document( user_password: 'foo', owner_password: 'bar', permissions: { print_document: false } ) end # All permissions revoked and owner password set to random Prawn::ManualBuilder::Example.generate('no_permissions.pdf') do text "You may only view this and won't be able to use the owner password." encrypt_document( user_password: 'foo', owner_password: :random, permissions: { print_document: false, modify_contents: false, copy_contents: false, modify_annotations: false } ) end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
prawn-2.4.0 | manual/security/permissions.rb |