보안 암호 관리자
보안 암호 관리자 구성 요소(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
권한이 있어야 합니다.
엔드포인트 및 포트
이 구성 요소는 기본 작업에 필요한 엔드포인트 및 포트 외에 다음 엔드포인트 및 포트에 대한 아웃바운드 요청도 수행할 수 있어야 합니다. 자세한 내용은 프록시 또는 방화벽을 통해 디바이스 트래픽 허용 단원을 참조하십시오.
엔드포인트 | 포트 | 필수 | 설명 |
---|---|---|---|
|
443 | 예 |
코어 디바이스에 암호를 다운로드합니다. |
의존성
구성 요소를 배포하면 AWS IoT Greengrass에서 해당 종속성의 호환 버전도 배포합니다. 즉, 구성 요소를 성공적으로 배포하려면 구성 요소 및 모든 해당 종속성에 대한 요구 사항을 충족해야 합니다. 이 섹션에는 이 구성 요소의 릴리스된 버전에 대한 종속성과 각 종속성에 대한 구성 요소 버전을 정의하는 의미 체계 버전 제약 조건이 나열되어 있습니다. AWS IoT Greengrass 콘솔
구성 요소 종속성에 대한 자세한 내용은 구성 요소 레시피 참조를 참조하세요.
구성
이 구성 요소는 구성 요소를 배포할 때 사용자 지정할 수 있는 다음 구성 파라미터를 제공합니다.
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 구성요소와 동일한 로그 파일을 사용합니다.
이 구성 요소의 로그를 보려면
-
코어 디바이스에서 다음 명령을 실행하여 실시간으로 이 구성 요소의 로그 파일을 봅니다.
또는/greengrass/v2
C:\greengrass\v2
를 AWS IoT Greengrass 루트 폴더의 경로로 바꿉니다.
Changelog
다음 표에는 각 구성 요소 버전의 변경 사항이 설명되어 있습니다.
버전 |
변경 |
---|---|
2.2.1 |
|
2.2.0 |
|
2.1.8 |
|
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 |
|
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 |
|
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 |
|
2.0.4 |
초기 버전 |