ldap - user_filter vs base 限制对 LDAP 用户的访问
问题描述
在documentation
Gitlab 中,对 LDAP 用户的限制可以base
通过user_filter
. 所以我的问题是:
- 有什么用
base
- gitlab 中何时使用
base
和何时使用user_filter
来限制 LDAP 用户。
解决方案
base
指定搜索的起点,其值是数据库中存在的专有名称。
这与 ldapsearch 中的 user_filter 不同,后者是一个搜索过滤器:
(&(objectClass=person)(objectClass=user))
所以 GitLab 会将user_filter
指令翻译成objectClass=user
ldap 搜索过滤器。
但这仅适用于base
.
GitLab LDAP 配置显示了一个示例:
##
## Filter LDAP users
##
## Format: RFC 4515 https://tools.ietf.org/search/rfc4515
## Ex. (employeeType=developer)
##
## Note: GitLab does not support omniauth-ldap's custom filter syntax.
##
## Example for getting only specific users:
## '(&(objectclass=user)(|(samaccountname=momo)(samaccountname=toto)))'
##
user_filter: ''
因此请查看RFC 4515,但是:
另请参阅issue 14464:
GItLab 会自动将您指定的过滤器与用户的 uid 连接起来。
去掉 uid 部分,只使用 user_filter:'memberOf=CN=gitlab,DC=test,DC=com'
推荐阅读
- discord.js - TypeError:Fields.flat 不是函数(node.js 已经更新)
- c# - 如何根据 WPF/C# 中的当前可见视图动态创建全局按钮并附加不同的处理程序?
- java - 在 Java 中延迟从网站获取文本到字符串
- ios - 如何在 textContentType = .newPassword 的 UITextField 中更改“强密码”指示器的背景颜色
- javascript - TensorFlow.js 总是返回相同的错误预测(尽管底层 Python 模型工作正常)
- python - 访问 request.fspath 以生成测试参数
- r - 无法在 R 中创建 0 行的数据框
- java - 如果定时器运行功能
- python - 使用 pandas 将部分无序的数据读入列
- reactjs - 如何关闭第二个 react-datepicker 输入字段的自动完成?