terraform으로 컨테이너에 기밀 정보 전달
ECS에서 컨테이너에 기밀 정보를 전달하는 방법
태스크 정의 컨테이너 편집 환경 변수 메뉴에서 ValueFrom에 ssm 매개변수 arn을 지정하여 컨테이너에 민감한 정보를 보다 안전하게 전달할 수 있습니다.
terraform에서 valueFrom의 값을 설정하는 방법
terraform 공식 사이트의 task_definition 페이지에는 Value의 값을 설정할 수 있는 Environment에 대해서는 기재가 있지만 ValueFrom을 설정할 수 있는 파라미터의 기재는 없습니다.
하지만 AWS 콘솔 화면에서 Containedefinition 항목을 확인하면 secrets 값이 있으며 ValueFrom 항목임을 확인할 수 있습니다. 참고로 Environment는 Value이므로 ssm의 arn을 전달해도 설정하고 싶은 파라미터로 변환되지 않습니다. (자신은 이것으로 한 번 실패했습니다)
terraform 코드
복수의 값을 건네주는 경우가 많다고 생각하기 때문에, 그 때에는 이하와 같이 for를 사용하면 편합니다.
taskdefinition.tfresource "aws_ecs_task_definition" "example"{
container_definitions = jsonencode(
[
{
////////////////////省略//////////////////////////////////////
secrets = [for k, v in aws_ssm_parameter.parameter_for_ecs :
{ name = k
valueFrom = v.arn}]
////////////////////省略//////////////////////////////////////
}
]
)
}
Reference
이 문제에 관하여(terraform으로 컨테이너에 기밀 정보 전달), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ms2geki/items/08853c86d49863e6a7eb
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
terraform 공식 사이트의 task_definition 페이지에는 Value의 값을 설정할 수 있는 Environment에 대해서는 기재가 있지만 ValueFrom을 설정할 수 있는 파라미터의 기재는 없습니다.
하지만 AWS 콘솔 화면에서 Containedefinition 항목을 확인하면 secrets 값이 있으며 ValueFrom 항목임을 확인할 수 있습니다. 참고로 Environment는 Value이므로 ssm의 arn을 전달해도 설정하고 싶은 파라미터로 변환되지 않습니다. (자신은 이것으로 한 번 실패했습니다)
terraform 코드
복수의 값을 건네주는 경우가 많다고 생각하기 때문에, 그 때에는 이하와 같이 for를 사용하면 편합니다.
taskdefinition.tfresource "aws_ecs_task_definition" "example"{
container_definitions = jsonencode(
[
{
////////////////////省略//////////////////////////////////////
secrets = [for k, v in aws_ssm_parameter.parameter_for_ecs :
{ name = k
valueFrom = v.arn}]
////////////////////省略//////////////////////////////////////
}
]
)
}
Reference
이 문제에 관하여(terraform으로 컨테이너에 기밀 정보 전달), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ms2geki/items/08853c86d49863e6a7eb
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
resource "aws_ecs_task_definition" "example"{
container_definitions = jsonencode(
[
{
////////////////////省略//////////////////////////////////////
secrets = [for k, v in aws_ssm_parameter.parameter_for_ecs :
{ name = k
valueFrom = v.arn}]
////////////////////省略//////////////////////////////////////
}
]
)
}
Reference
이 문제에 관하여(terraform으로 컨테이너에 기밀 정보 전달), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ms2geki/items/08853c86d49863e6a7eb텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)