gpt4 book ai didi

authentication - nginx 组 http 身份验证

转载 作者:行者123 更新时间:2023-12-04 13:20:26 28 4
gpt4 key购买 nike

来自 apache2 的唯一功能我无法存档:在密码数据库中拥有用户( htpasswd )并允许访问不同的文件/文件夹/虚拟服务器。

我启用的基本 http auth 有效:

location ~ ^/a/ {
# should allow access for user1, user2
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/auth/file_a;
}
location ~ ^/b/ {
# should allow access for user2, user3
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/auth/file_b;
}

如果我在 file_a 中有 user1, user2和 file_b 中的用户 2、用户 3 ,这可行,但是当我更改 user2 的密码时,我必须更新这两个文件(所有位置的密码都应该相同)。由于我将拥有超过 15 个具有不同访问权限的不同位置和超过 10 个用户,这并不容易处理。 (我喜欢细粒度的访问权限!)

使用 Apache,我为每个位置定义了不同的组,并且需要正确的组。更改访问权限就像在组中添加/删除用户一样简单。

有没有类似的东西,或者如何使用 nginx 轻松处理这种情况?

最佳答案

您可以使用 AuthDigest 来完成这项工作模块和领域作为组 - 您将为一个用户拥有多个条目,但您可以将它们逐行放在一个文件中。不完美,但比你现在的噩梦要好。

配置中的小改动(参见第二个位置的 auth_digest 和 user_file):

location ~ ^/a/ {
# should allow access for user1, user2
auth_digest "Restricted";
auth_digest_user_file /etc/nginx/auth/file_a;
}
location ~ ^/b/ {
# should allow access for user2, user3
auth_digest "Restricted2";
auth_digest_user_file /etc/nginx/auth/file_a;
}

和file_a:
user1:Restricted1:password_hash
user2:Restricted1:password_hash
user2:Restricted2:password_hash
user3:Restricted2:password_hash

关于authentication - nginx 组 http 身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11074766/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com