自定义 Workflow Manager 配置文件

需要 Workflow Manager 许可。

管理员可以在 workflowManager.conf 文件中添加和管理属性,以为 ArcGIS Workflow Manager Server 和 web 应用程序配置自定义设置。在安装 Workflow Manager 后,配置文件位于 ~/.esri/WorkflowManager/<hostname>/workflowManager.conf 中。

注:

如果 ArcGIS Enterprise 系统包含多个带 Workflow Manager ServerArcGIS Server 计算机,则必须在每个 ArcGIS Server 实例中重复对配置文件进行的更改。

管理参数

可以修改以下参数来定义自定义属性。

注:

如果要升级 Workflow Manager,则某些参数可能不存在,必须手动添加到配置文件

参数描述示例格式

LogRetentionPeriod

控制清理任务在 Web 应用程序中删除日志消息的频率。 该属性默认设置为 7 天。

此属性不会改变删除 Workflow Manager Server 日志的频率。

LogRetentionPeriod = 7 days

allowUnsecureWebhooks

控制传入 webhook 是否需要标头安全。 从 11.2 开始,此属性默认设置为 false

注:

如果您要使用 ArcGIS Survey123 webhookWorkflow Manager 中创建作业,则必须将此属性设置为 true

警告:

可通过将此属性设置为 true,允许具有 webhook URL 的所有人在 web 应用程序中创建作业。

allowUnsecureWebhooks = false

webRequestAllowLocal

控制“发送 Web 请求”步骤是否允许将请求发送到本地主机。

webRequestAllowlocal = false

webRequestAllowedProtocols

控制在“发送 Web 请求”步骤期间允许的协议。

webRequestAllowedProtocols = ["https"]

webRequestBlockedHosts

控制在“发送 Web 请求”步骤期间阻止哪些主机接收 Web 请求。

webRequestBlockedHosts = ["169.254.169.254/32", "127.0.0.1/32", "1/128"]

webRequestBlockedPorts

控制在“发送 Web 请求”步骤期间阻止哪些端口。

webRequestBlockedPorts = ["80", "81"]

Arcade 表达式匹配的地理处理工具名称

如果地理处理工具的名称与 ArcGIS Arcade 表达式的名称相匹配(例如缓冲或裁剪),则取消注释 allowedList 并添加不应作为 Arcade 表达式进行评估的工具名称。 或者,您可以在运行 Pro GP 工具步骤配置中将工具名称包含在单引号或双引号中。

配置高可用性部署

对于高度可用Workflow Manager 部署,每个计算机必须配置为启用高可用性。

注:

将装有 Workflow Manager ServerArcGIS Server 计算机与 ArcGIS Enterprise 门户联合时,请将管理 URL 设置为可用于与站点中所有服务器通信的 URL。

  1. 在文本编辑器中打开 ~/.esri/WorkflowManager/<hostname>/workflowManager.conf 文件。
  2. 取消注释 workflowManager.conf 文件中的以下几行:
    • play.modules.disabled += "esri.workflow.utils.inject.LocalDataProvider"
    • play.modules.enabled += "esri.workflow.utils.inject.DistributedDataProvider"

    如果 workflowManager.conf 文件中不存在这些行,请将它们添加到文件底部。

  3. 保存文件。
  4. 重新启动 ArcGIS Workflow Manager Server 服务。
  5. 对每台 Workflow Manager Server 计算机重复这些步骤。

    Workflow Manager Server 现已配置高可用性。

配置文件示例

在您的系统中,可以使用或参考以下 Workflow Manager 配置文件示例:

#########################################################
# Workflow Manager configuration settings
# Set any user-defined configuration options in this file
#########################################################

include "application.conf"

wmx {
  arcadeExpressionTimeout = 10 seconds

  featureBatchSize = 100

  webRequestTimeout = 1 minute

  webhookTokenExpiration = 30 minutes

  webhookMaxAttachmentSize = 10m

  logRetentionPeriod = 7 days

  jobAutoExecutionLimit = 25

  // Note: Using unsecured webhooks will allow anyone that can access the webhook URL to create jobs
  allowUnsecureWebhooks = false

//  webRequestAllowLocal = true
//  webRequestAllowedProtocols = ["http", "https"]
//  webRequestBlockedHosts = ["169.254.169.254/32"]
//  webRequestBlockedPorts = []
//  webRequestRestrictedHeaders = ["Content-Length", "Content-Location", "Forwarded", "From", "Host", "Referer", "Referer-Policy", "User-Agent", "Via", "X-Forwarded-For", "X-Forwarded-Host", "X-Forwarded-Proto", "Strict-Transport-Security", "X-Frame-Options", "X-XSS-Protection", "X-Content-Type-Options", "Access-Control-Allow-Origin", "Content-Security-Policy", "Origin"]
}

// Uncomment to modify the allowedList of GP Tool names that are also Arcade functions
// wmx.steps.proGP {
//   allowedList = []
// }

// The following settings can be used to modify security settings

// Uncomment this to modify the allowed cipher suites. Can use same options as ArcGIS Server
//akka.ssl-config.enabledCipherSuites = [
//  "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256",
//  "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
//  "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384",
//  "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384"
//  ]

// Uncomment this to modify the allowed TLS protocols
//akka.ssl-config.enabledProtocols = [
//  "TLSv1.2",
//  // "TLSv1.1", // Deprecated - only use if absolutely required
//  // "TLSv1" // Deprecated - only use if absolutely required
//]

// Uncomment this to enable CORS
//play.filters.enabled += "play.filters.cors.CORSFilter"
//play.filters.cors {
//  pathPrefixes = ["/workflow"]
//  allowedOrigins = ["https://www.example.com", ...]
//  allowedHttpMethods = ["GET", "POST", "PUT", "DELETE", "HEAD", "OPTIONS"]
//  allowedHttpHeaders = ["Accept", "Accept-Language", "Content-Language", "Content-Type"]
//  preflightMaxAge = 1 day
//}

// Uncomment the following lines to configure site to support multi-machine deployments
// play.modules.disabled += "esri.workflow.utils.inject.LocalDataProvider"
// play.modules.enabled += "esri.workflow.utils.inject.DistributedDataProvider"

// This can be used to change the maximum file size for attachments.
// If file sizes larger than 500MB are required, the hosted feature layer for the workflow item will also
// need to be updated in addition to this parameter. See the Workflow Manager documentation for more information.
// play.http.parser.maxDiskBuffer = 500m

// This can be used to change the max allowable POST body size
//play.http.parser.maxMemoryBuffer = 2m

相关主题