## Documentation

- About
- Read First
  - What is IdentityServer
  - Installation Scenarios
- Migrations
- Configuration & Integration
  - Configuring AdminUI
  - Integrating with Identity Server
  - Integrating with Quickstarts
  - Enabling Logging
- Installation
  - Installer
  - IIS
  - Azure
  - Docker
- Users
  - Searching for Users
  - Adding Users
  - Editing Users
  - Deleting Users
  - Set User Password
- Roles
  - Creating Roles
  - Managing Roles
  - Managing Users in a Role
- Claim Types
- Clients
  - Searching for Clients
  - Adding Clients
  - Adding a SAML Client
  - Adding a WS-Fed Client
  - Editing Clients
  - Deleting Clients
- Import and Export
  - Exporting Clients
  - Importing Clients
  - Importing Client Configuration with Secrets
  - Importing SAML Clients with Certificates
  - Import and Export Via the API
- Resources
  - Searching for Resources
  - Creating Resources
  - Editing resources
- Webhooks
  - Webhooks
  - User Registration Endpoint
  - Password Reset Endpoint
- User Settings Endpoints
- Access Policy
- Auditing

### Configuring AdminUI

- -AdminUI Configuration Settings (UI)
- -env.js
- -AdminUI Configuration Settings (API)

The configuration for AdminUI is set via environment variables. These can be setup in different forms including a `web.config` file, a `docker-compose.yml` file or Azure appsettings.

## AdminUI Configuration Settings (UI)

- `AuthorityUrl` The IdentityServer installation protecting AdminUI
- `ApiUrl` The AdminUI backend website
- `UiUrl` The AdminUI frontend website

### env.js

- `AuthorityUrl` The IdentityServer installation protecting AdminUI
- `ApiUrl` The AdminUI backend website
- `UiUrl` The AdminUI frontend website
- `AddUserPassword` Allows for setting a users password on creation (this is for demo purposes only, do not use in production), see more here

## AdminUI Configuration Settings (API)

- `DbProvider` Supported types and their values are:
  - `SqlServer`
  - `MySql` (Note: AdminUI requires the MySQL setting lower_case_table_names to be `false`)
  - `PostgreSql`
- `IdentityConnectionString` The connection string for your Identity database (Users, Claim Types, Roles etc.)
- `IdentityServerConnectionString` The connection string for your IdentityServer database (Clients, Resources, Persited Grants etc.)
- `OperationalConnectionString` (Optional) The connection string for the Presisted Grants DbContext, if not supplied AdminUI will use the `IdentityServerConnectionString`
- `AuthorityUrl` The IdentityServer installation protecting the API
- `UiUrl` The AdminUI frontend
- `RequireHttpsMetadata` When `true` ensures IdentityServer discovery endpoint uses TLS. Should be true for production
- `LicenseKey` A valid license key for AdminUI
- `PasswordPolicy:RequireDigit` defaults to `true`
- `PasswordPolicy:RequireLowercase` defaults to `true`
- `PasswordPolicy:RequireNonAlphanumeric` defaults to `true`
- `PasswordPolicy:RequireUppercase` defaults to `true`
- `PasswordPolicy:RequiredLength` defaults to `6`
- `PasswordPolicy:RequiredUniqueChars` defaults to `1`
- `UsernamePolicy:AllowedUserNameCharacters` defaults to `abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._@+`
- `UsernamePolicy:RequireUniqueEmail` defaults to `true`
- `AuditRecordsConnectionString` The database connection string for AdminUI audits, if missing will default to the `IdentityServerConnectionString`

- `AuditRecordsCulture` Language used for generation of audit records, if missing or invalid will default to English (en-GB).

  Supported languages are: - `de` German - `zh-TW` Chinese (Traditional) - `zh-CN` Chinese (Simplified) - `es` Spanish - `fr` French - `AuditReadActions` Defaults to `true`, if `false` no audit records will be generated for read actions e.g when a user views resources though AdminUI

- `LoggingMinimumLevel` Defaults to `info`. Supported logging levels are

  - `debug`
  - `info`
  - `warning`
  - `error`
  - `critical`
- `LoggingOutputTemplate` Defaults to `[{Timestamp:dd-MM-yyyy HH:mm:ss} {Level}] {Message}{NewLine}{Exception}`. For more infomation see the serilog docs.

Previous Next