보안 암호 관리자 - AWS IoT Greengrass

보안 암호 관리자

보안 암호 관리자 구성 요소(aws.greengrass.SecretManager)는 Greengrass 코어 디바이스에 AWS Secrets Manager의 암호를 배포합니다. 이 구성 요소를 사용하면 Greengrass 코어 디바이스의 사용자 지정 구성 요소에서 암호와 같은 자격 증명을 안전하게 사용할 수 있습니다. Secrets Manager에 대한 자세한 내용은 AWS Secrets Manager 사용 설명서AWS Secrets Manager란 무엇입니까?를 참조하십시오.

사용자 지정 Greengrass 구성 요소에서 이 구성 요소의 암호에 액세스하려면 AWS IoT Device SDK에서 GetSecretValue 작업을 사용합니다. 자세한 내용은 AWS IoT Device SDK를 사용하여 Greengrass nucleus, 기타 구성 요소 및 AWS IoT Core와 통신보안 암호 값 검색 단원을 참조하세요.

이 구성 요소는 코어 디바이스의 암호를 암호화하여 자격 증명과 암호를 사용해야 할 때까지 이를 안전하게 보관합니다. 코어 디바이스의 프라이빗 키를 사용하여 암호를 암호화하고 해독합니다.

버전

이 구성 요소에는 다음과 같은 버전이 있습니다.

  • 2.2.x

  • 2.1.x

  • 2.0.x

유형

이 구성 요소는 플러그인 구성 요소(aws.greengrass.plugin)입니다. Greengrass nucleus는 이 구성 요소를 nucleus와 동일한 Java 가상 머신(JVM)에서 실행합니다. 코어 디바이스에서 이 구성 요소의 버전을 변경하면 nucleus가 다시 시작됩니다.

이 구성 요소는 Greengrass nucleus와 동일한 로그 파일을 사용합니다. 자세한 내용은 AWS IoT Greengrass 로그 모니터링 단원을 참조하십시오.

자세한 내용은 구성 요소 유형 단원을 참조하십시오.

운영 체제

이 구성 요소는 다음 운영 체제를 실행하는 코어 디바이스에 설치할 수 있습니다.

  • Linux

  • Windows

요구 사항

이 구성 요소에는 다음과 같은 요구 사항이 있습니다.

  • 다음 예제 IAM 정책에 표시된 대로 Greengrass 디바이스 역할secretsmanager:GetSecretValue 작업을 허용해야 합니다.

    { "Version": "2012-10-17", "Statement": [ { "Action": [ "secretsmanager:GetSecretValue" ], "Effect": "Allow", "Resource": [ "arn:aws:secretsmanager:region:123456789012:secret:MySecret" ] } ] }
    참고

    고객 관리형 AWS Key Management Service 키를 사용하여 암호를 암호화하는 경우에는 디바이스 역할이 kms:Decrypt 작업을 허용해야 합니다.

    Secrets Manager의 IAM 정책에 대한 자세한 내용은 AWS Secrets Manager 사용 설명서에서 다음을 참조하세요.

  • 사용자 지정 구성 요소는 aws.greengrass#GetSecretValue가 이 구성 요소에 저장한 암호를 가져올 수 있도록 허용하는 권한 부여 정책을 정의해야 합니다. 이 권한 부여 정책에서 특정 암호에 대한 구성 요소의 액세스를 제한할 수 있습니다. 자세한 내용은 보안 암호 관리자 IPC 권한 부여를 참조하세요.

  • (선택 사항) 코어 디바이스의 프라이빗 키와 인증서를 하드웨어 보안 모듈(HSM)에 저장하는 경우 HSM은 RSA 키를 지원해야 하며 프라이빗 키에는 unwrap 권한이 있어야 하고 퍼블릭 키에는 wrap 권한이 있어야 합니다.

엔드포인트 및 포트

이 구성 요소는 기본 작업에 필요한 엔드포인트 및 포트 외에 다음 엔드포인트 및 포트에 대한 아웃바운드 요청도 수행할 수 있어야 합니다. 자세한 내용은 프록시 또는 방화벽을 통해 디바이스 트래픽 허용 단원을 참조하십시오.

엔드포인트 포트 필수 설명

secretsmanager.region.amazonaws.com

443

코어 디바이스에 암호를 다운로드합니다.

의존성

