我如何要求对 node-red 的某些请求输入密码

How can I require password for some requests on node-red

我家里的 raspberry pi 上有节点红色 运行,我有几个 http 请求节点可以打开和关闭灯。我已将这些 http 节点公开到 public 互联网并添加了用户名和密码以访问它们。

一切都很好,但我家里有一台设备也调用这些 url(来自 192.168。1.XX IP),但它无法使用基本身份验证。

有没有一种方法可以让非本地 IP 地址需要密码,而本地网络上的设备不需要密码?

非常感谢

最简单的方法是使用 Apache 或 Nginx 来代理 Node-RED。这些中的任何一个都可以根据请求进入的 interface/ip 地址应用不同的身份验证规则。

例如在 Apache 上是这样的:

Order deny,allow
Deny from all
AuthType Basic
AuthUserFile /www/.site_htpasswd
AuthName "Protected Area"
require valid-user
Allow from 192.168.1.0/255.255.255.0
Satisfy Any