View a markdown version of this page

파라미터 이름의 요구 사항 및 제약 조건 이해 - AWS Systems Manager

파라미터 이름의 요구 사항 및 제약 조건 이해

이 주제의 정보를 사용하면 파라미터를 생성할 때 파라미터 이름에 유효한 값을 지정하는 데 도움이 됩니다.

이 정보는 AllowedPattern, Description, KeyId, Overwrite, TypeValue 값에 대한 정보도 제공하는 AWS Systems Manager API ReferencePutParameter 주제의 세부 정보를 보완합니다.

파라미터 이름에 대한 요구 사항 및 제약 조건은 다음과 같습니다.

  • 대/소문자 구분: 파라미터 이름은 대/소문자를 구분합니다.

  • 공백: 파라미터 이름에는 공백이 포함될 수 없습니다.

  • 유효한 값: 파라미터 이름은 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 작업을 재귀적으로 호출할 수 있습니다.