파라미터 이름의 요구 사항 및 제약 조건 이해
이 주제의 정보를 사용하면 파라미터를 생성할 때 파라미터 이름에 유효한 값을 지정하는 데 도움이 됩니다.
이 정보는 AllowedPattern, Description, KeyId, Overwrite, Type 및 Value 값에 대한 정보도 제공하는 AWS Systems Manager API Reference의 PutParameter 주제의 세부 정보를 보완합니다.
파라미터 이름에 대한 요구 사항 및 제약 조건은 다음과 같습니다.
-
대/소문자 구분: 파라미터 이름은 대/소문자를 구분합니다.
-
공백: 파라미터 이름에는 공백이 포함될 수 없습니다.
-
유효한 값: 파라미터 이름은
a-zA-Z0-9_.-과 같은 기호와 문자로 구성될 수 있습니다.또한 슬래시 문자(/)는 파라미터 이름의 계층 구조를 나타내는 데 사용됩니다. 예:
/Dev/Production/East/Project-ABC/MyParameter -
[유효한 AMI 형식(Valid AMI format)]:
String파라미터의 데이터 형식으로aws:ec2:image를 선택하는 경우 입력한 ID가 AMI ID 형식ami-12345abcdeEXAMPLE에 유효한지 검증해야 합니다. -
[정규화(Fully qualified)]: 계층에서 파라미터를 생성하거나 참조하는 경우 선행 슬래시 문자(/)를 포함합니다. 계층의 일부인 파라미터를 참조하는 경우 초기 슬래시(/)를 포함한 전체 계층 경로를 지정합니다.
-
정규화된 파라미터 이름:
MyParameter1,/MyParameter2,/Dev/Production/East/Project-ABC/MyParameter -
정규화되지 않은 파라미터 이름:
MyParameter3/L1
-
-
길이: 지정할 수 있는 파라미터 이름의 최대 길이는 1,011자입니다. 1,011자에는
arn:aws:ssm:us-east-2:111122223333:parameter/의 45자와 같이 지정한 이름 앞에 오는 ARN의 문자가 포함됩니다. -
[접두사(Prefixes)]: 파라미터 이름은 "
aws" 또는 "ssm"(대/소문자 구별 안 함)으로 시작할 수 없습니다. 예를 들어 다음 이름의 파라미터를 생성하려고 하면 예외와 함께 실패합니다.-
awsTestParameter -
SSM-testparameter -
/aws/testparam1
참고
SSM 문서, 명령 또는 스크립트에서 파라미터를 지정하면 다음 예제와 같이
ssm이 구문의 일부로 포함됩니다. 예: {{ssm:parameter-name}} and {{ ssm:parameter-name}}(예:{{ssm:MyParameter}}및{{ ssm:MyParameter }}.) -
-
[고유성(Uniqueness)]: 파라미터 이름은 AWS 리전 내에서 고유해야 합니다. 예를 들어 Systems Manager는 다음 항목이 동일한 리전에 존재하는 경우 별도의 파라미터로 취급합니다.
-
/Test/TestParam1 -
/TestParam1
다음 예도 고유한 항목입니다.
-
/Test/TestParam1/Logpath1 -
/Test/TestParam1
하지만 다음 예제는 동일한 리전에 있는 경우 고유하지 않습니다.
-
/TestParam1 -
TestParam1
-
-
계층 구조 깊이: 파라미터 계층 구조를 지정하는 경우 계층 구조에는 최대 15개의 레벨이 있을 수 있습니다. 원하는 계층 구조 레벨에 파라미터를 정의할 수 있습니다. 다음의 두 예제 모두 구조적으로 유효합니다.
-
/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에도 액세스할 수 있습니다. 사용자가 AWS Identity and Access Management(IAM)에서 파라미터/a/b 에 대한 액세스를 명시적으로 거부한 경우에도 /a 및 뷰 /a/b에 대해 GetParametersByPath API 작업을 재귀적으로 호출할 수 있습니다.