구성 요소를 배포하면 AWS IoT Greengrass에서 해당 종속성의 호환 버전도 배포합니다. 즉, 구성 요소를 성공적으로 배포하려면 구성 요소 및 모든 해당 종속성에 대한 요구 사항을 충족해야 합니다. 이 섹션에는 이 구성 요소의 릴리스된 버전에 대한 종속성과 각 종속성에 대한 구성 요소 버전을 정의하는 의미 체계 버전 제약 조건이 나열되어 있습니다. AWS IoT Greengrass 콘솔에서도 각 구성 요소 버전에 대한 종속성을 볼 수 있습니다. 구성 요소 세부 정보 페이지에서 종속성 목록을 찾습니다.

2.2.1

다음 표에는 이 구성 요소의 버전 2.2.1에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.5.0 <2.14.0 소프트
2.2.0

다음 표에는 이 구성 요소의 버전 2.2.0에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.13.0 <2.14.0 소프트
2.1.7 – 2.1.8

다음 표에는 이 구성 요소의 버전 2.1.7 및 2.1.8에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.5.0 <2.13.0 소프트
2.1.6

다음 표에는 이 구성 요소의 버전 2.1.6에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.5.0 <2.12.0 소프트
2.1.5

다음 표에는 이 구성 요소의 버전 2.1.5에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.5.0 <2.11.0 소프트
2.1.4

다음 표에는 이 구성 요소의 버전 2.1.4에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.5.0 <2.10.0 소프트
2.1.3

다음 표에는 이 구성 요소의 버전 2.1.3에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.5.0 <2.9.0 소프트
2.1.2

다음 표에는 이 구성 요소의 버전 2.1.2에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.5.0 <2.8.0 소프트
2.1.1

다음 표에는 이 구성 요소의 버전 2.1.1에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.5.0 <2.7.0 소프트
2.1.0

다음 표에는 이 구성 요소의 버전 2.1.0에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.5.0 <2.6.0 소프트
2.0.9

다음 표에는 이 구성 요소의 버전 2.0.9에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.0.0 <2.5.0 소프트
2.0.8

다음 표에는 이 구성 요소의 버전 2.0.8에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.0.0 <2.4.0 소프트
2.0.7

다음 표에는 이 구성 요소의 버전 2.0.7에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.0.0 <2.3.0 소프트
2.0.6

다음 표에는 이 구성 요소의 버전 2.0.6에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.0.0 <2.2.0 소프트
2.0.4 and 2.0.5

다음 표에는 이 구성 요소의 버전 2.0.4 및 2.0.5에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.0.3 <2.1.0 소프트

구성 요소 종속성에 대한 자세한 내용은 구성 요소 레시피 참조를 참조하세요.

구성

이 구성 요소는 구성 요소를 배포할 때 사용자 지정할 수 있는 다음 구성 파라미터를 제공합니다.

periodicRefreshIntervalMin(선택 사항)

이 구성 요소가 코어 디바이스의 구성된 암호를 AWS Secrets Manager 서비스의 최신 암호 값과 동기화하는 간격(분). 이 간격이 구성되지 않은 경우 보안 암호 관리자가 구성된 암호를 주기적으로 새로 고치지 않습니다.

