Ir para o conteúdo

Configuração de Inicialização

Introdução

Esta página descreve App Builder parâmetros e métodos de configuração de inicialização do 's. Cada seção é o esquema de nível superior para o formulário JSON (appsettings.json) método de configuração.

Quando App Builder inicia, ele obtém seus valores de configuração de qualquer uma das seguintes fontes, em ordem de precedência:

  1. Variáveis de ambiente do sistema.
  2. Um ASP.NET Core appsettings.jsonArquivo JSON.
  3. Um connection.xml arquivo XML com um <ConnectionInfo> elemento.

As variáveis de ambiente do sistema são os esquemas JSON, subesquemas (se houver) e chaves separadas por dois caracteres de sublinhado. Não há padrão appsettings.json arquivo. Você pode criar um no diretório de instalação usando os exemplos em C:\inetpub\wwwroot\App Builder\ (Windows) ou o samples subdiretório (Linux), muitos dos quais são reproduzidos nesta página.

Como exemplo, os seguintes métodos de configuração fornecem valores equivalentes:

Environment variables
ConnectionInfo__DatabaseType=SQLServer
ConnectionInfo__HostName=localhost
ConnectionInfo__DatabaseName=App Builder
ConnectionInfo__UserName=vinyl
ConnectionInfo__Password=P@5$w0rD
appsettings.json file
{
  "ConnectionInfo": {
    "DatabaseType": "SQLServer",
    "HostName": "localhost",
    "DatabaseName": "App Builder",
    "UserName": "vinyl",
    "Password": "P@5$w0rD"
  }
}
connection.xml file
<ConnectionInfo DatabaseType="MySQL" HostName="localhost" DatabaseName="App Builder" UserName="vinyl" Password="P@5$w0rD"/>

BackgroundService

Esquema Chave Tipo de valor Descrição
BackgroundService DisableScheduler Booleano Definido para true para desabilitar o background services scheduler.

Exemplos

JSON
{
  "BackgroundService": {
    "DisableScheduler": true
  }
}
Environment variable
BackgroundService__DisableScheduler=true

ConnectionInfo

Esquema Chave Tipo de valor Descrição
ConnectionInfo DatabaseType String Tipo de banco de dados: SQLServer, MySQL, PostgreSql
HostName String Nome do hospedar do servidor de banco de dados ou endereço IP.
Port Inteiro Número da porta do servidor de banco de dados.
InstanceName String Nome da instância do servidor de banco de dados.
TenantName String Para uso interno.
DatabaseName Corda App Builder nome do banco de dados.
UserName Corda App Builder nome de usuário do banco de dados.
Password Corda App Builder senha do banco de dados.
ConnectionTimeout Inteiro Tempo limite de conexão com o banco de dados (segundos).
CommandTimeout Inteiro Tempo limite do comando do banco de dados (segundos).
MaxPoolSize Inteiro Número máximo de conexões de banco de dados no pool.
Advanced Matriz de objetos Pares de chave/valor de string de conexão adicionais.

Exemplos

{
  "ConnectionInfo": {
    "DatabaseType": "SQLServer",
    "HostName": "localhost",
    "DatabaseName": "App Builder",
    "UserName": "App Builder",
    "Password": "password"
  }
}

DataEncryption

O DataEncryption seção configura o armazenamento e a criptografia da Chave de Criptografia de Dados (DEK).

Esquema Chave Tipo de valor Descrição
DataEncryption Certificate String Certificado X.509 codificado em Base64, PKCS#12 (PFX).
CertificatePassword String Senha do certificado X.509.
CertificateThumbprint String Impressão digital do certificado X.509.
Directory String Caminho do diretório do sistema de arquivos.
Import String Políticas de armazenamento e criptografia para importação de DEKs.
KeyEncryption Corda Estratégia de criptografia de dados:
  • Certificate: Política de criptografia de certificado X.509.
  • Kms: Política de criptografia de chave do AWS KMS.
  • None: Nenhuma política de criptografia de chave. As chaves são armazenadas em texto simples.
  • Null: Política de criptografia de chave de passagem. As chaves são armazenadas em texto simples.
KeyStorage Corda Local de armazenamento da chave de criptografia de dados:
  • Database: {{nm.ab}} banco de dados.
  • FileSystem: Sistema de arquivos.
  • ParameterStore: Armazenamento de parâmetros do AWS System Manager.
  • S3: Balde S3.
KmsKeyId Cadeia de caracteres ARN da chave AWS KMS.
ParameterNamePrefix String Prefixo do nome do parâmetro do AWS System Manager Parameter Store.
S3BucketEndpoint Cadeia de caracteres endpoint do bucket S3.
S3KeyPrefix String Prefixo da chave S3.

Exemplos

