AWS Systems Manager
用户指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

参数名称的要求和约束

使用本主题中的信息可在您创建参数时帮助您为参数名称指定有效值。

这些信息对 AWS Systems Manager API Reference 中的主题 PutParameter 中的详细信息进行了补充,该主题还提供了有关 AllowedPatternDescriptionKeyIdOverwriteTypeValue 值的信息。

参数名称的要求和约束包括:

  • 区分大小写:参数名称区分大小写。

  • 空格:参数名称不能包含空格。

  • 有效字符:参数名称只能包含以下符号和字母:a-zA-Z0-9_.-/

  • 长度:您可指定的全限定参数名称的最大长度为 1011 个字符。(系统中参数名称字段的最大存储长度为 2048 个字符。但是,此长度包括不属于该名称的其他系统属性的容量。)

  • 前缀:参数名称不得 以“aws”或“ssm”(不区分大小写)作为前缀。例如,尝试使用以下名称创建参数将失败,并引发异常:

    • awsTestParameter

    • SSM-testparameter

    • /aws/testparam1

    注意

    在 SSM 文档、命令或脚本中指定参数时,请在语法中包含 ssm,如以下示例中所示。请注意,括号之间没有空格。

    • 有效:{{ssm:parameter_name}} 和 {{ ssm:parameter_name }},例如 {{ssm:addUsers}}{{ssm:addUsers }}

    • 无效: {{ssm:ssmAddUsers}}

  • 唯一性:参数名称必须在 AWS 区域中是唯一的。例如,Systems Manager 将以下参数视为不同的参数 (如果它们存在于同一区域中):

    • /Test/TestParam1

    • /TestParam1

    以下示例也是唯一的:

    • /Test/TestParam1/Logpath1

    • /Test/TestParam1

    不过,以下示例(如果在同一区域中)不是唯一的:

    • /TestParam1

    • TestParam1

  • 层次结构深度:如果指定参数层次结构,则层次结构可以具有最多十五个级别的深度。可以在该层次结构的任何级别定义参数。以下两个示例的结构都是有效的:

    • /Level-1/L2/L3/L4/L5/L6/L7/L8/L9/L10/L11/L12/L13/L14/parameter-name

    • parameter-name

    尝试创建以下参数将失败并引发 HierarchyLevelLimitExceededException 异常:

    • /Level-1/L2/L3/L4/L5/L6/L7/L8/L9/L10/L11/L12/L13/L14/L15/L16/parameter-name

重要

如果用户有权访问某个路径,则该用户可以访问该路径的所有级别。例如,如果某个用户有权访问路径 /a,则该用户也可以访问 /a/b。即使用户在 IAM 中已被显式拒绝访问参数 /a/b,他们仍可以以递归方式调用 /aGetParametersByPath API 操作和查看 /a/b