|
本文档采用自动化机器翻译技术翻译。 尽管我们力求提供准确的译文,但不对翻译内容的完整性、准确性或可靠性作出任何保证。 若出现任何内容不一致情况,请以原始 英文 版本为准,且原始英文版本为权威文本。 |
|
这是尚未发布的文档。 Admission Controller 1.34-dev. |
策略设置
策略行为并不是固定的,您可以通过在运行时向策略提供配置细节来进行配置。策略作者可以自由地定义策略设置的结构。
SUSE Security Admission Controller负责将策略设置序列化为JSON,并在每次调用时将其提供给策略。
设置验证
策略应验证用户提供的设置以检查其正确性。
每个策略注册一个名为`validate_settings`的waPC函数,该函数验证策略设置。
`validate_settings`函数接收用户提供的设置的JSON表示作为输入。该函数验证这些设置,并作为响应返回一个`SettingsValidationResponse`对象。
`SettingsValidationResponse`对象的结构是:
{
# mandatory
"valid": <boolean>,
# optional, ignored if accepted - recommended for rejections
"message": <string>,
}
如果用户提供的设置是`valid`,`validate_settings`将忽略`message`内容。否则,`validate_settings`将显示`message`内容。
|
Admission Controller的https://github.com/chimera-kube/policy-server[policy-server]在启动时验证用户提供的所有策略设置。如果至少有一个策略接收到错误的配置参数,policy-server将立即退出并显示错误。 |
示例
作为一个例子,考虑https://github.com/kubewarden/psp-capabilities[psp-capabilities]策略,其配置格式如下:
allowed_capabilities:
- CHOWN
required_drop_capabilities:
- NET_ADMIN
default_add_capabilities:
- KILL
`validate_settings`函数接收以下JSON文档作为输入:
{
"allowed_capabilities": [
"CHOWN"
],
"required_drop_capabilities": [
"NET_ADMIN"
],
"default_add_capabilities": [
"KILL"
]
}