PowerShell is a programming language designed for automation and management tasks, and it can be used to implement faster user onboarding workflows. We’ll examine the benefits of PowerShell more broadly before taking a look at three onboarding use cases where it can eliminate manual data entry, streamline processes, and connect users with the tools they need to do their work.
Benefits of PowerShell
Many IT admins likely know the benefits of using PowerShell to manage their directory — it’s particularly useful for bulk actions and tasks that would be difficult or impossible from a graphical user interface. It’s extensible and flexible. Plus, with PowerShell, admins often don’t need to call an API directly or manually script functions, and it’s object-based, which makes it easier to implement and decipher.
It’s important to note that PowerShell is now open source, so it can be used on Mac® and Linux® machines in addition to Windows® machines. It can be used with directories other than Active Directory®, and it’s compatible with a number of technologies beyond directories, too.
Using PowerShell to Manage Your Cloud Directory: JumpCloud
One such directory is JumpCloud’s Directory-as-a-Service® (DaaS). JumpCloud® offers a unified cloud directory service with a PowerShell module available for command-line control of the directory. It allows for faster onboarding processes, and it’s built on JumpCloud’s API to simplify what would otherwise be complex API calls.
If you’re a current or former AD admin, you can still use the PowerShell skills you picked up with AD and apply them to JumpCloud’s modern cloud directory platform. Through DaaS, you can connect your users to virtually all their IT resources.
Using PowerShell for Faster Onboarding
Here are three cases to demonstrate how you might use the module to streamline onboarding processes.
Use Case No. 1: Merger or Acquisition
If you’re onboarding dozens or hundreds of new users, you don’t want to enter each of their names, usernames, email addresses, and other attributes by hand. PowerShell dramatically reduces the time it takes to get them entered into the new directory.
You can simply export those users to a CSV from an existing directory, which you can then import into the JumpCloud console via PowerShell. If those users were contained in a G SuiteTM or Office 365TM directory, for example, you can export them from that directory and use the attributes captured there to populate their attributes in JumpCloud.
Use Case No. 2: Onboarding Users with Custom Attributes & Resources
If you’re adding new users to the directory, a PowerShell import can capture custom attributes that an import through the web-based UI console cannot. If you work through the JumpCloud Admin Console, you capture basic attributes like names and email addresses, but not other attributes like office location or custom ones that are specific to your organization.
By importing a CSV through PowerShell, you can capture all requisite attributes by adding columns in the CSV before import and specifying the custom attribute name in one column and its value in another. The PowerShell import will populate those values in the user’s “custom attribute” tab. You can also specify user groups, systems to which you want to bind users, and more. In the video below Scott Reed, who pioneered JumpCloud’s PowerShell module, shows the advanced user import feature in action:
Use Case No. 3: Adding User Attributes at Scale
You might also want to onboard existing users to a new SaaS app that requires a custom attribute not already captured in your directory. Rather than entering new attributes for each user one-by-one, you can use the same CSV import feature through PowerShell to update existing users at scale.
Interested in learning more? Check out our PowerShell video series to understand the ways it can work for your organization.