#aws #serde #parameter-store

envy-store

将 AWS 参数存储中的值反序列化为类型安全的结构体

1 个不稳定版本

使用旧的 Rust 2015

0.1.0 2018年10月16日

785配置

MIT 许可证

14KB
163

envy store 构建状态 覆盖率状态 软件许可证 发布的 API 文档 主 API 文档

🏪 将 AWS 参数存储 中的值反序列化为类型安全的结构体

📦 安装

[dependencies]
envy-store = "0.1"

🤸 使用方法

Envy store 假设您正在使用 AWS 最佳实践,将相关参数存储在带前缀的层次结构下。这有助于更清晰地了解哪些参数属于哪个应用程序,并且还启用基于路径的查询 API,该 API 具有性能优势,并且是 AWS 推荐的最佳实践。

Envy store 还假设使用 AWS 默认凭证链来验证对 AWS 的请求。请不要担心,如果您以前使用过任何 AWS 工具,您可能已经配置了此凭证。您还需要确保这些凭证具有 ssm:GetParametersByPath IAM 权限

请参阅 示例应用程序文档 以获取更多信息

👭 将此 crate 视为 envy 的堂兄弟,envy 是一个用于将环境变量反序列化为类型安全结构体的 crate。

🤔 为什么选择 AWS 参数存储

环境变量是存储应用程序配置的绝佳选择,可能是最佳选择,因为它们在运行时和语言中得到广泛支持。

随着应用程序的增长,还需要考虑其他因素。

  1. 安全性。环境变量本身是秘密信息的较差传输方式,因为它们可以轻易地以纯文本格式泄露。AWS 参数存储具有内置支持,可以以加密格式存储值,从而防止未授权的访问。

  2. 管理。您应用的环境变量配置策略可能会随着时间的推移而变化并变得难以管理。它们值的确切来源可能需要一些集中化管理。存在一些系统来帮助您管理这些。AWS参数存储是一个作为服务的自托管系统,您无需自行操作这些系统。

  3. 访问控制。与加密安全相关,您可能还想限制谁可以访问配置。身份访问管理已集成到AWS参数存储中,因此您无需自行实现此功能。

💡 注意,由于AWS参数存储是一个托管服务,它有一些限制,以确保为用户提供优质的服务。您可以在这里查看这些限制列表。

Doug Tangren (softprops) 2018

依赖项

~19MB
~368K SLoC