{
  "DataEncryption": {
    "KeyEncryption": "Certificate",
    "CertificateThumbprint": "a909502dd82ae41433e6f83886b00d4277a32a7b",
    "Certificate": "{base64-pfx-data}",
    "CertificatePassword": "your-certificate-password"
  }
}
{
  "DataEncryption": {
    "KeyEncryption": "Kms",
    "KmsKeyId": "{kms-key-arn}"
  }
}
{
  "DataEncryption": {
    "KeyEncryption": "None"
  }
}
{
  "DataEncryption": {
    "KeyEncryption": "Null"
  }
}
{
  "DataEncryption": {
    "KeyStorage": "Database"
  }
}
{
  "DataEncryption": {
    "KeyStorage": "FileSystem",
    "Directory": "C:\\Path\\To\\Keys"
  }
}
{
  "DataEncryption": {
    "KeyStorage": "ParameterStore",
    "ParameterNamePrefix": "/production"
  }
}
{
  "DataEncryption": {
    "KeyStorage": "S3",
    "S3BucketEndpoint": "https://{bucket}.s3{-aws-region}.amazonaws.com",
    "S3KeyPrefix": "production"
  }
}

Kestrel

O Kestrel seção configura o servidor web Kestrel.

Esquema Chave Tipo de valor Descrição
Kestrel Limits MaxRequestBodySize Veja o Kestrel documentation para uma lista de opções suportadas.

License

O License seção especifica o App Builder chave de licença.

Esquema Chave Tipo de valor Descrição
License LicenseKey String Uma versão codificada em base64 do seu vinyl.lic arquivo.

Exemplos

{
  "License": {
    "LicenseKey": "TWF1cmlzIGFjIGZlbGlzIHZlbCB2ZWxpdCB0cmlzdGlxdWUgaW1wZXJkaWV0LiAgTnVsbGFtIGV1IGFudGUgdmVsIGVzdCBjb252YWxsaXMgZGlnbmlzc2ltLiAgRnVzY2Ugc3VzY2lwaXQsIHdpc2kgbmVjIGZhY2lsaXNpcyBmYWNpbGlzaXMsIGVzdCBkdWkgZmVybWVudHVtIGxlbywgcXVpcyB0ZW1wb3IgbGlndWxhIGVyYXQgcXVpcyBvZGlvLiAgTnVuYyBwb3J0YSB2dWxwdXRhdGUgdGVsbHVzLiAgTnVuYyBydXRydW0gdHVycGlzIHNlZCBwZWRlLiAgU2VkIGJpYmVuZHVtLiAgQWxpcXVhbSBwb3N1ZXJlLiAgTnVuYyBhbGlxdWV0LCBhdWd1ZSBuZWMgYWRpcGlzY2luZyBpbnRlcmR1bSwgbGFjdXMgdGVsbHVzIG1hbGVzdWFkYSBtYXNzYSwgcXVpcyB2YXJpdXMgbWkgcHVydXMgbm9uIG9kaW8uICBQZWxsZW50ZXNxdWUgY29uZGltZW50dW0sIG1hZ25hIHV0IHN1c2NpcGl0IGhlbmRyZXJpdCwgaXBzdW0gYXVndWUgb3JuYXJlIG51bGxhLCBub24gbHVjdHVzIGRpYW0gbmVxdWUgc2l0IGFtZXQgdXJuYS4gIEN1cmFiaXR1ciB2dWxwdXRhdGUgdmVzdGlidWx1bSBsb3JlbS4gIEZ1c2NlIHNhZ2l0dGlzLCBsaWJlcm8gbm9uIG1vbGVzdGllIG1vbGxpcywgbWFnbmEgb3JjaSB1bHRyaWNlcyBkb2xvciwgYXQgdnVscHV0YXRlIG5lcXVlIG51bGxhIGxhY2luaWEgZXJvcy4gIFNlZCBpZCBsaWd1bGEgcXVpcyBlc3QgY29udmFsbGlzIHRlbXBvci4gIEN1cmFiaXR1ciBsYWNpbmlhIHB1bHZpbmFyIG5pYmguICBOYW0gYSBzYXBpZW4uCg=="
  }
}

PostgreSQL

Esquema Chave Tipo de valor Descrição
PostgreSQL Logging
OpenTelemetry

ReverseProxy

O ReverseProxy seção configura um proxy reverso.

Esquema Chave Tipo de valor Descrição
ReverseProxy ForwardedClientIpHeader String cabeçalho HTTP que encaminha o endereço IP original do cliente.
ForwardedSchemeHeader String cabeçalho HTTP que encaminha o esquema original.
ForwardedHostHeader String cabeçalho HTTP que encaminha o hospedar original e a porta opcional.
ForwardedPortHeader String cabeçalho HTTP que encaminha a porta original.

Exemplos

{
  "ReverseProxy": {
    "ForwardedClientIpHeader": "X-Forwarded-For",
    "ForwardedSchemeHeader": "X-Forwarded-Proto",
    "ForwardedHostHeader": "X-Forwarded-Host"
  }
}
{
  "ReverseProxy": {
    "ForwardedClientIpHeader": "X-Forwarded-For",
    "ForwardedSchemeHeader": "X-Forwarded-Proto",
    "ForwardedPortHeader": "X-Forwarded-Port"
  }
}

