Harm Veenstra avatar

Debugging PowerShell scripts in Visual Studio Code

2 days ago | Harm Veenstra

When testing your new PowerShell script, it throws an expected error or isn't that reliable and you're not sure why :( The debugging options in Visual Studio code could help you to pinpoint the issue, in this blog post I will show you how to do that.

Harm Veenstra avatar

Create a focus time countdown clock using PowerShell

3 days ago | Harm Veenstra

Sometimes you really need to finish something and notifications from your running programs keep taking away your focus… You can try using the script in this blog post to keep focused on your task, when the count-down timer is done your programs will be available again. Hope this helps 🙂 What is focus time and … Continue reading Create a focus time countdown clock using PowerShell

Faris Malaeb avatar

Connect to Office 365 Using Graph API and PowerShell

4 days ago | Faris Malaeb

With the retirement of AzureAD and the MSOnline module, the direction for cloud management is Microsoft Graph API. Administrators must ensure they can connect to Microsoft Graph API endpoints to manage and configure Office 365 or Microsoft 365. Microsoft Graph API is a unified endpoint solution to access Office 365 and Microsoft 365 services like... The post Connect to Office 365 Using Graph API and PowerShell appeared first on Faris Malaeb.

Harm Veenstra avatar

Create a TCP/UDP port listener using PowerShell

7 days ago | Harm Veenstra

One of our customers is securing his network and firewall changes were made that needed to be tested. In this case, the new servers were not deployed in that specific network yet. But... We did want to test the connections before deploying the servers :) In this blog post, I will show you a way how to create listening ports on a machine in order to test the connection from another network using netcat on Linux or portqry on Windows.

Przemyslaw Klys avatar

Working with VirusTotal from PowerShell

7 days ago | Przemyslaw Klys

Virus Total is an excellent service. It's a single place where hundreds of antivirus engines can verify if the file, URL, domain name, or IP Address is trusted or not. Of course, it's not a silver bullet, but it brings tremendous value, and I often verify files I download before executing. Since I release a lot of new or updated PowerShell modules on a weekly/monthly basis, I thought it would be great to send newly released versions straight to Virus Total so I can have them checked before anyone executes them.

Adam Bertram avatar

How To Use the PowerShell Expand Property for Select-Object

8 days ago | Adam Bertram

Discover the ins-and-outs of the PowerShell expand property for the Select-Object command in this example driven tutorial!

Harm Veenstra avatar

PowerShell and JSON

9 days ago | Harm Veenstra

JSON is something that's being used a lot, it's easy for storing and retrieving data. In this small blog post, I will show you how to do that :)

Przemyslaw Klys avatar

Reporting group membership for critical Active Directory groups

11 days ago | Przemyslaw Klys

I work a lot with Active Directory-related tasks. One of the tasks is to know the group membership of critical Active Directory Groups such as Domain Admins, Enterprise Admins, Schema Admins, Event Log Readers, and a few others that are a bit less known. As I did it, I got bored of typing the group names repeatedly and decided that enough was enough and there must be an easier way for me to do that.

Faris Malaeb avatar

Migrate Your Script from AzureAD or MSOnline to Graph API

11 days ago | Faris Malaeb

No one can deny the superior help of AzureAD and MSOL PowerShell modules and how these two made cloud management easy and simple. But the end for these two modules is nearby, and the direction is the Graph API. So why not start now and learn what you need to know to migrate your PowerShell... The post Migrate Your Script from AzureAD or MSOnline to Graph API appeared first on Faris Malaeb.

Harm Veenstra avatar

Jupyter notebooks in VSCode with PowerShell support

14 days ago | Harm Veenstra

Saw a video about Jupyter in Visual Studio Code a while back, tried to get it up and running, and... It seems that things are changed now, it was there in VSCode preview versions together with the PowerShell preview extension. All the How-To's I found showed me that way of getting it installed/configured. So I played around a little bit with Jupyter and the PowerShell kernel installation and got i

Jeff Hicks avatar

Organizing Chaos with PSWorkItems and PowerShell

14 days ago | Jeff Hicks

I spend my working days living in a PowerShell console. Over the years, I’ve developed many PowerShell modules to help me manage the chaos that is my work life. One area that always demands attention is managing my tasks and To-Dos. For several years I have been using the MyTasks module. This module stored tasks...

