DSC 配置文档参数架构

概要

定义配置的运行时选项。

元数据

SchemaDialect: https://json-schema.org/draft/2020-12/schema
SchemaID:      https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2024/04/config/document.parameter.json
Type:          object

描述

DSC 配置文档可以包含参数,用户可以在运行时重写这些参数。 参数使机密与配置定义分离,并使用户能够编写可应用于多个上下文的配置。

参数在配置文档的 parameters 属性中定义为键值对。 该键是参数的名称,用于引用配置文档 属性 资源中的参数。 该值是定义参数的对象。

每个参数定义其数据类型。 参数还可以定义默认值、验证检查、用途说明和任意元数据。

若要引用资源实例中的参数,请使用 parameters() 配置函数

必需属性

性能

描述

参数可以使用 description 属性定义其用途和用法的简短说明。 若要在 YAML 中定义较长的解释,请使用折叠块语法或文本块语法。

Type:     string
Required: false

元数据

metadata 属性将一组键值对定义为参数的注释。 DSC 不会验证元数据。 参数可以包含此属性中的任何任意信息。

Type:     object
Required: false

类型

每个参数都必须定义其预期为 type 属性的数据类型。 DSC 在执行配置操作之前验证每个传递参数的数据类型。

secure* 数据类型指示 DSC 和集成工具不应记录或记录值。 如果安全数据类型参数用于不需要安全值的资源实例属性,则资源仍可能会记录或记录该值。 如果资源具有 DSC 未处理的独立日志记录或记录,则该值可能不安全地存储。

对密码和机密使用安全字符串。

有关数据类型的详细信息,请参阅 DSC 配置参数数据类型架构参考

Type:        string
Required:    true
ValidValues: [string, securestring, int, bool, object, secureobject, array]

defaultValue

参数可以使用 defaultValue 属性定义默认值。 如果未在运行时传递参数,DSC 将使用参数的默认值。 如果未在运行时传递参数且未定义默认值,DSC 将引发错误。 该值必须对参数的 type有效。

Required:       false
ValidJSONTypes: [string, integer, object, array, boolean]

allowedValues

参数可以通过定义 allowedValues 属性来限制参数的有效值集。 DSC 验证在运行时传递的参数,并将其定义为针对此值列表 defaultValue。 如果任一值无效,DSC 将引发错误。

此属性始终是一个数组。 如果定义了此属性,则必须在值列表中至少包含一个项。

Type:               array
Required:           false
ValidItemJSONTypes: [string, integer, object, array, boolean]

minLength

minLength 属性定义数组和字符串参数的验证选项。 字符串的长度是其字符计数。 数组的长度是其项计数。

如果参数的默认值或运行时值短于此属性,DSC 将引发错误。 如果为 typearraystringsecurestring的参数定义此属性,DSC 将引发错误。

如果使用 maxLength 属性定义此属性,则此属性必须小于 maxLength。 如果不是,DSC 将引发错误。

Type:         int
Required:     false
MinimumValue: 0

maxLength

maxLength 属性定义数组和字符串参数的验证选项。 字符串的长度是其字符计数。 数组的长度是其项计数。

如果参数的默认值或运行时值长于此属性,DSC 将引发错误。 如果为 typearraystringsecurestring的参数定义此属性,DSC 将引发错误。

如果使用 minLength 属性定义此属性,则此属性必须大于 minLength。 如果不是,DSC 将引发错误。

Type:         int
Required:     false
MinimumValue: 0

minValue

minValue 属性定义整数参数的验证选项。 如果参数的默认值或运行时值小于此属性,DSC 将引发错误。 如果为 typeint的参数定义此属性,DSC 将引发错误。

如果使用 maxValue 属性定义此属性,则此属性必须小于 maxValue。 如果不是,DSC 将引发错误。

Type:     int
Required: false

maxValue

maxValue 属性定义整数参数的验证选项。 如果参数的默认值或运行时值大于此属性,DSC 将引发错误。 如果为 typeint的参数定义此属性,DSC 将引发错误。

如果使用 minValue 属性定义此属性,则此属性必须大于 minValue。 如果不是,DSC 将引发错误。

Type:     int
Required: false