Extension Attribute Perpetual License LTSC Office 2024

tcandela
Valued Contributor II

I have a script that shows exenstion attribute for the type of license installed for Office.   With the release of the Office 2024 LTSC license does anyone know if the script will be updated to add the information for the 2024 license?

I installed the LTSC 2024 serializer but it still reads 'office 2021 volume license'  and from the actual mac end the 'about word' shows 'Office LTSC Standard for Mac 2024'.  

Word version is 16.90.2

the script is called Office_License.sh (see below for the script).  Looks like an IF statement needs to be added for Office 2024 volume license

https://github.com/pbowden-msft/ExtensionAttributes

14 REPLIES 14

sdagley
Esteemed Contributor II

@tcandela You might want to try and determine the difference between the 2021 and 2024 LTSC and update the script yourself since @pbowden who wrote that script is apparently on extended medical leave from MS and has been offline for about a year.

Samstar777
Contributor II

@tcandela I can help update the script for you but I will need your help in testing the same. Feel free to dm me on jamf nation or slack @Samstar777 and we can work together on this.

JasonEgg
New Contributor II

I'm also VERY interested in this. The magic is in interpreting /Library/Preferences/com.microsoft.office.licensingV2.plist but the "data" blocks are not encoded in any way I could easily decode (not that I tried too hard, i.e. it's not straightforward base64 encoded). Happy to provide any info I can.

tcandela
Valued Contributor II

@Samstar777 @JasonEgg  let me know when you update the EA script and I'll use it and run a recon to see if my test mac changes from 2021 license to 2024

Samstar777
Contributor II

@tcandela and @JasonEgg Could anyone of you can provide me with "com.microsoft.office.licensingV2.plist" file. This will help me find the unique identifier to write the logic to detect license information.

JasonEgg
New Contributor II

I sent some details to @Samstar777 

I am going to try to get more examples and find patterns on my own as well

tcandela
Valued Contributor II

@JasonEgg @Samstar777  let me know if you need anything to help with trying to figure this out 

RobbEFX
New Contributor

I added:

if /usr/bin/grep -q "Bozo+MzVxzFzbIo+hhzTl41DwAFJEitHSg5IiCEeuI" "$PERPETUALLICENSE"; then
/bin/echo "Office 2024 Volume License"
return
fi

to our Office License extension attribute. After an inventory update, my test Mac reported having a Office 2024 Volume License instead of the perpetual license. Won't help with reporting the stacked licenses, but it's a start.

Samstar777
Contributor II

@tcandela @JasonEgg Could you please test this updated Extension Attribute for Office License and let me know if it helps - Github

@RobbEFX Thanks for your suggestion.

tcandela
Valued Contributor II

@Samstar777 @JasonEgg I'll give the updated EA a test and let you know what happens.

JasonEgg
New Contributor II

Cursory testing reveals it is only accurate for new deployments, that is, fresh installations without a previously existing license file. For instances where license was "updated" from 2021 to 2024, the EA still reports 2021 even after 2024 license is applied. I believe this is is the "stacked" scenario that @RobbEFX is referring to.

new-ea-stacked-2021-2024-example.png

 

The old pbowden script seemed to identify "stacked" instances by the length of the plist file, but perhaps this is no longer accurate?

I'm going to do some more testing

Samstar777
Contributor II

@JasonEgg Thanks for your feedback, To Summarise the script works as expected on newly deployed device but does not work on existing office which got upgraded from Office 2021 to Office 2024. let me read the entire script and stacked logic to enhance the script. Thanks for the feedback and i believe together we can do it :)

tcandela
Valued Contributor II

@Samstar777 @JasonEgg @RobbEFX @sdagley  I'll see what I can also find out from looking at the original script. Anyone with programming experience It's pretty easy to follow what's happening. 

Looks like 3 functions assigning 3 variables and from there basically a bunch of IFs to get the EA value.

Samstar777
Contributor II

@JasonEgg I have given you a string in slack, could you run that and get me the output of the same.