【问题标题】:Influxdb authentication does not work in WindowsInfluxdb 身份验证在 Windows 中不起作用
【发布时间】:2020-02-14 10:12:20
【问题描述】:

我在 Windows 中下载了 InfluxDB v1.7.10。
我编辑了 influxdb.conf 以启用 httpauth

[http]
  # Determines whether HTTP endpoint is enabled.
   enabled = true

  # Determines whether the Flux query endpoint is enabled.
  # flux-enabled = false

  # Determines whether the Flux query logging is enabled.
  # flux-log-enabled = false

  # The bind address used by the HTTP service.
   bind-address = ":8086"

  # Determines whether user authentication is enabled over HTTP/HTTPS.
   auth-enabled = true

启动influxd.exe后,服务启动成功。 但是,身份验证不起作用,因为我仍然可以在没有任何用户令牌(即用户名和密码)的情况下从 influxDB 查询信息。
我们可以观察到日志仍然告诉 auth 没有启用:

2020-02-14T09:53:22.371821Z     info    Starting HTTP service   {"log_id": "0KxmiPwl000", "service": "httpd", "authentication": false}

我还在Ubuntu18.04上安装了influxDB v1.7.10,按照上面的步骤启用认证后一切正常。

我不知道哪里出了问题,但程序似乎根本没有从 Windows 中的 influxdb.conf 读取。

【问题讨论】:

    标签: windows authentication influxdb


    【解决方案1】:

    我也无法让 InfluxDB 使用配置文件。 当我将配置文件添加为参数时,它对我有用。 我将 InfluxDB 作为服务运行,为此我使用 nssm:

    1. 安装 nssm(或其他合适的工具)
    2. 创建新服务
    3. 提供 influxdb.exe 的路径
    4. 将此参数(相应地更改路径)添加到服务:config "C:\path\to\your\influxdb\config"

    【讨论】:

      【解决方案2】:

      很可能,您的自定义 influxdb.conf 被忽略是正确的。要快速测试这是否确实是身份验证不起作用的原因,请在从命令提示符运行 influxd.exe 时使用配置标志,如下所示:

      influxd.exe -config <path to your custom influxdb.conf>
      

      但请注意,无论出于何种原因,这都会将 influxd.exe 变成一个无法杀死的进程(至少,我无法弄清楚如何杀死它)。换句话说,像这样运行它时,您必须重新启动计算机才能关闭 influxDB。尽管如此,我认为这是快速测试忽略的配置是否确实是您的身份验证无法正常工作的原因的最简单方法。

      如果如上所述在启动 influxd.exe 时身份验证有效,那么我强烈建议您关注fxweidinger's answer。 (注意:在第 3 点“提供 influxdb.exe 的路径”中,将“influxdb.exe”替换为“influxd.exe”。)

      另外,你绝对想看看 Richard Niemand 的 post,尤其是第 2 部分。(它基本上是 fxweidinger's answer 的一个非常详细的版本。)

      【讨论】:

        猜你喜欢
        • 2012-03-18
        • 2011-11-12
        • 1970-01-01
        • 1970-01-01
        • 2017-09-24
        • 2023-04-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多