我想通过键/值存储(在我的情况下是consul)为我的一个入口点配置基本身份验证。但是traefik似乎忽略了这些指令。
我尝试了以下配置:
traefik/entrypoints/http/auth/basic/users = ["test:$apr1$H6uskkkW$IgXLP6ewTrSuBkTrqE8wj/"]
traefik/entrypoints/http/auth/basic/users = test:$apr1$H6uskkkW$IgXLP6ewTrSuBkTrqE8wj/
traefik/entrypoints/http/auth/basic/users/0 = test:$apr1$H6uskkkW$IgXLP6ewTrSuBkTrqE8wj/
我收到以下错误
-------------------------------------
/var/log/containers/traefik-c9f95e2d3a98-stdouterr.log
-------------------------------------
2017/06/12 15:58:34 Error loading configuration: 1 error(s) decoding:
* error decoding 'EntryPoints[http].Auth.Basic.Users': illegal base64 data at input byte 5
如果指定键/值存储...
,似乎会忽略toml文件我做错了什么?
答案 0 :(得分:0)
我弄清楚出了什么问题。
如果您提供像consul这样的键/值存储,它将覆盖配置文件中的配置。
存储基本身份验证用户的正确密钥或路径如下所示
traefik/entrypoints/http/auth/basic/users/0
并且您是用户名的值和由冒号
分隔的哈希test:$apr1$H6uskkkW$IgXLP6ewTrSuBkTrqE8wj/
如果您收到有关base64编码的上述错误消息,则必须使用$
转义$
,以使您的哈希看起来像$$apr1$$H6uskkkW$IgXLP6ewTrSuBkTrqE8wj/