Alex Neihaus avatar

How to add BGP routes to AWS security groups

16 days ago | Alex Neihaus

PowerShell's Compare-Object makes it easy to compare two collections of objects The post How to add BGP routes to AWS security groups first appeared on Thinking aloud.

Harm Veenstra avatar

Create a Tweet on Twitter using PowerShell

16 days ago | Harm Veenstra

In an earlier post about Slack, I showed you how to create a message there, but Twitter is also something that I use a lot (I even met my girlfriend because of that!) and in this blog post I will show you how to create a Tweet using PowerShell :)

Harm Veenstra avatar

PowerShell and logging

18 days ago | Harm Veenstra

Sometimes it's the last place that admins look... Logs :) Something goes wrong and you don't know why, logs tell a lot! (When I deploy some Endpoint Manager packages and suddenly they don't work, I put in some logging and discover why) This blog post shows you a few ways to enable logging and how to read back all PowerShell actions on a device.

Harm Veenstra avatar

PowerShell tips and tricks

21 days ago | Harm Veenstra

Over the years I learned a lot of PowerShell tricks but also stopped using a few because they are outdated or not that smart to use them any more performance-wise. In this blog post I will share a few of them :) (These are just a few, will write a new blog post with others in the future)

Przemyslaw Klys avatar

Finding duplicate DNS records by IP Address using PowerShell

22 days ago | Przemyslaw Klys

In my earlier blog post, I showed you a way to find duplicate DNS entries using PowerShell, but the focus was on finding duplicate entries based on hostname. But what if you would like to find duplicate entries based on IP Addresses? This was the question I was asked on Reddit, and I thought it was a legitimate request, so today's focus will be on transposing table output from earlier functions to present data differently.

Harm Veenstra avatar

10.000 views and a bit of personal history

24 days ago | Harm Veenstra

First of all, I would like to thank you all! Thanks for visiting my site and responding to things I post here and on Facebook, LinkedIN, Twitter and GitHub. 10K views from March until now and just above 5,5K visitors, happy to see these numbers! In this blogpost I will tell you some more things about me and why I like PowerShell :)

Przemyslaw Klys avatar

Finding duplicate DNS entries using PowerShell

24 days ago | Przemyslaw Klys

Today's blog post is about Active Directory-integrated DNS and how to find duplicate entries. By duplicate, I mean those where one DNS name matches multiple IP addresses. While some duplicate DNS entries are expected, in other cases, it may lead to problems. For example, having a static IP assigned to a hostname that later on is also updated with dynamic entries. The post Finding duplicate DNS entries using PowerShell appeared first on Evotec.

Harm Veenstra avatar

Report on Active Directory OU permissions using PowerShell

28 days ago | Harm Veenstra

