Settings
Describes how to set application settings and a definition of the settings.
Application settings can be found within the appsettings.json
file within the installation directory. This file defines various settings you can apply to Universal. Although you can edit this file directly, it's recommended that you use one of the following methods to persist settings as the appsettings.json
file in the installation directory will be overridden on upgrades.
When installed from the MSI, the installation directory for PowerShell Universal is ${env:ProgramFiles(x86)}\Universal
.
ProgramData AppSettings.json
You can create an appsettings.json file within the $Env:ProgramData\PowerShellUniversal
folder. You can use a subset of the settings from within the appsettings.json
file. For example, if you wanted to override the JWT settings, you could have an appsettings.json
file like this.
Environment Variables
You can also set environment variables for your settings. Environment variables should have an underscore between each subset of the appsettings.json
file. For example, if you want to change the JWT signing key via environment variable, you would set the variable $Env:Jwt__SigningKey
. If you wanted to set the external API URL, you would set $Env:Api__Url
.
Examples
Using an environment variable for the OpenID Connect secret.
Using an environment variable for JWT signing key.
Command Line
PowerShell Universal 2.6 or later
You can specify the location of the appsettings.json
file by using the --appsettings
command line argument for Universal.Server.exe
.
Setting Descriptions
Kestrel / Endpoints
Default Value
The Kestrel endpoints section allows you to configure the web server. This settings are not used when hosting in IIS. In this section you can configure options like HTTPS and the port that Universal is listening on.
Kestrel is the web server implementation for ASP.NET Core that PowerShell Universal uses. For more information on the configuration options for Kestrel, visit this Microsoft Documentation page.
Application Insights
Default value
Logging
Default Value
The logging options define the level of logging exposed by Universal. The core Universal logging setting Logging / LogLevel / Default can be adjusted to increase the level of logging by the Universal components.
AllowedHosts
Default Value
The hosts that are allowed to connect to the webserver. Defaults to any host.
CorsHosts
Default Value
Configures the hosts that are allowed to make cross-origin resource sharing requests (CORS) to the server. To allow multiple hosts, separate each host by a semicolon.
Data
Default Value
API
Default Value
Authentication
Default Value
Windows
OIDC
OpenID Connect authentication settings.
WSFed
WS-Federation authentication settings.
JWT
JSON Web Token configuration settings
Default Value
UniversalDashboard
Default Value
HideAdminConsole
Prevents the service from serving the admin console. This will prevent the admin console from being used by any user, including administrators.
Last updated