adobe / adobe-license-decoder.rs Goto Github PK
View Code? Open in Web Editor NEWDecoder for FRL and SDL license files found on client machines.
License: MIT License
Decoder for FRL and SDL license files found on client machines.
License: MIT License
Why do you need this feature? Please describe.
I need to know whether my machine's licenses are Offline or Isolated. If they are Isolated, I would like to know how many different census codes are in the license. (Ideally, I'd like to be able to see the list of codes.). That way I can know which machines the ilcense can work on.
Describe the solution you'd like
The basic output should specify whether the license is Isolated or Offline, and give the number of census codes. In addition, there should be an option to output all the census codes.
Why do you need this feature? Please describe.
On Windows, there are a pair of registry keys that enforce either NGL (next-gen licensing) or serialized licensing. We should add hooks to these keys in the decoder. I'm not sure if it makes sense to add the ability to manipulate these keys, but we should at least check for the presence of these keys in the registry and report their status.
Describe the solution you'd like
TBD - I assume for reporting we would include it with the rest of the license reports, but it could make more sense to implement a subcommand or something similar.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context about the feature request here.
This is a very useful tool. Thank you.
Please tell me how to use this tool.
I installed SDL on my PC.
The following command will tell you the installation date and time of the installed product.
adobe-license-decoder.windows_x86_64.exe
For FRL, you can find the expiration date with "-vv" as an option.
Is there a way in SDL to check for such an expiration date?
I'm sorry if the posting location is wrong.
Describe the bug
I've run the tool on both an SDL, license-only package, and on a package with both Photoshop with the SDL and the too doesn't seem to be able to detect the license inside. When the package/s are deployed to a device, the tool detects the install licenses fine.
To Reproduce
Steps to reproduce the behavior:
SDL-only package:
./adobe-license-decoder /Users/darren/Downloads/Photoshop-SDL-Test/
./adobe-license-decoder /Users/darren/Downloads/Photoshop-SDL-Test/Build/
./adobe-license-decoder /Users/darren/Downloads/Photoshop-SDL-Test/Build/SDL-Test_Install.pkg
thread 'main' panicked at 'No license files found in '/Users/darren/Downloads/SDL-Test/Build/SDL-Test_Install.pkg'', src/descriptions.rs:29:13
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
SDL and application package:
Observed behavior
Output shows the binary is unable to find a license:
thread 'main' panicked at 'No license files found in '/Users/darren/Downloads/SDL-Test/Build/SDL-Test_Install.pkg'', src/descriptions.rs:29:13
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Expected behavior
Command line output as shown on the project readme
Operating System
macOS Big Sur (11.2.2)
Additional context
I'm unsure if I'm holding it wrong, but please let me know if so!
Thanks
Why do you need this feature? Please describe.
Customers often want to know whether a particular user has a cached license for an app, and when it will expire. This is especially helpful for FRL Online and LAN licenses where the expiration date is set on the server side so the only local expiration data is in the cached license
Describe the solution you'd like
When run in verbose mode, the decoder should look for cached licenses in the credential store and report on their existence and expiration date. This needs to be invoked explicitly with -v
or another option, because it prevents the decoder from being run without interaction.
Additional context
This request came in via Slack from an SE working with customers.
Why do you need this feature? Please describe.
With Apple releasing devices running their own chips instead of Intel, and the unknown time that the Rosetta 2 translation layer will work, any software or tools written for macOS would have version run natively on arm64 devices, or ideally universal binaries. From what I understand, the ALD may be Intel only, requiring the installation of Rosetta 2 to be used on these newer devices.
Describe the solution you'd like
Any software or tools written for macOS would have version run natively on arm64 devices, or ideally universal binaries.
Describe alternatives you've considered
N/A
Additional context
I may be wrong here but it looks like ADL is intel only. I'm not a 'proper' developer so I'm not sure on the exact steps this project will need in order to be universal, but I thought it worth putting this on your radar ๐
Describe the bug
Creating a license package on the Adobe Admin Console and deploying it, then running the Adobe License Decoder, it was noted that the ID did not match in the output with that shown for the package on the Admin Console
To Reproduce
Steps to reproduce the behavior:
Security note: do not attach license files.
Observed behavior
The ID in the Adobe License Decoder output does not match that of the corresponding package shown in the Admin Console, although both values appear to be the same format of 8, 4, 4, 4 and 12 alphanumerics separated by dashes in both instances.
Expected behavior
The IDs should match to allow an installed license to be matched to an Admin Console package and/or org ID.
Operating System
Additional context
Add any other context about the problem here.
Why do you need this feature? Please describe.
When running the binary on a version of macOS without an OperatingConfigs file/directory, this shows the below error:
thread 'main' panicked at 'No such file or directory (os error 2): /Library/Application Support/Adobe/OperatingConfigs', src/main.rs:24:13
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Describe the solution you'd like
Instead it would be nice if it could return a clearer output, perhaps something like:
Error: Item not found at /Library/Application Support/Adobe/OperatingConfigs
Confirm device has an Adobe application and licenese installed
Describe alternatives you've considered
N/A
Additional context
I fully appreciate that the onus is on the administrator to understand the output and it may not make sense to run this on devices without an Adobe application installed, but there is a possibility of using this tool within a reporting solution and a nicer output would be cool ๐
Thanks again for this!
Describe the bug
When invoked with -vv
, the decoder will report a cached activation against a package whose package ID doesn't match that package. Additionally, only FRL online licenses are reported, even if other types have a cached license.
Package mismatch
Steps to reproduce the behavior:
adobe-license-decoder -vv
and see the cached license expiration dateadobe-licensing-toolkit -t -n P1
and then remove the installed operatingconfig. (NOTE: This will not remove the cached activation.)adobe-license-decoder -vv
Observed behavior
The decoder will report one installed license with a cached activation.
Expected behavior
The decoder should notice that the installed package has a different ID than the cached license and so it should not report the cache license against that data.
Additional context
If you deactivate but do not remove package P1, then the cached license should be reported against P1 but not P2.
Unreported cache entries
Steps to reproduce the behavior:
adobe-license-decoder -vv
Observed behavior
The decoder will not report the cached license.
Expected behavior
The decoder will report the cached license.
Operating System
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.