PowerShell Universal v1.4
September 30, 2020
I’m pleased to announce another feature-packed PowerShell Universal release! Today, we’re releasing version 1.4 of the ultimate platform for building web-based IT tools. This release contains an extensive list of features as well as bug fixes. This blog post will go over them but I encourage you to download or upgrade to take full advantage of everything that has been added.
Full release notes can be found here.
We’ve extended the concept of PowerShell Versions and replaced it with Environments. Environments allow you to specify the executable, arguments, modules and variables that are defined whenever you execute an API request, run a job or host a dashboard. The execution environment will automatically create a runspace pool with the assets you define so there is no need to import them every time.
We’ve standardized environments across all features and now you can select which environment is used in each place.
Windows Authentication with IIS
You can now configure Windows Authentication without IIS. IIS can complicate deployments and if it’s not something you need, you can now avoid it by simply installing Universal as a service and configuring Windows authentication.
We’ve added the ability to configure rate limiting for APIs. This is an important feature for anyone that may be exposing their API publicly or may call a sensitive resource that you do not want to overload. You can configure rate limits based on HTTP method, endpoint (or pattern), and the number of requests over a period of time.
You’ll have access to more connection information in your endpoints. Variables are now defined for Local IP Address, Remote IP Address, Local Port and Remote Port.
Updated Endpoint Page
We’ve enhanced the API page to provide a neat in-browser experience for developing your API. This includes the ability to test your APIs directly in the browser.
You can now define continuous schedules that will run a job over and over again with a configurable delay. It won’t start another job until the previous one has finished.
Variables are now global for the entire Universal platform. By default, your existing Environments will import all variables but you can define specific variables or patterns to use in an environment. This change shouldn’t affect your jobs but be aware that variables are no longer present only present in jobs but present in any one of the features using an Environment.
We’ve added the ability to assign roles to dashboards and pages in the v3 framework. If you assign a role to a dashboard, only users of that role will have access to the entire dashboard. When you assign roles to a page in a dashboard, any authenticated user will be able to access the dashboard but only users in the specified role will have access to the pages.
We’ve brought back ChartJS support. This was the primary chart library in UDv2. Many users preferred this library over our Nivo charts integration so we have decided to include it. We’ve also simplified the API to make it even easier to build charts.
We’ve simplified and extended the built in navigation. You can now more easily define your navigation items for a page. We also support a persistent layout that does not require a click of a hamburger menu to open the navigation.
Redesigned Dashboard Page
The dashboard page has been redesigned to make it easier to see an overview of the dashboards running in your environment.