Security

O Security seção configura App Builder contas de usuário e provedores de segurança.

Esquema Chave Tipo de valor Descrição
Security Administrator Esquema Opções de conta de administrador.
InvitationUrl String Para uso interno.
LocalAuthentication Esquema Opções do provedor de segurança do usuário local.
Provider String Codificado em Base64 provedor de segurança configuração.
Providers Matriz de strings configuração do provedor de segurança codificado em base64.
AuthenticationExpiry Inteiro Expiração do token de autenticação, em minutos.
Esquema Chave Tipo de valor Descrição
Administrator AllowLocalAuthentication Boolean Habilita autenticação de usuário local.
ChangePasswordOnLogin Boolean Força o usuário a alterar a senha no login.
DefaultPassword String Senha padrão. Aplicado uma vez na instalação.
Password String Senha. Aplicado sempre que o sistema inicia.
Esquema Chave Tipo de valor Descrição
LocalAuthentication Enabled Boolean Habilita o provedor de segurança.
ShowOnLoginForm Boolean Determina se o provedor de autenticação do usuário aparece no formulário de login.

Exemplos

{
  "Security": {
    "Administrator": {
      "Password": "s3cr3t",
      "ChangePasswordOnLogin": false
    },
    "LocalAuthentication": {
      "ShowOnLoginForm": false
    },
    "Provider": "Tm90aGluZyBjYW4gY29tZSBvZiBub3RoaW5nLCBzcGVhayBhZ2Fpbi4="
  }
}

Scripting

O Scripting seção configura App Builder SDK de script C# do 's.

Esquema Chave Tipo de valor Descrição
Scripting Enabled Boolean Habilita script em C#.

Exemplos

{
  "Scripting": {
    "Enabled": false
  }
}

SharedState

O SharedState seção configura o serviço de estado compartilhado que suporta implantações multi-servidor.

Esquema Chave Tipo de valor Descrição
SharedState Provider Corda Provedor de estado compartilhado:
  • InProcess: O estado é armazenado em processo para implantações de servidor único.
  • Redis: O estado é armazenado no Redis para implantações em vários servidores.
RedisConnectionString Cadeia de caracteres Cadeia de caracteres de conexão do Redis.
RedisPrefix String Prefixo da chave Redis.

Exemplo

{
  "SharedState": {
    "Provider": "Redis",
    "RedisConnectionString": "localhost:6379"
  }
}

SignalR

O SignalR seção configura comunicações cliente-servidor.

Esquema Chave Tipo de valor Descrição
SignalR LongPollingTimeout String Tempo limite de pesquisa longo, especificado usando um TimeSpan formato. Exemplo: 00:00:30.
Transports Corda Lista delimitada por vírgulas de tipos de transporte HTTP:
  • LongPolling: Longa votação.
  • None: Sem transportes. NÃO SUPORTADO.
  • ServerSentEvents: Eventos enviados pelo servidor.
  • WebSockets: WebSockets
.

Exemplos

{
  "SignalR": {
    "Transports": "WebSockets,LongPolling",
    "LongPollingTimeout": "00:00:30"
  }
}

Site

O Site seção configura o App Builder endereço do site e aliases conhecidos.

Esquema Chave Tipo de valor Descrição
Site Url String URL do site canônico.
Default Boolean Tratar como o site padrão.
Redirect Boolean Redirecionar clientes para a URL do site.
RedirectIfHeaderExists String cabeçalho HTTP que indica que os clientes devem ser redirecionados.
AllowCrossOrigin Boolean Permitir solicitações de origem cruzada.
Aliases Matriz de strings Aliases de sites.

Exemplos

{
  "Site": {
    "Url": "https://example.com/App Builder",
    "Default": true,
    "Redirect": true,
    "RedirectIfHeaderExists": "X-Forwarded-For",
    "Aliases": [
      {
        "Url": "https://vinyl.example.com"
      }
    ]
  }
}

Sku

Esquema Chave Tipo de valor Descrição
Sku Sku Sequência de caracteres

Tls

O Tls seção configura o suporte ao protocolo TLS.

Esquema Chave Tipo de valor Descrição
Tls SecurityProtocol Corda Lista delimitada por vírgulas de protocolos de segurança:
  • Tls12:TLS 1.2
  • Tls13:TLS 1.3

Exemplos

{
  "Tls": {
    "SecurityProtocol": "Tls,Tls11,Tls12"
  }
}

UrlRewrite

O UrlRewrite seção configura o suporte à reescrita de URL.

Esquema Chave Tipo de valor Descrição
UrlRewrite OriginalUrlHeader String cabeçalho HTTP que encaminha a URL original.

Exemplos

{
  "UrlRewrite": {
    "OriginalUrlHeader": "X-Original-URL"
  }
}