Developers Guide
Total Page:16
File Type:pdf, Size:1020Kb
jjPPrroodduuccttiivviittyy LLLLCC Protection User Guide Developers Guide Licensing Toolkit Protect your investments Protect your with Protection! http://www.jproductivity.com v 5 . 2 ! tm Revision 397 - 1/7/20 Notice of Copyright Published by jProductivity, LLC Copyright ©2003-2019 All rights reserved. Registered Trademarks and Proprietary Names Product names mentioned in this document may be trademarks or registered trademarks of jProductivity, LLC or other hardware, software, or service providers and are used herein for identification purposes only. Applicability This document applies to Protection! v5.2 software. 2 Protection! Developers Guide v5.2 Copyright © 2003-2019 jProductivity L.L.C. http://www. jproductivity.com Contents Contents ....................................................................................................................... 3 1. Protection! Licensing Toolkit Concepts ........................................................................... 6 1.1 Key Concepts ................................................................................................. 6 1.1.1 License File .............................................................................................. 6 1.1.2 Protection! Control Center ......................................................................... 6 1.1.3 Secret Storage ......................................................................................... 6 1.2 Protection! Process .......................................................................................... 7 1.2.1 Reading a License .................................................................................... 7 1.2.2 Checking License ...................................................................................... 7 1.2.3 Checking Integrity .................................................................................... 8 1.2.4 Conclusion ............................................................................................... 8 2. Adding Protection! Support to the Java Applications ........................................................ 9 2.1 Protection! Initialization ................................................................................... 9 2.1.1 Source Code ............................................................................................ 9 2.1.2 Launcher ................................................................................................. 9 2.2 Handling Protection! Events ............................................................................ 10 2.3 Calling License Check .................................................................................... 10 3. Adding Protection! Support to Native Applications ......................................................... 12 3.1 Launching Protection Support Process .............................................................. 13 3.1.1 Tweaking Protection Support Appearance .................................................. 13 3.1.2 Exiting Protection Support Application ....................................................... 14 3.2 Catching Protection Support Error Output ......................................................... 15 3.3 Catching Protection Support Output ................................................................. 15 3.4 Handling Protection Support Events ................................................................. 16 3.5 Transferring Commands to Protection Support .................................................. 17 4. License Types ........................................................................................................... 18 5. License Reading ........................................................................................................ 20 5.1 License Reader ............................................................................................. 20 5.2 Locating License ........................................................................................... 20 5.3 Reading and Decoding License ........................................................................ 21 FIPS Support.................................................................................................. 22 5.4 Listening License Reader Events...................................................................... 22 5.5 Resolving License Reader Issues ..................................................................... 23 5.6 Upgrading License ......................................................................................... 24 6. License Checking ...................................................................................................... 26 6.1 License Host ................................................................................................. 26 6.2 Analyzing License Checking Results ................................................................. 27 6.3 Listening License Host Events ......................................................................... 28 6.4 License Agreement Acceptance ....................................................................... 29 6.5 Working with Secret Storages ......................................................................... 29 6.5.1 FileSecretStorage Implementation ............................................................ 30 6.5.2 PreferencesSecretStorage Implementation ................................................ 30 6.5.3 JarFileSecretStorage Implementation ........................................................ 31 6.6 Resolving License Host Issues ......................................................................... 31 6.7 License Expiration ......................................................................................... 33 6.7.1 Date Based License Expiration ................................................................. 33 6.7.2 Usage Based License Expiration ............................................................... 34 6.8 User Licensing Models .................................................................................... 35 6.8.1 Named User Licensing Model ................................................................... 36 Lock Attributes ......................................................................................... 36 Activation Keys Generation ........................................................................ 37 3 Protection! Developers Guide v5.2 Copyright © 2003-2019 jProductivity L.L.C. http://www. jproductivity.com Grace Period ............................................................................................ 38 License Deactivation ................................................................................. 39 6.8.2 Floating User Licensing Model .................................................................. 39 Handling Number of Copies Violation Event .................................................. 40 Check Host Policy ..................................................................................... 40 Releasing Network Check Resources ........................................................... 40 6.8.3 Floating and Named User Licensing Models - Licensing Server ...................... 40 Adding Licensing Server Support ................................................................ 41 Listening License Lock Expired Event........................................................... 42 Listening for License Lock Revoked Event .................................................... 42 Grace Period ............................................................................................ 43 Check Host Policy ..................................................................................... 43 Checking-out Licenses for Offline Use .......................................................... 43 Releasing Licensing Server Resources ......................................................... 43 Main/Supplemental License Model............................................................... 44 Handling License Updates or Change Users Allocation.................................... 44 Checking the Status of Licensing Server ...................................................... 45 6.9 License Kind ................................................................................................. 46 7. Working with the Licensing Server .............................................................................. 48 7.1 Registering Licensing Server Connection .......................................................... 48 7.2 Using the LicensingServiceSupport .................................................................. 48 7.3 Direct Use of Licensing Service ....................................................................... 48 7.3.1 Getting Licensing Service ........................................................................ 49 7.3.2 Using Licensing Services ......................................................................... 49 7.3.3 Releasing Licensing Service ..................................................................... 51 8. Integrity Verification ................................................................................................. 52 8.1 Source Runtime Configuration ........................................................................ 52 8.2 Resource Runtime Configuration ..................................................................... 53 8.3 File Runtime Configuration ............................................................................. 53