本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
秘密经理
密钥管理器组件 (aws.greengrass.SecretManager
) 将机密部署 AWS Secrets Manager
到 Greengrass 核心设备。使用此组件可在 Greengrass 核心设备的自定义组件中安全地使用密码(如密码)。有关 Secrets Manager 的更多信息,请参阅 AWS Secrets Manager 用户指南中的什么是 AWS Secrets Manager?。
要在您的自定义 Greengrass 组件中访问此组件的秘密,请使用中的操作。GetSecretValue AWS IoT Device SDK有关更多信息,请参阅使用 AWS IoT Device SDK 与 Greengrass 原子核、其他组件进行通信 AWS IoT Core 和检索秘密值。
此组件对核心设备上的机密进行加密,以确保您的凭据和密码的安全,直到您需要使用它们为止。它使用核心设备的私钥来加密和解密机密。
版本
此组件有以下版本:
-
2.2.x
-
2.1.x
-
2.0.x
类型
此组件是一个插件组件 (aws.greengrass.plugin
)。Greengrass 核心在与核心相同的 Java 虚拟机 () 中运行此组件。JVM当您在核心设备上更改此组件的版本时,nucleus 会重新启动。
该组件使用与 Greengrass 核相同的日志文件。有关更多信息,请参阅 监控AWS IoT Greengrass日志。
有关更多信息,请参阅 组件类型。
操作系统
此组件可以安装在运行以下操作系统的核心设备上:
Linux
Windows
要求
此组件具有以下要求:
-
Greengrass 设备角色必须允许
secretsmanager:GetSecretValue
该操作,如以下示例策略所示。IAM{ "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
权限。
端点和端口
除了基本操作所需的端点和端口外,此组件还必须能够对以下端点和端口执行出站请求。有关更多信息,请参阅 允许设备流量通过代理或防火墙。
Endpoint | 端口 | 必需 | 描述 |
---|---|---|---|
|
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 用户指南》中的暂存标签。密钥管理器组件在本地缓存机密。如果 Secrets Manager 中的密钥值发生变化,则此组件不会自动检索新值。要更新本地副本,请为密钥指定一个新标签,然后将此组件配置为检索由新标签标识的密钥。
每个对象都包含以下信息:
arn
-
部署ARN的秘诀。秘密可以是完整的,ARN也可以是部分的ARN。ARN我们建议您指定完整ARN而不是部分ARN。有关更多信息,请参阅从局部中查找机密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 根文件夹的路径。
更改日志
下表描述了该组件的每个版本中的更改。
版本 |
更改 |
---|---|
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 |
初始版本。 |