For one of our customers, we are working on restricting permissions of admin accounts by implementing Role Based Access and delegating permissions to Organizational Units (OU's). But one of the first questions was… What are the current permissions and what should we remove and where? In this blog post I will show you a way to report on the current permissions so that you can remove them where they

Kelvin Tegelaar avatar

Automating with PowerShell: Getting device warranty information

28 days ago | Kelvin Tegelaar

Warranty reporting This morning I woke up with a mission; I wanted to fix HP warranty reporting for my PSWarranty PowerShell Module. If you’re not familiar yet I’ve blogged about the module and warranty reporting before here. Most of the module has been left the same so you can reference that blog for more information. Between that blog and now the PSWarranty module has had a lot of updates.

Faris Malaeb avatar

Find Which Azure AD Group Configured For Writeback

29 days ago | Faris Malaeb

Recently Microsoft has introduced a new feature in Azure Active Directory which allows the admin to specify which group should be written back to your On-Premise Active Directory and the writeback scope. In today’s PowerShell script, the script report which Azure AD Group enabled for Group writeback through reading the AAD Group writebackConfiguration resource in... The post Find Which Azure AD Group Configured For Writeback appeared first on Faris Malaeb.

Faris Malaeb avatar

Active Directory Groups Membership Report Using PowerShell

one month ago | Faris Malaeb

In this post, I will explain how to generate a report for Active Directory users and each group a user is a member of. So if UserA is a member of five groups, the report shows all these groups and exports the result as CSV. Prerequisites You need Windows PowerShell 5.1 or PowerShell 7. Also,... The post Active Directory Groups Membership Report Using PowerShell appeared first on Faris Malaeb.

Faris Malaeb avatar

Send HTML Teams Message Using PowerShell Graph

one month ago | Faris Malaeb

Today’s post will cover the basics of using PowerShell to send Teams messages to users (One to One). This is through utilizing Microsoft Graph APIs. Prerequisites You need to download PowerShell Graph SDK from Microsoft PowerShell Gallery. Required permission scope: Chat.ReadWrite Chat.Create If you are new to Microsoft Graph, then you can read more about... The post Send HTML Teams Message Using PowerShell Graph appeared first on Faris Malaeb.

Faris Malaeb avatar

Adding Multiple Azure AD Named Location Using Graph API

one month ago | Faris Malaeb

The following PowerShell script allows you to add multiple Azure AD Named location IP address ranges using Microsoft Graph API PowerShell Module. You need to download the Microsoft Graph PowerShell SDK. You can read more about Microsoft Graph SDK and how to use it in a previous post Understanding Microsoft Graph SDK PowerShell The Script... The post Adding Multiple Azure AD Named Location Using Graph API appeared first on Faris Malaeb.

Jeff Hicks avatar

The Value of Objects

one month ago | Jeff Hicks

This is a reprint of an article published earlier this year in my premium PowerShell newsletter, Behind the PowerShell Pipeline. This is a sample of what my subscribers get 6-8 times a month. I expect I will write several articles about PowerShell and its relationship with objects. I know that this is the biggest hurdle...

Kelvin Tegelaar avatar

Automating with PowerShell: Setting Sharepoint Sharing Settings

one month ago | Kelvin Tegelaar

CIPP Components About 8 months ago I’ve started a larger open source project called CIPP. CIPP is a M365 Management tool aimed at Managed Services Providers based on Azure Static Web Apps and a PowerShell backend. This blog shares some of the PowerShell code that’s used for the backend. CIPP is always looking for contributors on both the frontend and backend side so jump in if you’d like.

Mike Robbins avatar

Install PowerShell on ArcoLinux

one month ago | Mike Robbins

PowerShell is a cross-platform scripting language that runs on Windows, Linux, and macOS. ArcoLinux is a rolling release Linux distribution based on Arch Linux. Like other Arch-based Linux distributions, ArcoLinux uses pacman for its package manager. Prerequisites ArcoLinux was installed using the ArcoLinuxL ISO with the easy installation option. The examples shown in this article were performed using Xfce Terminal.

Xajuan Smith avatar

Confluence CVE Vulnerability Checker

one month ago | Xajuan Smith

Some people host confluence from Atlassian on local infrastructure and no access to the cloud.I was curious if this could be an issue with learning whether or not your version is vulnerable. So here is something I noticed to be helpful to all Confluence admins that want to check and not worry about the deepContinue reading "Confluence CVE Vulnerability Checker"

Alex Neihaus avatar

Write great AWS Lambda PowerShell functions

one month ago | Alex Neihaus

How to write great Lambda functions in PowerShell The post Write great AWS Lambda PowerShell functions first appeared on Thinking aloud.

Faris Malaeb avatar

Reading Conditional Access using PowerShell Graph SDK

one month ago | Faris Malaeb

This post takes you through Microsoft Azure Active Directory Conditional Access policies using the PowerShell Graph SDK module. If you are new to the Graph module, go first and read the introductory post on Understanding Microsoft Graph SDK PowerShell Prerequisites You need to have the proper required permission on Azure Active Directory, usually a global... The post Reading Conditional Access using PowerShell Graph SDK appeared first on Faris Malaeb.

Christian Hoejsager avatar

Using Powershell to Investigate Azure Ad User Risks

one month ago | Christian Hoejsager

In this post, I will explain how you can use the PowerShell SDK for Microsoft Graph to investigate Risky Users in your Azure Active Directory. I will also show you how to use PowerShell to connect directly to the Microsoft Graph and query the data from there. Being able to query for riskDetections, risky users, and sign-ins, allows you to automate alerts or actions whenever a user gets flagged in your risk policy.

Jerome Bezet-Torres avatar

Packer how to use it

one month ago | Jerome Bezet-Torres

1.Introduction Packer is an open-source tool that allows the standardization of our images for several platforms with a single template. It allows us a simple and declarative automation to create our reference images or our golden images. 2. How to install It comes in the form of a single executable available on several platforms. Platforms Architecture MacOs Amd64 Arm64 Windows 386 Amd64 Linux 386 Amd64 Arm Arm64 A small particularity for the Windows world it will be necessary to add an environment variable to specify the path of the binary 3.

Matthew Dowst avatar

PowerShell Weekly Redesign!

2 months ago | Matthew Dowst

I am pleased to announce that PowerShell Weekly has been redesigned and moved to its own sub-site psweekly.dowst.dev. All past posts and links are available there as well. What’s New New look and feel Thumbnails for every link Improved searching of the 2,000+ links Search by keyword, date, author, category Custom RSS Feed specifically the […]

Mike Robbins avatar

Use PowerShell to determine the Windows version on DVD, ISO, or USB installation media

2 months ago | Mike Robbins

You’re preparing to load an operating system. You find installation media for an unknown version of Windows. It’s not labeled. How do you determine the version of Windows on the installation media? You can use the Get-WindowsImage cmdlet to determine the Windows version of installation media. This cmdlet is part of the Dism PowerShell module. It can be used with Windows PowerShell 5.1 and PowerShell 7 on Windows operating systems.

Faris Malaeb avatar

Connecting and Understanding Microsoft Graph API Using PowerShell

2 months ago | Faris Malaeb

Administrators managing products such as Sharepoint, Teams, and Azure AD tend to use multiple PowerShell modules as each service has its own PowerShell module. Although this helped a lot, the real need is for a one-stop shop that helps in managing all the services instead of having multiple modules. The solution is to use the... The post Connecting and Understanding Microsoft Graph API Using PowerShell appeared first on Faris Malaeb.

Mike Robbins avatar

Using the conditional ternary operator for simplified if/else syntax in PowerShell 7

2 months ago | Mike Robbins

The conditional ternary operator is a feature added to PowerShell in version 7. You can use it as a simplified version of if/else. The syntax for the ternary operator takes three operands: A condition to evaluate followed by a question mark (?). An expression to execute if the condition is true, followed by a colon (:). And finally, an expression to execute if the condition is false. <conditi

Tommy Maynard avatar

Coding Novice, APIs, and PowerShell

2 months ago | Tommy Maynard

I read a recent post on the technical writing subreddit, “How proficient in coding do you have to be to write API Documentation?” I jumped in and posted, as technology is my jam, and writing is my passion. Maybe it’ll be my jam too, someday. The author wanted to know if they need to know […] The post Coding Novice, APIs, and PowerShell appeared first on tommymaynard.com.

Jeff Hicks avatar

Using PowerShell Your Way

2 months ago | Jeff Hicks

I’ve often told people that I spend my day in a PowerShell prompt. I run almost my entire day with PowerShell. I’ve shared many of the tools I use daily on Github. Today, I want to share another way I have PowerShell work the way I need it, with minimal effort. This specific task centers...

Tommy Maynard avatar

Accounts Continued – Azure with PowerShell III

2 months ago | Tommy Maynard

Posts in this Series It Begins – Azure with PowerShell I Accounts – Azure with PowerShell II Accounts Continued – Azure with PowerShell III In the last post, we took a look at the Connect-AzAccount command, stored its output in a variable using the Outvariable parameter and explored it. I think we ought to go […] The post Accounts Continued – Azure with PowerShell III appeared first on tommymaynard.

Przemyslaw Klys avatar

Reading IIS logs with PowerShell

2 months ago | Przemyslaw Klys

Today I was reading Twitter, as I am pretty addicted to technology news when Adam Bacon mentioned that he's surprised that no one has rebuilt IIS Parser as pure PowerShell. While this is not entirely true, and some modules can do some parsing, I decided to try my luck. While doing it from scratch in PowerShell is possible, I opted to use an external C# library that does all the heavy lifting and is optimized for speed.

Jeff Hicks avatar

Better PowerShell Properties

2 months ago | Jeff Hicks

I was chatting with my friend Gladys Kravitz recently about some PowerShell scripting she was doing with Active Directory and the DirectorySearcher object. For a number of reasons, the Active Directory module from Remote Server Administration Tools (RSAT) is not an option. But that’s fine. Gladys is an experience AD admin and PowerShell scripter. Still,...

Xajuan Smith avatar

Disable Bitlocker

2 months ago | Xajuan Smith

Disabling bitlocker with PowerShell is as easy as you might not believe. You must first unlock the drive Unlock-BitLocker -MountPoint D: Then you can do some object juggling to select the one you want fast using tab completion. Something to consider, we know you can do this in the GUI, however the GUI i sContinue reading "Disable Bitlocker"

Mike Robbins avatar

Formatting PowerShell 7 code like Kusto Query Language

2 months ago | Mike Robbins

An obscure feature that was added to PowerShell in version 7 is the ability to specify the pipe character on the next line similar to the syntax for Kusto Query Language (KQL). Get-Command -Name Get-Help, Get-Command, Get-Member -PipelineVariable results | Select-Object -ExpandProperty ParameterSets | Select-Object -ExpandProperty Parameters | Where-Object Aliases | Select-Object -Property @{label='CmdletName';expression={$results.

Faris Malaeb avatar

Get Azure MFA Registered Users using PowerShell

2 months ago | Faris Malaeb

This post helps you in finding the registered and unregistered users to Azure MFA using PowerShell and the web interface. Finding Azure MFA registered Users using Web Interface Azure Active Directory has multiple reports which can help in finding the information related to registered users, the method enrolled, SSRP Capable, and other information. To access... The post Get Azure MFA Registered Users using PowerShell appeared first on Faris Malaeb.

Kelvin Tegelaar avatar

Automating with PowerShell: Enable M365 activity based time-out & Office Code Execution fix

2 months ago | Kelvin Tegelaar

CIPP Components About 8 months ago I’ve started a larger open source project called CIPP. CIPP is a M365 Management tool aimed at Managed Services Providers based on Azure Static Web Apps and a PowerShell backend. This blog shares some of the PowerShell code that’s used for the backend. CIPP is always looking for contributors on both the frontend and backend side so jump in if you’d like.

Tommy Maynard avatar

Accounts – Azure with PowerShell II

2 months ago | Tommy Maynard

Posts in this Series It Begins – Azure with PowerShell I Accounts – Azure with PowerShell II Accounts Continued – Azure with PowerShell III Before we jump back into Azure, I wanted to quickly share a graphic I put together. This image shows the number of site visitors I had to my site on Wednesday, […] The post Accounts – Azure with PowerShell II appeared first on tommymaynard.

Jeff Hicks avatar

Open Up Wide

2 months ago | Jeff Hicks

I recently read a terrific post from Mike F. Robbins about using Format-Wide to display strings. Format-Wide is one of those cmdlets that I don’t think gets much use. This is a shame because it certainly fulfills a need. But as Mike points out, if you have a list of strings, Format-Wide requires a little...

Mike Robbins avatar

Format the output of a string in multiple columns with PowerShell

2 months ago | Mike Robbins

In my previous blog article, I used the PowerShell Format-Wide cmdlet to format the output of a string in multiple columns. While Format-Wide isn’t a command that I’ve used extensively, the behavior wasn’t what I expected. When you pipe object-based output other than a string from any PowerShell command to Format-Wide, it produces the desired results. Get-PSDrive | Format-Wide -Column 2 I’ll pipe the following to Get-Member to confirm that it’s a string.

Faris Malaeb avatar

PowerShell Parameters Zero to Hero – Part1

2 months ago | Faris Malaeb

PowerShell Parameters provide an excellent and easy way to make the script more dynamic and flexible for the users and the owner’s needs by allowing the script to take action based on the passed value. This makes the script shorter and much easier for updates and bug fixes. If you never wrote a PowerShell parameter,... The post PowerShell Parameters Zero to Hero – Part1 appeared first on Faris Malaeb.

Tommy Maynard avatar

It Begins – Azure with PowerShell I

2 months ago | Tommy Maynard

Posts in this Series It Begins – Azure with PowerShell I Accounts – Azure with PowerShell II Accounts Continued – Azure with PowerShell III I had a conversation with someone recently, which reminded me of an event in my life. I was sitting in the yard, maybe up to 15 years ago, pulling weeds. In […] The post It Begins – Azure with PowerShell I appeared first on tommymaynard.com.