Whether you have standard bloatware you remove from end-user machines during onboarding, you want to blacklist applications due to security concerns, or you just need to uninstall an application across an entire organization, NinjaOne can help you make the process fast and easy.
Ninja provides four ways to uninstall applications:
1) Remotely uninstalling software via the NinjaOne dashboard
Specifically, via the software inventory tab, within organizations, or on devices.
This is an ideal workflow for mass uninstalling an application across your client-base, within an organization, or for remove an application on an individual device.
2) Remotely uninstalling software via remote access
Remote access is ideal for when either a complex uninstallation process is required on an individual device, or if you cannot uninstall an application via other means. Using remote access to uninstall software does not scale well.
3) Remotely uninstalling software via the remote command line / PowerShell interface
Similar to remote access, using the remote command line / PowerShell is ideal for when either a complex uninstallation process is required on an individual device, or if you cannot uninstall an application via other means.
4) Remotely uninstalling software via automation with policies, conditions, and scripts
Policy conditions and custom scripts allow you to full automate application removal across your endpoints. While the other methods mentioned above are incredibly effective, only through automation can you uninstall applications and ensure they stay unavailable to end-users.
How to use automation for software removal in NinjaOne
The final option, above, can save MSPs a lot of time by automating the removal of unwanted applications. Effectively leveraging automation for software removal requires two steps in NinjaOne:
- Creating a software removal script
- Applying automation
1) Create a software uninstall script
You can create an uninstall script using one of the languages NinjaOne supports for scripting such as Batch or PowerShell.
Things to include in your script (using PowerShell as an example):
- Validate that the software is installed. You can use the Get-WmiObject or Get-ItemProperty cmdlet
- Uninstall the application. You can use Get-WmiObject and invoke .uninstall() or msiexec and use the ‘/x’ parameter.
- Using the appropriate silent or quiet uninstall parameter helps avoid end-user interruption.
- NinjaOne scripts can accept parameters when deployed. Make your script general enough to broad software removal requirements and use parameters to identify which application to uninstall.
You might be interested in our blog post, “How to Automate App Uninstallation on macOS with Shell Script“.
2) Apply automation
You can use NinjaOne’s policy conditions to identify when an unwanted application is installed and automate deployment of your uninstall script.
1) Create a new policy condition. If this blacklist applies across organizations, make this condition in your parent policy.
- Set the condition type to ‘Software’ and presence to ‘Exists’.
- Type the name of the application in the ‘Name’ field.
2) Add your uninstall script to the condition so it is triggered when the identified application is detected.
If you made the uninstall script dynamic, you can use the application name from step one to tell your script which application to uninstall.
3) You may want to add notifications or tickets to the tickets for billing or alerting purposes.
4) Save the condition.