在 InfluxDB Cloud 浏览器中管理密钥

导航至

直接将密码和 API 密钥嵌入到您编写的代码中是一种不良做法。 当然,每个人都知道这一点,但我首先承认这种情况仍然时有发生。 在源代码控制和共享代码库的世界中,泄露密码可能是一个巨大的问题,会浪费您团队的时间和金钱。

当然,如今许多公司利用密钥管理系统来降低此类事件发生的可能性。

InfluxDB Cloud 附带一个内置的密钥管理系统,该系统由行业领先的 Vault 密钥存储提供支持,为每位客户提供安全的密钥存储。 用户可以使用我们完全文档化的 API 存储密钥、列出其密钥和删除密钥。

现在,该功能已直接在 InfluxDB Cloud Web 界面中提供,以便您可以快速为您的 Flux 脚本添加或更新密钥,而无需使用 API。

influxdb flux secrets

存储密钥的用例

用户通常使用 InfluxDB Cloud 密钥存储来跟踪敏感的连接信息,例如密码、第三方 API 密钥以及编写 Flux 脚本时的其他安全凭据。

例如,假设您需要将 Snowflake 中存储的数据导入 InfluxDB Cloud。 Flux 有一个 sql.from 函数,允许您连接到许多流行的 SQL 数据库,包括 Snowflake。 这样做时,您需要提供该连接的凭据。 这些凭据应存储在密钥存储中,并由 Flux 脚本直接获取。

import "sql"
import "influxdata/influxdb/secrets"

username = secrets.get(key: "SNOWFLAKE_USER")
password = secrets.get(key: "SNOWFLAKE_PASS")
account = secrets.get(key: "SNOWFLAKE_ACCT")

sql.from(
  driverName: "snowflake",
  dataSourceName: "${username}:${password}@${account}/db/exampleschema?warehouse=wh",
  query: "SELECT * FROM example_table"
)

有关使用 Flux 密钥包的示例,请参阅我们的文档

添加新密钥

要在浏览器中访问密钥管理页面,只需登录您的 InfluxDB Cloud 帐户,然后导航到设置页面(左侧导航菜单中的齿轮图标),并查找“密钥”选项卡。 从那里,添加密钥就像单击“添加密钥”按钮一样简单。

add secret influxdb

请记住,密钥一旦创建,就无法再次查看或更新。 为了更改值,您需要删除并创建一个新密钥。 任何使用该密钥的 Flux 脚本也需要使用新密钥进行更新。

然后,您可以在我们的 InfluxDB Cloud 平台上运行的任何 Flux 脚本或任务中利用该密钥。

结论

InfluxDB 的主要目标之一是默认安全,我们的目标是为开发人员提供正确的工具,以确保他们编写的代码以及在我们的平台上构建的应用程序也能安全。

随着我们不断前进,我们正在寻找方法,以便您可以从平台中编写 Flux 代码的任何位置轻松访问这些密钥。

如果您有任何问题或反馈,请加入我们的 社区 Slack 工作区GitHub