{ "cloudSecrets": [ { "arn": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyGreengrassSecret-abcdef" } ], "periodicRefreshIntervalMin" : 60 }
cloudSecrets

코어 디바이스에 배포할 Secrets Manager 암호의 목록. 레이블을 지정하여 배포할 각 암호의 버전을 정의할 수 있습니다. 버전을 지정하지 않으면 이 구성 요소는 스테이징 레이블 AWSCURRENT가 연결된 버전을 배포합니다. 자세한 내용은 AWS Secrets Manager 사용 설명서Staging labels를 참조하세요.

보안 암호 관리자 구성 요소는 보안 암호를 로컬에 캐시합니다. Secrets Manager에서 암호 값이 변경되는 경우 이 구성 요소는 새로운 값을 자동으로 검색하지 않습니다. 로컬 복사본을 업데이트하려면 암호에 새 레이블을 지정하고 새 레이블로 식별된 암호를 검색하도록 이 구성 요소를 구성합니다.

각 객체에는 다음 정보가 포함되어 있습니다.

arn

배포할 암호의 ARN. 암호의 ARN은 전체 ARN 또는 부분 ARN일 수 있습니다. 부분 ARN이 아닌 전체 ARN을 지정하는 것이 좋습니다. 자세한 내용은 Finding a secret from a partial ARN을 참조하세요. 다음은 전체 ARN과 부분 ARN의 예제입니다.

  • 전체 ARN: arn:aws:secretsmanager:us-east-2:111122223333:secret:SecretName-abcdef

  • 부분 ARN: arn:aws:secretsmanager:us-east-2:111122223333:secret:SecretName

labels

(선택 사항) 코어 디바이스에 배포할 암호의 버전을 식별하기 위한 레이블의 목록.

각 레이블은 문자열이어야 합니다.

예: 구성 병합 업데이트
{ "cloudSecrets": [ { "arn": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyGreengrassSecret-abcdef" } ] }

로컬 로그 파일

이 구성 요소는 Greengrass nucleus 구성요소와 동일한 로그 파일을 사용합니다.

Linux
/greengrass/v2/logs/greengrass.log
Windows
C:\greengrass\v2\logs\greengrass.log
이 구성 요소의 로그를 보려면
  • 코어 디바이스에서 다음 명령을 실행하여 실시간으로 이 구성 요소의 로그 파일을 봅니다. /greengrass/v2 또는 C:\greengrass\v2를 AWS IoT Greengrass 루트 폴더의 경로로 바꿉니다.

    Linux
    sudo tail -f /greengrass/v2/logs/greengrass.log
    Windows (PowerShell)
    Get-Content C:\greengrass\v2\logs\greengrass.log -Tail 10 -Wait

Changelog

다음 표에는 각 구성 요소 버전의 변경 사항이 설명되어 있습니다.

버전

변경

2.2.1

버그 수정 및 개선 사항

nucleus 버전 2.5.0 이상에서 보안 암호 관리자를 지원합니다.

2.2.0

새로운 기능

새로운 구성 요소 구성 키를 통해 구성된 암호를 주기적으로 새로 고치는 지원을 추가합니다.

요청당 암호를 새로 고치기 위해 GetSecretValue IPC 요청에서 새로운 요청 파라미터에 대한 지원을 추가합니다.

2.1.8

버그 수정 및 개선 사항

보안 암호 관리자가 부분 ARN을 수락하지 않는 문제를 해결합니다.

2.1.7

Greengrass nucleus 버전 2.12.0 릴리스용으로 업데이트된 버전입니다.

2.1.6

Greengrass nucleus 버전 2.11.0 릴리스용으로 업데이트된 버전입니다.

2.1.5

Greengrass nucleus 버전 2.10.0 릴리스용으로 업데이트된 버전입니다.

2.1.4

버그 수정 및 개선 사항

보안 암호 관리자가 배포되고 Greengrass nucleus가 다시 시작될 때 캐시된 보안 암호가 제거되는 문제를 해결합니다.

Greengrass nucleus 버전 2.9.0 릴리스용으로 업데이트된 버전입니다.

2.1.3

Greengrass nucleus 버전 2.8.0 릴리스용으로 업데이트된 버전입니다.

2.1.2

Greengrass nucleus 버전 2.7.0 릴리스용으로 업데이트된 버전입니다.

2.1.1

Greengrass nucleus 버전 2.6.0 릴리스용으로 업데이트된 버전입니다.

2.1.0

새로운 기능
  • 하드웨어 보안 통합에 대한 지원을 추가합니다. 보안 암호 관리자 구성 요소는 하드웨어 보안 모듈(HSM)에 저장하는 프라이빗 키를 사용하여 보안 암호를 암호화하고 해독할 수 있습니다. 자세한 내용은 하드웨어 보안 통합 단원을 참조하십시오.

버그 수정 및 개선 사항
  • Greengrass nucleus 버전 2.5.0 릴리스용으로 업데이트된 버전입니다.

2.0.9

Greengrass nucleus 버전 2.4.0 릴리스용으로 업데이트된 버전입니다.

2.0.8

Greengrass nucleus 버전 2.3.0 릴리스용으로 업데이트된 버전입니다.

2.0.7

Greengrass nucleus 버전 2.2.0 릴리스용으로 업데이트된 버전입니다.

2.0.6

Greengrass nucleus 버전 2.1.0 릴리스용으로 업데이트된 버전입니다.

2.0.5

개선 사항
  • AWS 중국 리전 및 AWS GovCloud (US) 리전에 대한 지원을 추가합니다.

2.0.4

초기 버전