Skip to content

dadorner-msft/activationws

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Trusted by the world’s leading enterprises

Welcome to the ActivationWs GitHub repository!

Overview

ActivationWs is a customizable solution that allows you to automate the Multiple Activation Key (MAK)1 activation process for various Microsoft products such as Windows, Office, and Extended Security Update (ESU) add-ons.

Key Benefits

  • Automates MAK deployment for organizations of any size
  • Pull-based activation: Devices request activation, reducing manual steps and obstacles
  • 🎉 Centralized storage of activation data: Monitor the status of activations and support non-persistent environments like VDI or lab setups, where machines are frequently reimaged or reset
  • Customizable and privacy-friendly: Full source code is available for review and modification
  • Easy to implement: Integrates with deployment tools like ConfigMgr or custom solutions

How It Works

ActivationWs is made up of two components:

  1. ASP.NET Core web app
  2. PowerShell script (Activate-Product.ps1)

The following illustration shows a simplified version of the MAK deployment and product activation process:

Illustration showing a simplified version of the MAK deployment and product activation process

Activation Flow:

  1. The PowerShell script is deployed to your devices using ConfigMgr or a deployment tool of your choice
  2. The script installs the MAK and queries the respective Installation- and Product IDs. It then sends the data to the ActivationWs web app. Communication between the device and the ActivationWs web app takes place over a port of your choice, e.g. 80/443
  3. Installation- and Product IDs are transmitted to the Microsoft Activation Service
  4. A Confirmation ID is subsequently returned to the ActivationWs web app
  5. ActivationWs web app returns the Confirmation ID to the device. The script deposits the Confirmation ID and concludes the product activation

Requirements

  • The ActivationWs web app needs access to the Microsoft Activation Service (https://activation.sls.microsoft.com). A proxy server can be specified in the appsettings.json file, where necessary
  • To host the ActivationWs web app on IIS, install the ASP.NET Core Hosting Bundle
  • Activate-Product.ps1 requires Windows PowerShell 3.0 or later and needs to be executed with administrative rights

Installation and Usage

This section highlights some of the most frequent scenarios and guides you through the initial setup.

Note

For the deployment of ESU MAKs, please ensure that these prerequisites are met on your devices:

1. Build and deploy the web app

  1. Build the solution (Visual Studio 2022 or later)
  2. Deploy the ActivationWs web app to a web server, e.g. IIS

2. Activate the product

Scenario #1: Automated activation

Deploy Activate-Product.ps1 to your devices. The following animation demonstrates the MAK installation and activation of an ESU product:

Animation demonstrating the installation and activation of an ESU product

Scenario #2: Manual activation (air-gapped devices)

  1. Open the ActivationWs home page
  2. Enter the Hostname, Installation- and Extended Product ID to retrieve the Confirmation ID
  3. Activate the product by slmgr.vbs /atp <Confirmation ID> <Activation ID>

Graphic showing the ActivationWS UI


FAQ

Tip

The following section contains answers to frequently asked questions. Please feel free to file an issue or contact me should you have any question or need support.

To which external addresses does ActivationWs web service specifically need access to?

ActivationWs web service requires access to the URL listed in the Requirements section.

Activate-Product.ps1 fails with an error

Error How to fix it
The product key is invalid - Check your MAK
- For the deployment of ESU MAKs only: ensure that all of the prerequisites are installed on your ESU eligible device

If it fails even though you followed these steps, please take a look at the following support article: How to rebuild the Tokens.dat file when you troubleshoot Windows activation issues
The Installation ID (IID) and the Confirmation ID (CID) do not match For the deployment of ESU MAKs only: ensure that all of the prerequisites are installed on your ESU eligible device
(500) Internal Server Error This is a "server-side" error, meaning that the ActivationWs web service couldn't acquire the Confirmation ID. Reasons include:
- The ActivationWs web service couldn't connect to the required URL

No activations are left on my MAK

Please request an increase to MAK activation limits here.


Contributions are welcome

You don’t have to be a developer to contribute to the project!

There are other ways to join the project including:

  1. Writing documentation
  2. Creating tutorials
  3. Bug reporting and triaging (here)
  4. Feature testing

Back to Overview

Footnotes

  1. MAKs are interchangeably referred to as product keys, or license keys