我正在尝试在界面中创建一个新的用户组phpldapadmin
。在 Samba SID 条目下,它为我提供了两个并排的框,内容如下:
=php.PickList(/;(&(objectClass=sambaDomain));sambaSID;%sambaSID% (%sambaDomainName%));;;;sambaDomainName
和
NO Methods: drawAttributeHelperAttribute|drawAttributeHelper
第二个框可能还有更多内容,但这就是它所能容纳的全部内容。通常,此字段应自行生成 SID,但似乎不知何故失败了。
您知道这里可能出了什么问题吗?
答案1
我在使用 1.2.0.5 版本时也遇到了同样的问题。用于创建 Samba 组的模板存在错误。
要纠正这个问题
以 root 身份访问提示符:
cd /etc/phpldapadmin/templates/creation
编辑文件“sambaGroupMapping.xml”
找到下面粗体部分的代码:
<attribute id="sambaSID">
<display>Samba SID</display>
<helper>
<id>sidsuffix</id>
<value><![CDATA[=php.GetNextNumber(/;gidNumber;false;(&(objectClass=sambaDomain)(sambaDomainName=mysambadomain));*2,+1000)]]></value>
</helper>
<order>4</order>
<post>=php.Join(-;%sambaSID%,%sidsuffix%)</post>
<page>1</page>
**<value><![CDATA[=php.PickList(/;(&(objectClass=sambaDomain));sambaSID;%sambaSID% (%sambaDomainName%));;;;sambaDomainName]]></value>**
</attribute>
并将其替换为:
<value><![CDATA[=php.PickList(/;(&(objectClass=sambaDomain));sambaSID;%sambaSID% (%sambaDomainName%);;;;sambaDomainName**)**]]></value>
最后一个括号打错了,改了之后问题解决。