升级至Open-XChange 7.10.6并安装OX-Connector后,UCS 5.0.8中AD同步用户无法正常使用OX套件功能
升级至Open-XChange 7.10.6并安装OX-Connector后,UCS 5.0.8中AD同步用户无法正常使用OX套件功能
碰到过几乎一模一样的问题,折腾了好一阵才搞定,给你整理几个排查和解决的关键点:
检查OX-Connector的AD同步配置
首先得确认OX-Connector的同步规则有没有把AD用户的关键属性正确映射到OX需要的字段,毕竟日历、联系人这些功能依赖的属性比单纯收邮件要多。- 用
univention-ox-connector-list-users命令查看已同步到OX的用户列表,看看test4有没有在里面——要是不在,那就是同步根本没生效。 - 手动触发一次全量同步:
univention-ox-connector-sync-full,同步完去/var/log/univention/ox-connector.log里翻日志,找有没有属性缺失、权限不够这类报错,这些细节往往是问题根源。
- 用
验证用户的OX核心属性是否完整
就算用户在UCS里存在,OX套件也需要特定属性才能激活全部功能:- 用UDM工具查
test4的OX相关属性:udm users/user list --filter username=test4,重点看oxEnabled是不是1,oxQuota有没有设置有效值,oxContextID是不是和其他能正常用OX的用户一致。 - 要是
oxEnabled是0,哪怕你在UCS UI里手动激活了OX App Suite也白搭,得用命令强制开启:udm users/user modify --dn <用户的DN> --set oxEnabled=1,用户的DN可以从刚才UDM的查询结果里拿到。
- 用UDM工具查
检查OX上下文(Context)的有效性
每个OX用户都得归属到一个有效的上下文,没有这个,套件功能根本启动不了:- 用
/opt/open-xchange/sbin/listcontexts命令查看所有上下文,确认test4的oxContextID对应的上下文状态是active,资源配置也正常。 - 要是上下文有问题,可能得重新创建(操作前记得备份OX数据库):
/opt/open-xchange/sbin/createcontext -A oxadminmaster -P <OX管理员密码> -c <上下文ID> -d <你的域名>
- 用
深挖OX登录的具体错误
你说登录OX时报错,光看前端提示不够,得去核心日志里找细节:- 打开
/var/log/open-xchange/open-xchange.log,搜test4的登录请求,找有没有类似“user not found in context”或者“missing required attribute”的错误提示,这些直接指向问题所在。 - 也可以用OX的命令行工具直接测登录:
/opt/open-xchange/sbin/testlogin -c <上下文ID> -u test4 -p <test4的密码>,失败的话会返回具体错误码和原因,比前端提示清楚多了。
- 打开
确认用户主目录的权限
OX的日历、联系人这些数据存在用户的UCS主目录里,权限不对的话根本存不了数据:- 用
ls -ld /home/test4检查主目录的权限,确保所有者和组都是test4,权限是700(只有用户自己能读写)。 - 要是权限不对,用
chown test4:test4 /home/test4修正所有者,再用chmod 700 /home/test4设置权限。
- 用
备注:内容来源于stack exchange,提问作者HeCSa
相关产品推荐
相关产品推荐

