上个月,我们使用 AmplifyJS 开发了一款 Ionic 应用。它基本上在 AWS Appsync API 上运行。
到目前为止,这是一次不愉快的旅程,尤其是 DynamoDB 表之间的@connections。
例如,您想将表格 Team > Members > Tasks 连接在一起。这可能不是正确的做法,因为我们基本上是在 noSQL 数据库之上构建 SQL 结构。
无论如何,我们设法让它与多个@connections一起工作: https://aws-amplify.github.io/docs/cli-toolchain/graphql#connection
问题是,我们仅由两名开发人员进行一个月的测试,就已经面临 50k+ AWS 密钥管理服务请求。
它是否对每个数据库查询都请求一个密钥?
答案1
转到 AWS 控制台上的 DynamoDB 表,这些表由 CLI 作为 GraphQL API 的一部分提供。在“概览”选项卡中,选择“管理加密”选项,然后在打开的模式中选择“默认”选项。
这将禁用自定义 KMS 密钥的使用,并可能解决成本问题,同时仍保持服务器端加密完好无损,而无需使用自定义 KMS 密钥。此值不会在下一次“amplify push”时被覆盖。