Skip to content

Instantly share code, notes, and snippets.

Avatar

Aaron Parker aaronparker

View GitHub Profile
@aaronparker
aaronparker / Import-GPO.ps1
Created May 1, 2023 14:06
Import GPO backups into a new domain
View Import-GPO.ps1
# Import Group Policy Objects
$Path = "C:\Temp"
$Destination = "C:\Temp\Prod-GPO"
Expand-Archive -Path "$Path\Prod-GPO-backup.zip" -DestinationPath $Path
$BackupList = Get-ChildItem -Path $Destination -Directory -Exclude "manifest.xml"
foreach ($item in $BackupList) {
[System.Xml.XmlDocument] $XmlFile = Get-Content -Path "$($item.FullName)\gpreport.xml" -ErrorAction "Stop"
$BackupID = $item.Name -replace "{|}", ""
$BackupID = $item.Name -replace "{", "" -replace "}", ""
$GpoName = "Test-$($XmlFile.GPO.Name)"
@aaronparker
aaronparker / Export-GPO.ps1
Created May 1, 2023 14:06
Export GPO objects from a lab/test domain and zip
View Export-GPO.ps1
<#
Export GPO objects from a lab/test domain and zip
#>
# Local path over RDP connection
$Destination = "C:\Backup"
# Create backups, zip file and copy to client path
$Path = "C:\Temp\Prod-GPO"
$Domain = "home.stealthpuppy.com"
@aaronparker
aaronparker / Install-MicrosoftFSLogixApps.ps1
Created February 8, 2023 04:20
Downloads and installs the latest version or a specific version of the Microsoft FSLogix Apps agent
View Install-MicrosoftFSLogixApps.ps1
#Requires -Modules Evergreen
<#
.SYNOPSIS
Installs the Microsoft FSLogix Apps agent
#>
[CmdletBinding()]
param (
[System.String] $Path = "$Env:SystemDrive\Apps\Microsoft\FSLogix",
[System.String] $Version
)
@aaronparker
aaronparker / text.xml
Created January 29, 2023 23:11
English translation from the NuPhy Console - `C:\Program Files (x86)\NuPhy Console\52\text.xml`
View text.xml
<?xml version="1.0" encoding="utf-16"?>
<root>
<config>
<tc_tipfordevcfg>Please set the switch to Windows</tc_tipfordevcfg>
<tc_config>Configuration</tc_config>
<tc_exit>Quit</tc_exit>
<tc_version>Driver version:</tc_version>
<tc_web></tc_web>
<tc_ok>OK</tc_ok>
<tc_restore>Reset</tc_restore>
@aaronparker
aaronparker / Add-Administrator.ps1
Last active June 6, 2022 07:36
Adds the primary user of an Azure AD joined, Intune managed device to the local Administrators group
View Add-Administrator.ps1
<#
Adds the primary user of the device to the local Administrators group
#>
[CmdletBinding()]
param()
function Get-Key {
try {
$EnrollmentsKey = "HKLM:\SOFTWARE\Microsoft\Enrollments\"
$MatchingKey = foreach ($Key in (Get-ChildItem -Path $EnrollmentsKey | Where-Object { $_.PSIsContainer -eq $true })) {
@aaronparker
aaronparker / update-binaries.yml
Created April 10, 2022 01:14
Updates binaries required for packaging the Microsoft 365 Apps
View update-binaries.yml
# Updates binaries required for packaging the Microsoft 365 Apps
# setup.exe from the Office Deployment Tool
# PSAppDeployToolkit to manage the install
# Microsoft Win32 Content Prep Tool (IntuneWinAppUtil.exe) to package into intunewin format
name: update-binaries
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
on:
@aaronparker
aaronparker / intune-release.yml
Last active July 31, 2022 22:13
Create a release for the Intune as-built
View intune-release.yml
name: Create documentation release
on:
push:
tags:
- "v*.*.*"
jobs:
document-release:
runs-on: ubuntu-latest
@aaronparker
aaronparker / intune-backup.yml
Last active July 31, 2022 22:13
Backup an Intune tenant with IntuneCD
View intune-backup.yml
name: Backup Intune config
# Controls when the action will run.
on:
workflow_dispatch:
push:
paths:
- '.github/workflows/intune-backup.yml'
tags-ignore:
- '*'
@aaronparker
aaronparker / UserFoldersStats.json
Created October 2, 2021 08:48
Azure Workbook to display metrics gathered by Invoke-UserFolderStats
View UserFoldersStats.json
{
"version": "Notebook/1.0",
"items": [
{
"type": 1,
"content": {
"json": "# OneDrive Known Folder Move\n\nUser folder inventory for planning implementation and tracking of [Known Folder Move](https://docs.microsoft.com/en-us/onedrive/redirect-known-folders) with OneDrive for Business.\n\nUser folder details are gathered via Endpoint Analytics Proactive Remediations with [**Invoke-UserFolderStats.ps1**](https://github.com/Insentra/mem-foundations/blob/main/device-reporting/scripts/Invoke-UserFolderStats.ps1) and forwarded to Log Analytics via the [Azure Monitor HTTP Data Collector API](https://docs.microsoft.com/en-us/azure/azure-monitor/logs/data-collector-api).\n",
"style": "info"
},
"name": "Intro"
@aaronparker
aaronparker / Invoke-UserFolderStats.ps1
Last active October 2, 2021 11:42
Collect Windows user folder status and OneDrive Known Folder move and post to Azure Monitor
View Invoke-UserFolderStats.ps1
<#
.SYNOPSIS
Get user folder sizes to determine impact on OneDrive Known Folder Move
#>
[CmdletBinding()]
Param (
[Parameter(Mandatory = $False)]
# Update with Log Analytics Workspace ID
[System.String] $CustomerId = "",